From 18dc5e7749c0004e2c95f99925993dc98c6269a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lorenzo=20Tilve=20=C3=81lvaro?= Date: Fri, 22 Feb 2013 19:45:14 +0100 Subject: [PATCH] Clean global session variables after saving preferences This will refresh all company-level variables with the corresponding values depending on the filtering preferences saved. FEA: ItEr77S15FilteringEnhancements --- .../org/libreplan/web/common/FilterUtils.java | 19 +++++++++++++------ .../users/settings/SettingsController.java | 15 ++++----------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/common/FilterUtils.java b/libreplan-webapp/src/main/java/org/libreplan/web/common/FilterUtils.java index 4ae238cad..215958d68 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/common/FilterUtils.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/common/FilterUtils.java @@ -207,12 +207,19 @@ public class FilterUtils { public static void clearBandboxes() { writeProjectsParameters(null); writeResourceLoadsParameters(null); - // Locate all order-specific bandboxes - for (String key : (Set ) Sessions.getCurrent().getAttributes().keySet() ) { - if (key.contains("-tasknameFilter")) { - Sessions.getCurrent().setAttribute(key, null); - } - } + } + + public static void clearSessionDates() { + writeProjectsStartDate(null); + Sessions.getCurrent().setAttribute("companyFilterStartDateChanged", + null); + writeProjectsEndDate(null); + Sessions.getCurrent().setAttribute("companyFilterEndDateChanged", null); + writeResourceLoadsStartDate(null); + Sessions.getCurrent() + .setAttribute("resourceLoadStartDateChanged", null); + writeResourceLoadsEndDate(null); + Sessions.getCurrent().setAttribute("resourceLoadEndDateChanged", null); } public static ZoomLevel readZoomLevelCompanyView() { diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/settings/SettingsController.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/settings/SettingsController.java index aa4907e2a..abf2f1625 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/settings/SettingsController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/settings/SettingsController.java @@ -26,11 +26,13 @@ import java.util.Arrays; import java.util.Collections; import java.util.Comparator; import java.util.List; +import java.util.logging.Filter; import org.libreplan.business.common.exceptions.ValidationException; import org.libreplan.business.labels.entities.Label; import org.libreplan.business.resources.entities.Criterion; import org.libreplan.business.settings.entities.Language; +import org.libreplan.web.common.FilterUtils; import org.libreplan.web.common.IMessagesForUser; import org.libreplan.web.common.Level; import org.libreplan.web.common.MessagesForUser; @@ -139,17 +141,8 @@ public class SettingsController extends GenericForwardComposer { } private void clearSessionVariables() { - Session current = Sessions.getCurrent(); - - // Projects filters - current.setAttribute("companyFilterStartDate", null); - current.setAttribute("companyFilterEndtDate", null); - current.setAttribute("companyFilterLabel", null); - - // ResourcesLoad filters - current.setAttribute("resourceLoadStartDate", null); - current.setAttribute("resourceLoadEndDate", null); - current.setAttribute("resourceLoadFilterWorkerOrCriterion", null); + FilterUtils.clearBandboxes(); + FilterUtils.clearSessionDates(); } private void checkEmptyBandboxes() {