From a20b5e4c525d1b1d3e1a35b013080addacfd64c1 Mon Sep 17 00:00:00 2001 From: Geronimo Ortiz Date: Wed, 4 Dec 2024 18:03:16 -0300 Subject: [PATCH] Issue 26341 Rules do not fire on "Show Preview" (#30832) Removed a check that was avoiding to fire the rule when the user was admin --- .../portlets/rules/business/RulesEngine.java | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/dotCMS/src/main/java/com/dotmarketing/portlets/rules/business/RulesEngine.java b/dotCMS/src/main/java/com/dotmarketing/portlets/rules/business/RulesEngine.java index 2a1fb378dd25..956ac64d11c6 100644 --- a/dotCMS/src/main/java/com/dotmarketing/portlets/rules/business/RulesEngine.java +++ b/dotCMS/src/main/java/com/dotmarketing/portlets/rules/business/RulesEngine.java @@ -172,19 +172,7 @@ public static void fireRules(final HttpServletRequest request, final HttpServlet if (!UtilMethods.isSet(request)) { throw new DotRuntimeException("ERROR: HttpServletRequest is null"); } - - // do not run rules in admin mode - PageMode mode= PageMode.get(request); - if(mode.isAdmin) { - final boolean fireRulesFromParameter =Try.of(()->Boolean.valueOf - (request.getParameter("fireRules"))).getOrElse(false); - final boolean fireRulesFromAttribute =Try.of(()-> Boolean.valueOf((Boolean) - request.getAttribute("fireRules"))).getOrElse(false); - - if(!fireRulesFromParameter && !fireRulesFromAttribute) { - return; - } - } + final Set alreadyFiredRulesFor =request.getAttribute(DOT_RULES_FIRED_ALREADY)!=null?(Set)request.getAttribute(DOT_RULES_FIRED_ALREADY):new HashSet(); final String ruleRunKey = parent.getIdentifier() +"_"+ fireOn.name();