Author: xlawrence
Date: Tue Jun 19 14:52:30 2007
New Revision: 17639

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17639&repname=
=3Djahia
Log:
correctly display the integrity warnings when switching between languages

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/shared/Big=
Text_Field.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/shar=
ed/BigText_Field.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/engines/shared/BigText_Field.java&rev=3D176=
39&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/shared/Big=
Text_Field.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/shared/Big=
Text_Field.java Tue Jun 19 14:52:30 2007
@@ -31,10 +31,7 @@
 import org.jahia.data.containers.JahiaContainer;
 import org.jahia.data.containers.JahiaContainerList;
 import org.jahia.data.fields.*;
-import org.jahia.engines.EngineMessage;
-import org.jahia.engines.EngineMessages;
-import org.jahia.engines.JahiaEngine;
-import org.jahia.engines.JahiaEngineTools;
+import org.jahia.engines.*;
 import org.jahia.engines.validation.EngineValidationHelper;
 import org.jahia.engines.validation.ValidationError;
 import org.jahia.exceptions.JahiaException;
@@ -547,6 +544,17 @@
             //theField.setValue( FormDataManager.formEncode( fieldValue ) =
);
 =

             theField.setValue(fieldValue);
+
+            if (site.getURLIntegrityCheck() =3D=3D 1) {
+                final EngineMessages warningMessages =3D composeWarningMes=
sages(jParams,
+                        engineMap, theField, false);
+
+                if (! warningMessages.isEmpty()) {
+                    warningMessages.saveMessages(theField.getID() + ".warn=
ing.", ((ParamBean) jParams).getRequest());
+                    logger.debug("There are some Integrity warning message=
s !");
+                }
+            }
+
             output =3D ServicesRegistry.getInstance().getJahiaFetcherServi=
ce().
                     fetchServlet((ParamBean) jParams, forward);
         } else {
@@ -792,9 +800,17 @@
      *                 If set to False, the method will only consider the =
current language
      *                 of the ProcessingContext instance.
      */
-    protected EngineMessages composeWarningMessages(final ProcessingContex=
t jParams, final Map engineMap,
-                                                    final JahiaField theFi=
eld, final boolean allLangs) throws JahiaException {
-
+    protected EngineMessages composeWarningMessages(final ProcessingContex=
t jParams,
+                                                    final Map engineMap,
+                                                    final JahiaField theFi=
eld,
+                                                    final boolean allLangs=
) throws JahiaException {
+        final EngineLanguageHelper elh =3D (EngineLanguageHelper) engineMa=
p.get(JahiaEngine.ENGINE_LANGUAGE_HELPER);
+        final Locale oldLoc =3D jParams.getLocale();
+        if (elh !=3D null) {
+            if (! elh.getCurrentLocale().toString().equals(oldLoc.toString=
())) {
+                return new EngineMessages();
+            }
+        }
         final String value =3D theField.getValue();
         if (logger.isDebugEnabled())
                logger.debug("composeWarningMessages... " + value);
@@ -900,6 +916,7 @@
                         }
 =

                     } else {
+                        jParams.setCurrentLocale(oldLoc);
                         throw new JahiaException("Unknown state value: " +=
 state,
                                 "Unknown state value: " + state,
                                 JahiaException.ENGINE_ERROR,
@@ -921,6 +938,7 @@
         }
         if (logger.isDebugEnabled())
                logger.debug("Returning " + result.getSize() + " warning 
message(=
s): " + result);
+        jParams.setCurrentLocale(oldLoc);
         return result;
     }
 }

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to