Source: routes/login.js

/**
 * login router module
 *
 * This module logs in a user.
 *
 * @module routes/login
 */
var express = require("express");
var router = express.Router();
var passport = require("passport");

/**
 * GET login page.
 *
 * Display the login page with the "login" view.  If a user is currently logged in, redirect to "/".
 *
 * @private
 * @memberof module:routes/login
 * @param {Object}   req                request object
 * @param {Object}   req.user           the currently logged in user
 * @param {Object}   res                response object
 * @param {Function} next               function call to next middleware
 */
function routerGETLogin(req, res, next) {
  if (req.user) {
    res.redirect("/");
  }
  res.render("login", { title: "Login", user: req.user });
}

// register routes and export router
router.post(
  "/",
  passport.authenticate("local", {
    successRedirect: "/",
    failureRedirect: "/login",
    failureFlash: true,
  })
);
router.get("/", routerGETLogin);
module.exports = router;