Author: bpapez
Date: Wed Sep 26 16:01:44 2007
New Revision: 18672

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18672&repname=
=3Djahia
Log:
http://www.jahia.net/jira/browse/JAHIA-2301: Deletion of non-standard type =
containers
- allow SINGLE_TYPE containers to be deleted and MANDATORY_TYPE containers =
not

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/data/beans/Contain=
erBean.java
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/data/beans/Contain=
erListBean.java
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/url/AddCon=
tainerURLTag.java
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/url/Delete=
ContainerURLTag.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/data/beans/C=
ontainerBean.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/data/beans/ContainerBean.java&rev=3D18672&r=
epname=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/data/beans/Contain=
erBean.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/data/beans/Contain=
erBean.java Wed Sep 26 16:01:44 2007
@@ -556,7 +556,7 @@
             int nbContainers =3D parentBean.getContainerIdsInList(null).si=
ze();
 =

             boolean singleContainer =3D ((this.jahiaContainer.getDefinitio=
n().getContainerListType()
-                    & JahiaContainerDefinition.SINGLE_TYPE) !=3D 0) && nbC=
ontainers <=3D 1;
+                    & JahiaContainerDefinition.MANDATORY_TYPE) !=3D 0) && =
nbContainers <=3D 1;
 =

             if (!isFieldWithCurrentPagePresent() && !singleContainer) {
                 curURL =3D guiBean.drawDeleteContainerUrl(theContainer);

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/data/beans/C=
ontainerListBean.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/data/beans/ContainerListBean.java&rev=3D186=
72&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/data/beans/Contain=
erListBean.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/data/beans/Contain=
erListBean.java Wed Sep 26 16:01:44 2007
@@ -420,10 +420,8 @@
                     JahiaContainerDefinition.CONTAINER_LIST_TYPE_PROPERTY)=
);
             final boolean canAddContainer;
             final int listSize =3D theList.getJahiaContainerList(processin=
gContext, processingContext.getEntryLoadRequest()).getFullSize();
-            if (containerListTypePropValue =3D=3D JahiaContainerDefinition=
.SINGLE_TYPE) {
+            if ((containerListTypePropValue & JahiaContainerDefinition.SIN=
GLE_TYPE) > 0) {
                 canAddContainer =3D (listSize =3D=3D 0);  =

-            } else if (containerListTypePropValue =3D=3D JahiaContainerDef=
inition.SINGLE_MANDATORY_TYPE) {
-                canAddContainer =3D (listSize =3D=3D 0);
             } else {
                 canAddContainer =3D true;
             }

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/url/=
AddContainerURLTag.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/taglibs/url/AddContainerURLTag.java&rev=3D1=
8672&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/taglibs/url/AddCon=
tainerURLTag.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/url/AddCon=
tainerURLTag.java Wed Sep 26 16:01:44 2007
@@ -103,20 +103,7 @@
     protected String getURL() {
         if (containerList !=3D null) {
             try {
-                final Properties listProperties =3D containerList.getDefin=
ition().getProperties();
-                final int containerListTypePropValue =3D Integer.parseInt(=
listProperties.getProperty(
-                        JahiaContainerDefinition.CONTAINER_LIST_TYPE_PROPE=
RTY));
-                final boolean canAddContainer;
-                final int listSize =3D containerList.getFullSize();
-                if (containerListTypePropValue =3D=3D JahiaContainerDefini=
tion.SINGLE_TYPE) {
-                    canAddContainer =3D (listSize =3D=3D 0);
-                } else if (containerListTypePropValue =3D=3D JahiaContaine=
rDefinition.SINGLE_MANDATORY_TYPE) {
-                    canAddContainer =3D (listSize =3D=3D 0);
-                } else {
-                    canAddContainer =3D true;
-                }
-
-                if (! canAddContainer) {
+                if (! canAddContainer()) {
                     logger.warn("Template warning: You are trying to gener=
ate a URL to add a second container to a single typed list");
                     logger.warn("Template warning: The URL will thus not b=
e generated");
                     return null;
@@ -130,23 +117,24 @@
         return null;
     }
 =

+    private boolean canAddContainer() throws JahiaException {
+        final Properties listProperties =3D containerList.getDefinition()
+                .getProperties();
+        final int containerListTypePropValue =3D Integer
+                .parseInt(listProperties
+                        .getProperty(JahiaContainerDefinition.CONTAINER_LI=
ST_TYPE_PROPERTY));
+        boolean canAddContainer =3D true;
+        final int listSize =3D containerList.getFullSize();
+        if ((containerListTypePropValue & JahiaContainerDefinition.SINGLE_=
TYPE) > 0) {
+            canAddContainer =3D (listSize =3D=3D 0);
+        }
+        return canAddContainer;
+    }
+    =

     protected String getJSPopupURL() {
         if (containerList !=3D null) {
             try {
-                final Properties listProperties =3D containerList.getDefin=
ition().getProperties();
-                final int containerListTypePropValue =3D Integer.parseInt(=
listProperties.getProperty(
-                        JahiaContainerDefinition.CONTAINER_LIST_TYPE_PROPE=
RTY));
-                final boolean canAddContainer;
-                final int listSize =3D containerList.getFullSize();
-                if (containerListTypePropValue =3D=3D JahiaContainerDefini=
tion.SINGLE_TYPE) {
-                    canAddContainer =3D (listSize =3D=3D 0);
-                } else if (containerListTypePropValue =3D=3D JahiaContaine=
rDefinition.SINGLE_MANDATORY_TYPE) {
-                    canAddContainer =3D (listSize =3D=3D 0);
-                } else {
-                    canAddContainer =3D true;
-                }
-
-                if (! canAddContainer) {
+                if (! canAddContainer()) {
                     logger.warn("Template warning: You are trying to gener=
ate a URL to add a second container to a single typed list");
                     logger.warn("Template warning: The URL will thus not b=
e generated");
                     return null;

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/url/=
DeleteContainerURLTag.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/taglibs/url/DeleteContainerURLTag.java&rev=
=3D18672&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/taglibs/url/Delete=
ContainerURLTag.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/taglibs/url/Delete=
ContainerURLTag.java Wed Sep 26 16:01:44 2007
@@ -16,10 +16,13 @@
  * limitations under the License.
  */package org.jahia.taglibs.url;
 =

+import java.util.Properties;
+
 import javax.servlet.jsp.JspException;
 =

 import org.jahia.data.beans.ContainerBean;
 import org.jahia.data.containers.JahiaContainer;
+import org.jahia.data.containers.JahiaContainerDefinition;
 import org.jahia.exceptions.JahiaException;
 import org.jahia.taglibs.container.ContainerTag;
 =

@@ -98,8 +101,14 @@
     protected String getURL () {
         if (container !=3D null) {
             try {
+                if (! canDeleteContainer()) {
+                    logger.warn("Template warning: You are trying to gener=
ate a URL to delete a container from a mandatory typed list");
+                    logger.warn("Template warning: The URL will thus not b=
e generated");
+                    return null;
+                }
+                =

                 return getJahiaData().gui().drawDeleteContainerUrl(
-                    container);
+                    container.getContentContainer());
             } catch (JahiaException je) {
                 logger.error("Error during URL generation:", je);
             }
@@ -110,8 +119,14 @@
     protected String getJSPopupURL () {
         if (container !=3D null) {
             try {
+                if (! canDeleteContainer()) {
+                    logger.warn("Template warning: You are trying to gener=
ate a URL to delete a container from a mandatory typed list");
+                    logger.warn("Template warning: The URL will thus not b=
e generated");
+                    return null;
+                }
+                =

                 String popupURL =3D getJahiaData().gui().html().
-                    drawDeleteContainerLauncher(container);
+                    drawDeleteContainerLauncher(container.getContentContai=
ner());
                 if ((popupURL !=3D null) && (!"".equals(popupURL))) {
                     return "javascript:" + popupURL;
                 } else {
@@ -123,6 +138,19 @@
         }
         return null;
     }
+    =

+    private boolean canDeleteContainer() throws JahiaException {
+        final Properties listProperties =3D container.getDefinition()
+                .getProperties();
+        final int containerListTypePropValue =3D Integer
+                .parseInt(listProperties
+                        .getProperty(JahiaContainerDefinition.CONTAINER_LI=
ST_TYPE_PROPERTY));
+        boolean canDeleteContainer =3D true;
+        if ((containerListTypePropValue & JahiaContainerDefinition.MANDATO=
RY_TYPE) > 0) {
+            canDeleteContainer =3D false;
+        }
+        return canDeleteContainer;
+    }    =

 =

     public int doEndTag() throws JspException {
         // let's reinitialize the tag variables to allow tag object reuse =
in

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

Reply via email to