Index: branches/RC/core/admin_templates/config/config_universal.tpl
===================================================================
diff -u -r11004 -r11200
--- branches/RC/core/admin_templates/config/config_universal.tpl (.../config_universal.tpl) (revision 11004)
+++ branches/RC/core/admin_templates/config/config_universal.tpl (.../config_universal.tpl) (revision 11200)
@@ -89,4 +89,10 @@
+
+
\ No newline at end of file
Index: branches/RC/core/units/configuration/configuration_event_handler.php
===================================================================
diff -u -r10838 -r11200
--- branches/RC/core/units/configuration/configuration_event_handler.php (.../configuration_event_handler.php) (revision 10838)
+++ branches/RC/core/units/configuration/configuration_event_handler.php (.../configuration_event_handler.php) (revision 11200)
@@ -144,8 +144,21 @@
}
}
- if ($event->status == erSUCCESS) { // reset cache
- $this->Application->UnitConfigReader->ResetParsedData();
+ if ($event->status == erSUCCESS && $items_info) { // reset cache
+ $id_field = $this->Application->getUnitOption($event->Prefix, 'IDField');
+ $table_name = $this->Application->getUnitOption($event->Prefix, 'TableName');
+
+ $sql = 'SELECT ' . $id_field . '
+ FROM ' . $table_name . '
+ WHERE ' . $id_field . ' IN (' . implode(',', array_keys($items_info)) . ') AND (VariableName = "AdvancedUserManagement")';
+ $refresh_sections = $this->Conn->GetCol($sql);
+
+ if ($refresh_sections) {
+ // reset sections too, because of AdvancedUserManagement
+ $event->SetRedirectParam('refresh_tree', 1);
+ }
+
+ $this->Application->UnitConfigReader->ResetParsedData($refresh_sections ? true : false);
}
}