blob: df5f8607856a286d3fb2ea7d3461d36a0cba5158 [file] [log] [blame]
var express = require('express');
var router = express.Router();
var exec = require('child_process').exec;
var util = require('util');
var fs = require('fs');
var dbRoutes = require('./dbRoutes');
var csp = require('./csp');
var cookieParser = require('cookie-parser');
var csrf = require('csurf');
var bodyParser = require('body-parser');
//var sax = require('sax'),strict=true,parser = sax.parser(strict);
var csrfProtection = csrf({cookie: true});
router.use(cookieParser());
// SVC_LOGIC table columns
var _module=''; // cannot use module its a reserved word
var version='';
var rpc='';
var mode='';
var xmlfile='';
//router.use(bodyParser());
router.use(bodyParser.urlencoded({ extended: true }));
// GET
router.get('/listUsers', csp.checkAuth, function(req,res) {
dbRoutes.listUsers(req,res, {user:req.session.loggedInAdmin,code:'', msg:''} );
});
// POST
router.post('/updateUser', csp.checkAuth, csrfProtection, function(req,res,next){
dbRoutes.updateUser(req,res,{code:'',msg:''});
});
router.post('/addUser', csp.checkAuth, csrfProtection, function(req,res) {
dbRoutes.addUser(req,res, {code:'', msg:''} );
});
router.get('/deleteUser', csp.checkAuth, csrfProtection, function(req,res) {
dbRoutes.deleteUser(req,res, {code:'', msg:''} );
});
//router.get('/activate', csp.checkAuth, function(req,res){
//var _module = req.query.module;
//var rpc = req.query.rpc;
//var version = req.query.version;
//var mode = req.query.mode;
//dbRoutes.activate(req,res,_module,rpc,version,mode);
//});
//router.get('/deactivate', csp.checkAuth, function(req,res){
//var _module = req.query.module;
//var rpc = req.query.rpc;
//var version = req.query.version;
//var mode = req.query.mode;
//
//dbRoutes.deactivate(req,res,_module,rpc,version,mode);
//});
//router.get('/deleteDG', csp.checkAuth, function(req,res){
//var _module = req.query.module;
//var rpc = req.query.rpc;
//var version = req.query.version;
//var mode = req.query.mode;
//dbRoutes.deleteDG(req,res,_module,rpc,version,mode);
//});
/*
// SAX
parser.onerror = function (e) {
logger.debug('onerror');
// an error happened.
};
parser.ontext = function (t) {
// got some text. t is the string of text.
logger.debug('ontext:'+t);
};
parser.onopentag = function (node) {
// opened a tag. node has "name" and "attributes"
if ( node.name == 'service-logic' )
{
_module = node.attributes.module;
version = node.attributes.version;
}
if ( node.name == 'method' )
{
rpc = node.attributes.rpc;
mode = node.attributes.mode;
}
};
parser.onattribute = function (attr) {
// an attribute. attr has "name" and "value"
logger.debug('onattribute:'+attr);
};
parser.onend = function () {
// parser stream is done, and ready to have more stuff written to it.
logger.debug('onend:');
};
*/
//router.post('/upload', csp.checkAuth, function(req, res, next){
/*
logger.debug("upload");
if(req.files.filename){
if (req.files.filename.size == 0) {
resultObj =
{code:'danger', msg:'There was an error uploading the file, please try again.'};
dbRoutes.listSLA(req,res, resultObj);
}
fs.exists(req.files.filename.path, function(exists) {
if(exists) {
resultObj = {code:'success', msg:'File sucessfully uploaded.'};
// parse xml
try {
var file_buf = fs.readFileSync(req.files.filename.path, "utf8");
logger.debug('file '+req.files.filename);
// call Dan's svclogic shell script from here
var commandToExec = process.cwd()
+ "/shell/svclogic.sh load "
+ req.files.filename.path + " "
+ process.cwd()
+ "/config/svclogic.properties";
logger.debug("commandToExec:" + commandToExec);
child = exec(commandToExec ,function (error,stdout,stderr){
if(error){
logger.info("error:" + error);
}
if(stderr){
logger.info("stderr:" + stderr);
}
if(stdout){
logger.info("OUTPUT:" + stdout);
dbRoutes.listSLA(req,res, resultObj);
}
// remove the grave accents, the sax parser does not like them
//parser.write(file_buf.replace(/\`/g,'').toString('utf8')).close();
//dbRoutes.addDG(_module,version,rpc,mode,file_buf,req,res);
//dbRoutes.listSLA(req,res, resultObj);
});
} catch(ex) {
// keep 'em silent
logger.debug('sax error:'+ex);
}
} else {
resultObj =
{code:'danger', msg:'There was an error uploading the file, please try again.'};
dbRoutes.listSLA(req,res, resultObj);
}
});
}
else {
resultObj =
{code:'danger', msg:'There was an error uploading the file, please try again.'};
dbRoutes.listSLA(req,res, resultObj);
}
});
*/
module.exports = router;