Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var express = require('express');
- var path = require('path');
- var favicon = require('serve-favicon');
- var logger = require('morgan');
- var cookieParser = require('cookie-parser');
- var bodyParser = require('body-parser');
- var passport = require('passport');
- var LocalStrategy = require('passport-local').Strategy;
- var routes = require('./routes/index');
- var users = require('./routes/users');
- var app = express();
- // view engine setup
- app.set('views', path.join(__dirname, 'views'));
- app.set('view engine', 'ejs');
- // uncomment after placing your favicon in /public
- //app.use(favicon(__dirname + '/public/favicon.ico'));
- app.use(logger('dev'));
- app.use(bodyParser.json());
- app.use(bodyParser.urlencoded({ extended: false }));
- app.use(cookieParser());
- app.use(require('express-session')({
- secret: 'testsecretgoeshere',
- resave: false,
- saveUninitialized: false
- }));
- app.use(passport.initialize());
- app.use(passport.session());
- app.use(express.static(path.join(__dirname, 'public')));
- passport.serializeUser(function(user, done) {
- done(null, user.id);
- });
- passport.deserializeUser(function(id, done) {
- User.findById(id, function (err, user) {
- done(err, user);
- });
- });
- passport.use(new LocalStrategy(function(username, password, done) {
- //User.findOne({ emailAddress: username }, function(err, user) {
- // if(err){
- // return done(err);
- // }
- // if (!user) {
- // return done(null, false, { message: 'Email ' + username + ' not found'});
- // }
- // else{
- // //check if password matches and pass parameters in done accordingly
- // }
- // });
- }));
- app.use('/', routes);
- app.use('/users', users);
- app.post('/login',
- passport.authenticate('local'),
- function(req, res) {
- // If this function gets called, authentication was successful.
- // `req.user` contains the authenticated user.
- res.redirect('/users/' + req.user.username);
- });
- // catch 404 and forward to error handler
- app.use(function(req, res, next) {
- var err = new Error('Not Found');
- err.status = 404;
- next(err);
- });
- // error handlers
- // development error handler
- // will print stacktrace
- if (app.get('env') === 'development') {
- app.use(function(err, req, res, next) {
- res.status(err.status || 500);
- res.render('error', {
- message: err.message,
- error: err
- });
- });
- }
- // production error handler
- // no stacktraces leaked to user
- app.use(function(err, req, res, next) {
- res.status(err.status || 500);
- res.render('error', {
- message: err.message,
- error: {}
- });
- });
- module.exports = app;
- <form action="/login" method="post">
- First name: <input type="text" name="username"><br>
- Last name: <input type="text" name="password"><br>
- <input type="submit" value="Submit">
- </form>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement