Author: xlawrence
Date: Thu Jun 14 12:33:53 2007
New Revision: 17558

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17558&repname=
=3Djahia
Log:
resolve issue: http://www.jahia.net/jira/browse/JAHIA-2037: SP2: problem wi=
th read-only engine and engine'embedded nav: clicking on next stays on the =
current screen.

Do not attempt to steal the lock, if we are navigating

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/updatecont=
ainer/UpdateContainer_Engine.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/upda=
tecontainer/UpdateContainer_Engine.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/engines/updatecontainer/UpdateContainer_Eng=
ine.java&rev=3D17558&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/updatecont=
ainer/UpdateContainer_Engine.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/engines/updatecont=
ainer/UpdateContainer_Engine.java Thu Jun 14 12:33:53 2007
@@ -57,8 +57,8 @@
 import org.jahia.services.containers.ContentContainer;
 import org.jahia.services.lock.LockKey;
 import org.jahia.services.lock.LockPrerequisites;
-import org.jahia.services.lock.LockService;
 import org.jahia.services.lock.LockPrerequisitesResult;
+import org.jahia.services.lock.LockService;
 import org.jahia.services.usermanager.JahiaUser;
 import org.jahia.services.version.EntryLoadRequest;
 import org.jahia.services.version.JahiaSaveVersion;
@@ -132,12 +132,12 @@
         final ContentContainer contentContainer =3D (ContentContainer) the=
Obj;
         final String params =3D "?mode=3Ddisplay&cid=3D" + contentContaine=
r.getID();
         String useOriginPage =3D jParams.getParameter("use_container_origi=
n_page");
-        if (useOriginPage !=3D null && (Boolean.valueOf(useOriginPage)).bo=
oleanValue()){
+        if (useOriginPage !=3D null && (Boolean.valueOf(useOriginPage)).bo=
oleanValue()) {
             Properties extraParams =3D new Properties();
             extraParams.put(ParamBean.PAGE_ID_PARAMETER, Integer.toString(=
contentContainer.getPageID()));
-            return jParams.composeEngineUrl (ENGINE_NAME, extraParams, par=
ams);            =

+            return jParams.composeEngineUrl(ENGINE_NAME, extraParams, para=
ms);
         } else {
-        return jParams.composeEngineUrl(ENGINE_NAME, params);
+            return jParams.composeEngineUrl(ENGINE_NAME, params);
         }
     } // end renderLink
 =

@@ -213,6 +213,8 @@
             engineMap.put("writeAccess", Boolean.TRUE);
         }
 =

+        final String navigation =3D jParams.getParameter("navigation");
+        final boolean isNavigation =3D navigation !=3D null && navigation.=
length() > 0;
         if (engineMap.get("writeAccess") !=3D null) {
             // #ifdef LOCK
             final LockService lockRegistry =3D servicesRegistry.getLockSer=
vice();
@@ -255,8 +257,7 @@
                     }
 =

                     if (theScreen.equals("apply")) {
-                        final String navigation =3D jParams.getParameter("=
navigation");
-                        if (navigation !=3D null && navigation.length() > =
0) {
+                        if (isNavigation) {
                             if ("new".equals(navigation)) {
                                 //return null;
                             } else {
@@ -285,7 +286,7 @@
                         }
                     }
 =

-                    if (! "new".equals(jParams.getParameter("navigation"))=
) {
+                    if (! "new".equals(navigation)) {
                         processCurrentScreen(jParams, engineMap);
                     }
                 }
@@ -297,8 +298,7 @@
 =

         // displays the screen
         if (theScreen.equals("apply")) {
-            final String navigation =3D jParams.getParameter("navigation");
-            if (navigation !=3D null && navigation.length() > 0) {
+            if (isNavigation) {
                 final SessionState theSession =3D jParams.getSessionState(=
);
                 theSession.setAttribute("Navigation", "Navigation");
                 if (jParams.settings().areLocksActivated()) {
@@ -562,7 +562,7 @@
                     "ContainerVersioning", params, null);
             engineMap.put(RENDER_TYPE_PARAM,
                     new Integer(JahiaEngine.RENDERTYPE_FORWARD));
-            engineMap.put(JahiaEngine.ENGINE_REDIRECT_URL,versioningURL);
+            engineMap.put(JahiaEngine.ENGINE_REDIRECT_URL, versioningURL);
             engineMap.put(ENGINE_OUTPUT_FILE_PARAM, JahiaEngine.REDIRECT_J=
SP);
         } else if (theScreen.equals("categories")) {
             ManageCategories.getInstance().handleActions(jParams, mode,
@@ -614,9 +614,12 @@
             ManageImportExport.getInstance().handleActions(jParams, mode,
                     engineMap, theContainer.getContentContainer());
         } else if (theScreen.equals("save") || theScreen.equals("apply")) {
+            final String navigation =3D jParams.getParameter("navigation");
+            final boolean isNavigation =3D navigation !=3D null && navigat=
ion.length() > 0;
             final String lastScreen =3D jParams.getParameter("lastscreen");
             final LockKey futureStolenkey =3D (LockKey) engineMap.get("Loc=
kKey");
-            if (LockPrerequisites.getInstance().getLockPrerequisitesResult=
(futureStolenkey) !=3D null) {
+            if ((!isNavigation) &&
+                    LockPrerequisites.getInstance().getLockPrerequisitesRe=
sult(futureStolenkey) !=3D null) {
                 final String param =3D jParams.getParameter("whichKeyToSte=
al");
                 if (param !=3D null && param.length() > 0) {
                     if (lockRegistry.isAlreadyAcquired(futureStolenkey) &&
@@ -656,9 +659,9 @@
             if (ProcessingContext.isMultipartRequest(((ParamBean) jParams)=
.getRequest())) {
                 if (ManageImportExport.getInstance().handleActions(jParams=
, JahiaEngine.SAVE_MODE,
                         engineMap, theContainer.getContentContainer())) {
-                    if ( theScreen.equals("apply") ){
+                    if (theScreen.equals("apply")) {
                         ManageImportExport.getInstance().handleActions(jPa=
rams, JahiaEngine.LOAD_MODE,
-                            engineMap, theContainer.getContentContainer());
+                                engineMap, theContainer.getContentContaine=
r());
                     }
                 }
             }
@@ -692,7 +695,7 @@
                     jParams,
                     engineMap, feh);
 =

-            engineMap.put(JahiaEngine.ENGINE_VALIDATION_HELPER, evh); =

+            engineMap.put(JahiaEngine.ENGINE_VALIDATION_HELPER, evh);
             //JahiaEvent validationEvent =3D new JahiaEvent (this, jParams=
, theContainer);
             //ServicesRegistry.getInstance ().getJahiaEventService ().fire=
ContainerValidation(validationEvent);
 =

@@ -706,7 +709,7 @@
 =

                 Collections.sort(evh.getErrors(), new ValidationErrorSorte=
r(currentFieldGroup));
                 if (!feh.getStayOnSameField()) {
-                    feh.setSelectedFieldId(((JahiaField)((ValidationError)=
evh.getErrors().get(0)).getSource()).getID());
+                    feh.setSelectedFieldId(((JahiaField) ((ValidationError=
) evh.getErrors().get(0)).getSource()).getID());
                 }
                 feh.processCurrentFields(AddContainer_Engine.ENGINE_NAME,
                         jahiaContentContainerFacade, elh, jParams, engineM=
ap,
@@ -911,9 +914,6 @@
             theScreen =3D jParams.getParameter("screen");
         }
 =

-        logger.debug("screen: " + theScreen + ", nav: " + jParams.getParam=
eter("navigation"));
-        logger.debug("isNavigation: " + isNavigation);
-
         final String ctnidStr;
         if (forcedCid !=3D null && forcedCid.length() > 0) {
             ctnidStr =3D forcedCid;
@@ -1199,10 +1199,10 @@
                                 theContainer, AddContainer_Engine.ENGINE_N=
AME, jParams, mode, engineMap);
                         jParams.resetSubstituteEntryLoadRequest();
                     }
-                    if (newFieldID =3D=3D 0 && field.getID()>0) {
+                    if (newFieldID =3D=3D 0 && field.getID() > 0) {
                         newFieldID =3D field.getID();
                     }
-                    if (newAclID =3D=3D 0 && field.getAclID()>0) {
+                    if (newAclID =3D=3D 0 && field.getAclID() > 0) {
                         newAclID =3D field.getAclID();
                     }
                 }

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

Reply via email to