52 lines
1.1 KiB
JavaScript
52 lines
1.1 KiB
JavaScript
const passport = require("passport");
|
|
const path = require("path");
|
|
const User = require(path.join(__dirname + "/../schemas/User"));
|
|
const router = require("express").Router();
|
|
|
|
router.get("/", function(req, res) {
|
|
res.sendFile(path.join(__dirname + "/../public/index.html"));
|
|
});
|
|
|
|
router.get("/register", function(req, res) {
|
|
res.sendFile(path.join(__dirname + "/../public/index.html"));
|
|
});
|
|
|
|
router.post("/register", function(req, res, next) {
|
|
console.log("registering user");
|
|
User.register(
|
|
new User({ username: req.body.username }),
|
|
req.body.password,
|
|
function(err) {
|
|
if (err) {
|
|
console.log("error while user register!", err);
|
|
return next(err);
|
|
}
|
|
|
|
console.log("user registered!");
|
|
|
|
res.redirect("/");
|
|
}
|
|
);
|
|
});
|
|
|
|
router.get("/login", function(req, res) {
|
|
res.sendFile(path.join(__dirname + "/../public/index.html"));
|
|
});
|
|
|
|
router.post(
|
|
"/login",
|
|
passport.authenticate("local", {
|
|
failureRedirect: "/#/login"
|
|
}),
|
|
function(req, res) {
|
|
res.redirect("/#/update");
|
|
}
|
|
);
|
|
|
|
router.get("/logout", function(req, res) {
|
|
req.logout();
|
|
res.redirect("/");
|
|
});
|
|
|
|
module.exports = router;
|