Боковая панель не запоминает положение

После удачного обновления до версии 7.13.0 настройки пользователей сбросились (все колонки везде и остальное).

Левая панель навигации перестала запоминать положение, типа свернута или развернута. При развертывании ее и перезагрузки страницы она снова сворачивается.

Нравится

1 комментарий

Удачным обновлением можно назвать обновление хотя бы до 7.15, а до 7.13 — ну, так себе.frown

Логика этой панели и сворачивания реализована в схеме LeftPanelTopMenuModule и её функции collapseSideBar. Она, в свою очередь, вызывает из LeftPanelUtilitiesV2 функцию changeCollapsed. Текущее состояние берётся из профиля, меняется на противоположное, добавляется или убирается CSS-атрибут и новое значение состояния также записывается в профиль.

getDefaultCollapsed: function() {
	if (this.useProfile) {
		if (profile !== null) {
			return profile;
		} else {
			return true;
		}
	} else {
		return true;
	}
},
 
getCollapsed: function() {
	var body = Ext.getBody();
	return body.hasCls("left-panel-collapsed");
},
 
changeCollapsed: function() {
	var collapsed = this.getCollapsed();
	this.setCollapsed(!collapsed);
},
 
setCollapsed: function(collapsed) {
	var body = Ext.getBody();
	var internalCollapsed = this.getCollapsed();
	if (collapsed) {
		body.addCls("left-panel-collapsed");
	} else {
		body.removeCls("left-panel-collapsed");
	}
	if (internalCollapsed !== collapsed) {
		this.fireEvent("collapsedChanged", collapsed);
	}
	if (this.useProfile) {
		Terrasoft.utils.saveUserProfile("LeftPanelCollapsed", collapsed, false);
	}
}

Если у Вас механизм работает неправильно, проверьте, не выполнялось ли доработок в этих схемах, особенно связанных с профилем. Возможно, они конфликтуют с новой стандартной логикой, или после переопределений у Вас осталась старая логика, которая в стандартных пакетах уже была адаптирована при обновлении.

Показать все комментарии