2017-02-18 01:56:23 -07:00
|
|
|
'use strict';
|
2014-03-03 16:35:21 -05:00
|
|
|
|
2020-06-05 15:26:51 -04:00
|
|
|
const privileges = require('../privileges');
|
|
|
|
|
const helpers = require('./helpers');
|
|
|
|
|
|
2014-03-03 16:35:21 -05:00
|
|
|
var adminController = {
|
2015-09-17 16:25:15 -04:00
|
|
|
dashboard: require('./admin/dashboard'),
|
2015-09-15 15:56:19 -04:00
|
|
|
categories: require('./admin/categories'),
|
2017-12-18 15:43:57 -05:00
|
|
|
privileges: require('./admin/privileges'),
|
2018-01-05 14:44:18 -05:00
|
|
|
adminsMods: require('./admin/admins-mods'),
|
2015-09-17 16:25:15 -04:00
|
|
|
tags: require('./admin/tags'),
|
2015-06-22 13:10:18 -04:00
|
|
|
groups: require('./admin/groups'),
|
2019-11-02 13:11:02 -04:00
|
|
|
digest: require('./admin/digest'),
|
2015-09-17 16:25:15 -04:00
|
|
|
appearance: require('./admin/appearance'),
|
2014-09-28 20:22:04 -04:00
|
|
|
extend: {
|
2015-09-17 16:25:15 -04:00
|
|
|
widgets: require('./admin/widgets'),
|
2017-02-17 19:31:21 -07:00
|
|
|
rewards: require('./admin/rewards'),
|
2014-09-28 20:22:04 -04:00
|
|
|
},
|
2015-09-17 16:25:15 -04:00
|
|
|
events: require('./admin/events'),
|
2018-10-22 07:30:48 -04:00
|
|
|
hooks: require('./admin/hooks'),
|
2015-09-17 16:25:15 -04:00
|
|
|
logs: require('./admin/logs'),
|
2016-05-24 22:01:46 -04:00
|
|
|
errors: require('./admin/errors'),
|
2015-09-17 16:25:15 -04:00
|
|
|
database: require('./admin/database'),
|
2016-09-14 21:00:41 +03:00
|
|
|
cache: require('./admin/cache'),
|
2015-09-17 16:25:15 -04:00
|
|
|
plugins: require('./admin/plugins'),
|
|
|
|
|
settings: require('./admin/settings'),
|
|
|
|
|
logger: require('./admin/logger'),
|
|
|
|
|
themes: require('./admin/themes'),
|
2014-03-12 17:59:29 -04:00
|
|
|
users: require('./admin/users'),
|
2015-10-15 20:29:54 -04:00
|
|
|
uploads: require('./admin/uploads'),
|
2017-02-17 19:31:21 -07:00
|
|
|
info: require('./admin/info'),
|
2014-03-03 16:35:21 -05:00
|
|
|
};
|
|
|
|
|
|
2020-06-05 15:26:51 -04:00
|
|
|
adminController.routeIndex = async (req, res) => {
|
|
|
|
|
const privilegeSet = await privileges.admin.get(req.uid);
|
|
|
|
|
|
|
|
|
|
if (privilegeSet.superadmin || privilegeSet['admin:dashboard']) {
|
|
|
|
|
return adminController.dashboard.get(req, res);
|
|
|
|
|
} else if (privilegeSet['admin:categories']) {
|
|
|
|
|
return helpers.redirect(res, 'admin/manage/categories');
|
|
|
|
|
} else if (privilegeSet['admin:privileges']) {
|
|
|
|
|
return helpers.redirect(res, 'admin/manage/privileges');
|
|
|
|
|
} else if (privilegeSet['admin:users']) {
|
|
|
|
|
return helpers.redirect(res, 'admin/manage/users');
|
2020-12-22 15:07:37 -05:00
|
|
|
} else if (privilegeSet['admin:groups']) {
|
|
|
|
|
return helpers.redirect(res, 'admin/manage/groups');
|
2020-06-05 15:26:51 -04:00
|
|
|
} else if (privilegeSet['admin:settings']) {
|
|
|
|
|
return helpers.redirect(res, 'admin/settings/general');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return helpers.notAllowed(req, res);
|
|
|
|
|
};
|
2014-09-29 17:51:18 -04:00
|
|
|
|
2014-04-10 20:31:57 +01:00
|
|
|
module.exports = adminController;
|