From f0aeaa1af8b44ce91d1b876cf7a66b5c30e40cd9 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Mon, 11 May 2015 18:07:33 -0700 Subject: [PATCH] handle sidebar badging for new root values --- domain-server/resources/web/js/settings.js | 19 +++++++++++++++---- .../resources/web/settings/index.shtml | 11 +++++++++-- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/domain-server/resources/web/js/settings.js b/domain-server/resources/web/js/settings.js index a4ac292b5c..2313cbe6b1 100644 --- a/domain-server/resources/web/js/settings.js +++ b/domain-server/resources/web/js/settings.js @@ -391,10 +391,21 @@ function badgeSidebarForDifferences(changedElement) { // figure out which group this input is in var panelParentID = changedElement.closest('.panel').attr('id') - // get a JSON representation of that section - var panelJSON = form2js(panelParentID, ".", false, cleanupFormValues, true)[panelParentID] - var initialPanelJSON = Settings.initialValues[panelParentID] - + // if the panel contains non-grouped settings, the initial value is Settings.initialValues + var isGrouped = $(panelParentID).hasClass('grouped'); + + if (isGrouped) { + var initialPanelJSON = Settings.initialValues[panelParentID]; + + // get a JSON representation of that section + var panelJSON = form2js(panelParentID, ".", false, cleanupFormValues, true)[panelParentID]; + } else { + var initialPanelJSON = Settings.initialValues; + + // get a JSON representation of that section + var panelJSON = form2js(panelParentID, ".", false, cleanupFormValues, true); + } + var badgeValue = 0 // badge for any settings we have that are not the same or are not present in initialValues diff --git a/domain-server/resources/web/settings/index.shtml b/domain-server/resources/web/settings/index.shtml index bdfd3f9f48..ad6ed0f41c 100644 --- a/domain-server/resources/web/settings/index.shtml +++ b/domain-server/resources/web/settings/index.shtml @@ -10,8 +10,9 @@