1 var exec = require('child_process').exec;
2 var dbRoutes = require('./dbRoutes');
3 var fs = require('fs.extra');
4 var properties = require(process.env.SDNC_CONFIG_DIR + '/admportal.json');
10 function logout(req,res){
11 console.log("logout");
12 req.session.loggedInAdmin = undefined;
13 res.redirect('/login');
16 function login (req,res) {
19 var tkn = req.sanitize(req.body._csrf);
20 console.log('login:tkn=' + tkn);
23 var email = req.sanitize(req.body.email);
24 var pswd = req.sanitize(req.body.password);
25 dbRoutes.findAdminUser(email,res,function(adminUser){
26 if(adminUser !== null){
28 // make sure correct password is provided
29 if (pswd != adminUser.password) {
30 res.render("pages/login",
35 msg:'Invalid password entered.'
37 header:process.env.MAIN_MENU
43 email:adminUser.email,
45 password:adminUser.password,
46 privilege:adminUser.privilege
48 req.session.loggedInAdmin = loggedInAdmin;
49 console.log("Login Success"+JSON.stringify(loggedInAdmin));
50 res.redirect('sla/listSLA');
52 res.render("pages/err",
57 msg:'User ' + attuid + ' is not in the database. Please see an adminstrator to have them added.'
59 header:process.env.MAIN_MENU
65 function checkAuth(req,res,next){
67 var host = req.get('host');
69 var originalUrl = req.originalUrl;
71 console.log("checkAuth");
73 var host = req.headers['host'];
74 console.log('host=' + host);
75 console.log("cookie is not null "+JSON.stringify(req.session.loggedInAdmin));
76 if(req.session == null || req.session == undefined
77 || req.session.loggedInAdmin == null || req.session.loggedInAdmin == undefined)
79 // nothing else to do but log them back in, or they may
80 // be coming from the graph tool
81 console.log("loggedInAdmin not found.session timed out.");
82 res.render('pages/login');
88 function checkPriv(req,res,next)
90 var priv = req.session.loggedInAdmin;
91 if(req.session == null || req.session == undefined
92 || req.session.loggedInAdmin == null || req.session.loggedInAdmin == undefined)
94 res.render("pages/err",
96 result: {code:'error', msg:'Unexpected null session.'},
97 header: process.env.MAIN_MENU
103 if (priv.privilege == 'A')
110 res.render("pages/err",
112 result: { code:'error', msg:'User does not have permission to run operation.'},
113 header: process.env.MAIN_MENU
121 exports.login = login;
122 exports.logout = logout;
123 exports.checkAuth = checkAuth;
124 exports.checkPriv = checkPriv;