First commit

This commit is contained in:
adri
2018-12-26 13:14:06 +01:00
commit d1b502c110
10 changed files with 1353 additions and 0 deletions

View File

@@ -0,0 +1,66 @@
//http://www.expertphp.in/article/user-login-and-registration-using-nodejs-and-mysql-with-example
var connection = require('./../bdd');
var passwordProtection = require('./securepw');
const util = require('util');
module.exports=function(req,res,next){
var name=req.body.username;
var password=passwordProtection(req.body.password);
connection.query('SELECT * FROM user WHERE userName = ?',[name], function (error, results, fields) {
if (error) {
console.log("ERROR SQL LOGIN-CONTROLLER : "+console.error);
req.session.authStatus=false;
req.session.authMessage='SQL0'+error;
next();
}else{
if(results.length >0){
if(password==results[0].pw){
req.session.userName = name;
req.session.authStatus=true;
req.session.authMessage='OK';
next();
}else{
req.session.authStatus=false,
req.session.authMessage="BAD PASSWORD";
next();
}
}
else{
if(req.body.password != "")
{
var users={
"userName":req.body.username,
"pw": passwordProtection(req.body.password)
}
connection.query('INSERT INTO user SET ?',users, function (error, results, fields) {
if (error) {
//res.local.stat = 0;
res.locals.message='0';
console.log("ERROR SQL LOGIN-CONTROLLER : "+console.error);
req.session.authStatus=false;
req.session.authMessage='SQL INSERT ERROR';
next();
}else{
req.session.userName = name;
req.session.authStatus=true;
req.session.authMessage='SQL INSERT OK';
next();
}
});
}
else {
req.session.userName = name;
req.session.authStatus=true;
req.session.authMessage='AUTH WITHOUT REG OK';
}
next();
}
}
});
}

7
controllers/securepw.js Normal file
View File

@@ -0,0 +1,7 @@
//https://lollyrock.com/articles/nodejs-encryption/
var crypto = require('crypto'),
algorithm = 'sha-256';
module.exports = function(text){
return crypto.createHash('sha256').update(text).digest('base64');
}