1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Merge pull request #2327 from MrChip53/library-menu-edit

Edit admin dashboard menu for plugins
This commit is contained in:
Bill Thornton 2021-01-26 13:07:04 -05:00 committed by GitHub
commit 0ff9615b47
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -464,6 +464,7 @@ import Headroom from 'headroom.js';
pageIds: ['liveTvSettingsPage'],
icon: 'dvr'
});
addPluginPagesToMainMenu(links, pluginItems, 'livetv');
links.push({
divider: true,
name: globalize.translate('TabAdvanced')
@ -504,14 +505,27 @@ import Headroom from 'headroom.js';
pageIds: ['scheduledTasksPage', 'scheduledTaskPage'],
icon: 'schedule'
});
addPluginPagesToMainMenu(links, pluginItems);
if (hasUnsortedPlugins(pluginItems)) {
links.push({
divider: true,
name: globalize.translate('TabPlugins')
});
addPluginPagesToMainMenu(links, pluginItems);
}
return links;
}
function addPluginPagesToMainMenu(links, pluginItems, section) {
for (let i = 0, length = pluginItems.length; i < length; i++) {
const pluginItem = pluginItems[i];
function hasUnsortedPlugins(pluginItems) {
for (const pluginItem of pluginItems) {
if (pluginItem.EnableInMainMenu && pluginItem.MenuSection === undefined) {
return true;
}
}
return false;
}
function addPluginPagesToMainMenu(links, pluginItems, section) {
for (const pluginItem of pluginItems) {
if (pluginItem.EnableInMainMenu && pluginItem.MenuSection === section) {
links.push({
name: pluginItem.DisplayName,