diff --git a/public/src/admin/settings/navigation.js b/public/src/admin/settings/navigation.js index ae9e406645..81adc6fe60 100644 --- a/public/src/admin/settings/navigation.js +++ b/public/src/admin/settings/navigation.js @@ -32,12 +32,18 @@ define('admin/settings/navigation', [ iconSelect.init(iconEl, function (el) { const newIconClass = el.attr('value'); const index = iconEl.parents('[data-index]').attr('data-index'); - $('#active-navigation [data-index="' + index + '"] i').attr('class', 'fa fa-fw ' + newIconClass); + $('#active-navigation [data-index="' + index + '"] i.nav-icon').attr('class', 'fa fa-fw ' + newIconClass); iconEl.siblings('[name="iconClass"]').val(newIconClass); iconEl.siblings('.change-icon-link').toggleClass('hidden', !!newIconClass); }); }); + $('#enabled').on('click', '[name="dropdown"]', function () { + const el = $(this); + const index = el.parents('[data-index]').attr('data-index'); + $('#active-navigation [data-index="' + index + '"] i.dropdown-icon').toggleClass('hidden', !el.is(':checked')); + }) + $('#active-navigation').on('click', 'li', onSelect); $('#enabled') diff --git a/src/navigation/admin.js b/src/navigation/admin.js index ce53dbdba5..4f79b7daa9 100644 --- a/src/navigation/admin.js +++ b/src/navigation/admin.js @@ -26,6 +26,7 @@ admin.save = async function (data) { cache = null; pubsub.publish('admin:navigation:save'); + await db.deleteAll(data.map(item => `navigation:enabled:${item.order}`)); await db.setObjectBulk(bulkSet); await db.delete('navigation:enabled'); await db.sortedSetAdd('navigation:enabled', order, order); diff --git a/src/views/admin/settings/navigation.tpl b/src/views/admin/settings/navigation.tpl index d82af8d1ec..6f609d8dee 100644 --- a/src/views/admin/settings/navigation.tpl +++ b/src/views/admin/settings/navigation.tpl @@ -3,9 +3,9 @@