nginx-proxy-manager/frontend/js/app/ui/menu/main.js

40 lines
979 B
JavaScript
Raw Normal View History

const $ = require('jquery');
const Mn = require('backbone.marionette');
const Controller = require('../../controller');
const Cache = require('../../cache');
const template = require('./main.ejs');
2018-06-19 18:48:14 -04:00
module.exports = Mn.View.extend({
id: 'menu',
className: 'header collapse d-lg-flex p-0',
template: template,
ui: {
links: 'a'
},
events: {
'click @ui.links': function (e) {
2018-07-08 21:22:10 -04:00
let href = $(e.currentTarget).attr('href');
if (href !== '#') {
e.preventDefault();
Controller.navigate(href, true);
}
}
},
templateContext: {
isAdmin: function () {
return Cache.User.isAdmin();
2018-07-08 21:22:10 -04:00
},
canShow: function (perm) {
return Cache.User.isAdmin() || Cache.User.canView(perm);
}
2018-07-08 21:22:10 -04:00
},
initialize: function () {
this.listenTo(Cache.User, 'change', this.render);
}
2018-06-19 18:48:14 -04:00
});