Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const passport = require('passport');
- const LocalStrategy = require('passport-local').Strategy;
- const User = require('../models/user');
- const password = require('../helpers/password');
- const ep = require('../middleware/express-promise');
- exports.index = (req, res) => {
- res.send('{test}');
- }
- //--------------------------------------------------------------
- // create User
- //--------------------------------------------------------------
- exports.createUser = ep.go(async (req, res) => {
- const username = req.body.username;
- const password = req.body.password;
- // try {
- console.log(username, password);
- var newUser = new User({
- name: 'connffor',
- username: username,
- password: password
- });
- const saveUser = await newUser.save();
- return res.send(`${username}${password} - ${saveUser} - saved`);
- });
- //--------------------------------------------------------------
- // Local logic function for passport.js
- //--------------------------------------------------------------
- const localLogin = (username, password, done) => {
- console.log(hello);
- password.check(password, profile.get('password'), profile.get('salt'), profile.get('workFactor'), function(err, isAuth){
- if(isAuth){
- //update the profile work factor
- if(profile.get('workFactor') < config.crypto.workFactor) {
- // passwordUtils.updatePassword(username, password, config.crypto.workFactor);
- }
- console.log('yes yes');
- done(null, profile);
- } else {
- done(null, false, {message: 'Incorrect Details'});
- }
- });
- }
- //--------------------------------------------------------------
- // Login in a user
- //--------------------------------------------------------------
- exports.login = ep.go(async (req, res) => {
- const username = req.body.username;
- const password = req.body.password;
- const user = await User.findOne({username: username});
- if (user === null) {
- return res.json({err: 'Incorrect username or password'});
- }
- passport.use(new LocalStrategy(localLogin));
- passport.serializeUser(function(user, done) {
- done(null, user);
- });
- passport.deserializeUser(function(obj, done) {
- done(null, obj);
- });
- passport.authenticate('local', {
- successRedirect: '/admin/',
- failureRedirect: '/admin/login/',
- failureFlash: true
- })
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement