mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
markdown preview
This commit is contained in:
1 parent
86f67a0ec3
commit
5ca424da0b
15 files changed
+123
-104
No files matched your search
+12
-12
@@ -3,26 +3,26 @@ const permission = require('../permission');
|
||||
global.Hydro.ui.nav = [];
|
||||
|
||||
const trueChecker = () => true;
|
||||
const Item = (path, name, prefix, perm, checker) => {
|
||||
const Item = (name, args, prefix, perm, checker) => {
|
||||
if (perm && checker) {
|
||||
checker = ((_chk) => (handler) => _chk(handler) && handler.user.hasPerm(perm))(checker);
|
||||
} else if (perm) {
|
||||
checker = (handler) => handler.user.hasPerm(perm);
|
||||
} else if (!checker) checker = trueChecker;
|
||||
global.Hydro.ui.nav.push({
|
||||
path, name, prefix, checker,
|
||||
name, args: args || {}, prefix, checker,
|
||||
});
|
||||
};
|
||||
|
||||
Item('/', 'homepage', 'homepage');
|
||||
Item('/p', 'problem_main', 'problem', permission.PERM_VIEW_PROBLEM);
|
||||
Item('/t', 'training_main', 'training', permission.PERM_VIEW_TRAINING);
|
||||
Item('/homework', 'homework_main', 'homework', permission.PERM_VIEW_HOMEWORK);
|
||||
Item('/discuss', 'discussion_main', 'discussion', permission.PERM_VIEW_DISCUSSION);
|
||||
Item('/c', 'contest_main', 'contest', permission.PERM_VIEW_CONTEST);
|
||||
Item('/record', 'record_main', 'record');
|
||||
Item('/ranking', 'ranking', 'ranking');
|
||||
Item('/domain/dashboard', 'domain_dashboard', 'domain', permission.PERM_MANAGE);
|
||||
Item('/manage/dashboard', 'manage', 'manage', null, (handler) => handler.user.priv === 1);
|
||||
Item('homepage', null, 'homepage');
|
||||
Item('problem_main', null, 'problem', permission.PERM_VIEW_PROBLEM);
|
||||
Item('training_main', null, 'training', permission.PERM_VIEW_TRAINING);
|
||||
Item('homework_main', null, 'homework', permission.PERM_VIEW_HOMEWORK);
|
||||
Item('discussion_main', null, 'discussion', permission.PERM_VIEW_DISCUSSION);
|
||||
Item('contest_main', null, 'contest', permission.PERM_VIEW_CONTEST);
|
||||
Item('record_main', null, 'record');
|
||||
Item('ranking', null, 'ranking');
|
||||
Item('domain_dashboard', null, 'domain', permission.PERM_MANAGE);
|
||||
Item('manage_dashboard', null, 'manage', null, (handler) => handler.user.priv === 1);
|
||||
|
||||
global.Hydro.lib.nav = module.exports = Item;
|
||||
Reference in new issue
Block a user