435aaf91fb171f9ccb23efcd4b845c780aab70a2
[sdnc/oam.git] / admportal / server / router / routes / csp.js
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');
5
6 var retURL = "";
7 var noCookieUrl = "";
8 var logoutUrl = "";
9
10 function logout(req,res){
11         console.log("logout");
12         req.session.loggedInAdmin = undefined;
13         res.redirect('/login');
14 }
15
16 function login (req,res) {
17
18         var loggedInAdmin={};
19         var email = req.body.email;
20         dbRoutes.findAdminUser(email,res,function(adminUser){
21                 if(adminUser !== null){
22                         
23                         // make sure correct password is provided
24                         if (req.body.password != adminUser.password) {
25                                 res.render("pages/login", 
26                                 {
27                                         result:
28                                         {
29                                                 code:'error',
30                                                 msg:'Invalid password entered.'
31                                         },
32                                         header:process.env.MAIN_MENU 
33                                 });
34                                 return;
35                         }
36                                 
37                         var loggedInAdmin = {
38                                 email:adminUser.email,
39                                 password:adminUser.password,
40                                 privilege:adminUser.privilege
41                         }
42             req.session.loggedInAdmin = loggedInAdmin;
43                 console.log("Login Success"+JSON.stringify(loggedInAdmin));
44                 res.redirect('sla/listSLA');
45                 }else{
46                         res.render("pages/err", 
47                         {
48                                 result:
49                                 {
50                                         code:'error',
51                                         msg:'User ' + attuid + ' is not in the database.  Please see an adminstrator to have them added.'
52                                 },
53                                 header:process.env.MAIN_MENU 
54                         });
55                 }
56         });
57 }
58
59 function checkAuth(req,res,next){
60         var host = req.get('host');
61         var url = req.url;
62         var originalUrl = req.originalUrl;
63
64         console.log("checkAuth");
65
66         var host = req.headers['host'];
67 console.log('host=' + host);
68
69         console.log("cookie is not null "+JSON.stringify(req.session.loggedInAdmin));
70         if(req.session == null || req.session == undefined 
71                 || req.session.loggedInAdmin == null || req.session.loggedInAdmin == undefined)
72         {
73                 // nothing else to do but log them back in, or they may
74                 // be coming from the graph tool
75                 console.log("loggedInAdmin not found.session timed out.");
76                 res.render('pages/login');
77                 return false;
78         }
79         next();
80 }
81
82 exports.login = login;
83 exports.logout = logout;
84 exports.checkAuth = checkAuth;