DEV_1
This commit is contained in:
@ -1,9 +1,24 @@
|
||||
var express = require('express');
|
||||
var router = express.Router();
|
||||
var ntr = require("../neutral-functions.js")
|
||||
|
||||
/* GET home page. */
|
||||
router.get('/', function(req, res, next) {
|
||||
res.render('index', { title: 'Express' });
|
||||
|
||||
var check = ntr.checkToken(req, res)
|
||||
|
||||
|
||||
if(check == false) {
|
||||
|
||||
res.redirect(302, "/login")
|
||||
|
||||
} else {
|
||||
|
||||
|
||||
res.render('index', { title: check });
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
76
routes/login.js
Normal file
76
routes/login.js
Normal file
@ -0,0 +1,76 @@
|
||||
var express = require('express');
|
||||
var router = express.Router();
|
||||
var path = require("path")
|
||||
var fs = require("fs")
|
||||
var CryptoJS = require("crypto-js");
|
||||
var uuid = require("uuid")
|
||||
var ntr = require("../neutral-functions.js")
|
||||
|
||||
/* GET home page. */
|
||||
router.get('/', function(req, res, next) {
|
||||
|
||||
|
||||
var check = ntr.checkToken(req, res)
|
||||
|
||||
if(check != false) {
|
||||
|
||||
res.redirect(302, "/")
|
||||
|
||||
} else {
|
||||
|
||||
res.render('login', {error: ""});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
router.post("/", function(req, res, next) {
|
||||
|
||||
|
||||
const users = new Map();
|
||||
|
||||
fs.readdirSync(__dirname.replace("routes", "users")).forEach(file => {
|
||||
const fileData = JSON.parse(fs.readFileSync(__dirname.replace("routes", "users") + path.sep + file))
|
||||
users.set(fileData.username, fileData.uuid)
|
||||
|
||||
})
|
||||
|
||||
const bod = req.body
|
||||
|
||||
if(users.has(bod.username)) {
|
||||
|
||||
const userData = JSON.parse(fs.readFileSync(__dirname.replace("routes", "users") + path.sep + users.get(req.body.username) + ".json"))
|
||||
var userpassword = CryptoJS.AES.decrypt(userData.password,"D*G-KaPdSgVkYp3s").toString(CryptoJS.enc.Utf8)
|
||||
|
||||
if(bod.password == userpassword) {
|
||||
|
||||
userpassword = null;
|
||||
|
||||
const tokenID = ntr.generateTokenID(bod.username, userData, req, users)
|
||||
|
||||
res.cookie('tokenID' , tokenID)
|
||||
res.status(202).send({"token":"auth_success"})
|
||||
|
||||
} else {
|
||||
userpassword = null;
|
||||
res.status(202).send({"token":"auth_failed"})
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
} else {
|
||||
res.status(202).send({"token":"auth_failed"})
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
})
|
||||
|
||||
|
||||
|
||||
module.exports = router;
|
24
routes/signout.js
Normal file
24
routes/signout.js
Normal file
@ -0,0 +1,24 @@
|
||||
var express = require('express');
|
||||
var router = express.Router();
|
||||
var ntr = require("../neutral-functions.js")
|
||||
|
||||
/* GET home page. */
|
||||
router.get('/', function(req, res, next) {
|
||||
|
||||
var check = ntr.checkToken(req, res)
|
||||
|
||||
|
||||
if(check == false) {
|
||||
|
||||
res.redirect(302, "/login")
|
||||
|
||||
} else {
|
||||
|
||||
res.clearCookie('tokenID')
|
||||
res.send({"success":true})
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
|
||||
module.exports = router;
|
Reference in New Issue
Block a user