fix: custom navigation item not showing groups

v1.18.x
Barış Soner Uşaklı 6 years ago
parent a57d94194f
commit d9452bf3d4

@ -63,7 +63,7 @@ define('admin/general/navigation', ['translator', 'iconSelect', 'benchpress', 'j
function drop(ev, ui) { function drop(ev, ui) {
var id = ui.helper.attr('data-id'); var id = ui.helper.attr('data-id');
var el = $('#active-navigation [data-id="' + id + '"]'); var el = $('#active-navigation [data-id="' + id + '"]');
var data = id === 'custom' ? { iconClass: 'fa-navicon' } : available[id]; var data = id === 'custom' ? { iconClass: 'fa-navicon', groups: available[0].groups } : available[id];
data.enabled = false; data.enabled = false;
data.index = (parseInt($('#enabled').children().last().attr('data-index'), 10) || 0) + 1; data.index = (parseInt($('#enabled').children().last().attr('data-index'), 10) || 0) + 1;

@ -17,17 +17,23 @@ navigationController.get = function (req, res, next) {
}, next); }, next);
}, },
function (result) { function (result) {
result.groups.sort((a, b) => b.system - a.system);
result.groups = result.groups.map(group => ({ name: group.name, displayName: group.displayName }));
result.admin.enabled.forEach(function (enabled, index) { result.admin.enabled.forEach(function (enabled, index) {
enabled.index = index; enabled.index = index;
enabled.selected = index === 0; enabled.selected = index === 0;
const groupData = _.cloneDeep(result.groups);
enabled.groups = groupData.map(function (group) { enabled.groups = result.groups.map(function (group) {
group.selected = enabled.groups.includes(group.name); return {
return group; displayName: group.displayName,
selected: enabled.groups.includes(group.name),
};
});
}); });
enabled.groups.sort((a, b) => b.system - a.system); result.admin.available.forEach(function (available) {
available.groups = result.groups;
}); });
result.admin.navigation = result.admin.enabled.slice(); result.admin.navigation = result.admin.enabled.slice();

Loading…
Cancel
Save