alphascript-server
Version:
CRUD operations for mongo and other functionalities to get started quickly in any CMS project
32 lines (28 loc) • 934 B
JavaScript
var api = require('../../');
module.exports = {
get: redirectToDriver("get"),
custom: function(graphKey) {
return redirectToDriver("custom", graphKey);
}
};
function redirectToDriver(key, graphKey) {
return function(req, res, next) {
var driver = req.params.driver || "mongo";
switch (driver) {
case "sql":
case "mongo":
try {
var route = require('./' + driver + '/graph');
if (typeof route[key] !== 'function') return next("graph type not implemented " + key + " for driver " + driver);
if (typeof graphKey === 'undefined') return route[key](req, res);
else return route[key](graphKey)(req, res);
} catch (e) {
api.error.log(e);
return next("an error occurred during graph." + key + " for driver: " + driver);
}
break;
default:
return next("unknown database driver: " + driver);
}
};
}