[jboss-svn-commits] JBL Code SVN: r29025 - in labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia: dialogs and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Aug 22 18:51:24 EDT 2009
Author: unibrew
Date: 2009-08-22 18:51:23 -0400 (Sat, 22 Aug 2009)
New Revision: 29025
Modified:
labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/Constants.java
labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgPagePropertiesTab.java
labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateDialog.java
labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateFooterDialog.java
labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateHeaderDialog.java
labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/utils/JBossOrgUtils.java
Log:
[ORG-236] Finalizing custom theme support.
Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/Constants.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/Constants.java 2009-08-22 15:21:33 UTC (rev 29024)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/Constants.java 2009-08-22 22:51:23 UTC (rev 29025)
@@ -1,5 +1,11 @@
package org.jboss.labs.magnolia;
+/**
+ * Class that holds all constants used in our customizations of Magnolia CMS.
+ *
+ * @author Ryszard Kozmik <ryszard.kozmik at jboss.com>
+ *
+ */
public class Constants {
public static final String JBOSSORG_CONTENT_NODE_PATH = "jbossorg";
Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgPagePropertiesTab.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgPagePropertiesTab.java 2009-08-22 15:21:33 UTC (rev 29024)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgPagePropertiesTab.java 2009-08-22 22:51:23 UTC (rev 29025)
@@ -11,6 +11,12 @@
import java.util.Collection;
import java.util.Iterator;
+/**
+ * Class that renders dialog tab to users that are in jbossorgEditors role.
+ *
+ * @author Ryszard Kozmik <ryszard.kozmik at jboss.com>
+ *
+ */
public class OrgPagePropertiesTab extends DialogTab {
@Override
Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateDialog.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateDialog.java 2009-08-22 15:21:33 UTC (rev 29024)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateDialog.java 2009-08-22 22:51:23 UTC (rev 29025)
@@ -20,6 +20,12 @@
import org.jboss.labs.magnolia.Constants;
import org.jboss.labs.magnolia.utils.JBossOrgUtils;
+/**
+ * Class that renders template settings dialog.
+ *
+ * @author Ryszard Kozmik <ryszard.kozmik at jboss.com>
+ *
+ */
public class OrgTemplateDialog extends ConfiguredDialog {
protected static Logger logger = Logger.getLogger(OrgTemplateDialog.class);
@@ -34,14 +40,6 @@
HierarchyManager mgr = MgnlContext.getHierarchyManager(ContentRepository.WEBSITE);
- String themeNumber ="";
-
- try {
- themeNumber = JBossOrgUtils.getPageProperty(this.getStorageNode(),"theme","0");
- } catch (RepositoryException e) {
- logger.error(e);
- }
-
try {
Content c = mgr.getContent(Constants.JBOSSORG_CONTENT_NODE_PATH, true, ItemType.CONTENTNODE);
content = c.getChildByName(Constants.TEMPLATE_CONTENT_NODE+getCustomThemeNumber());
@@ -83,10 +81,12 @@
}
private String getCustomThemeNumber () {
- String themeNumber ="";
+ String themeNumber ="0";
+
try {
- themeNumber = JBossOrgUtils.getPageProperty(this.getStorageNode(),"theme","0");
+ Content editedPageNode = super.getStorageNode();
+ themeNumber = JBossOrgUtils.getPageProperty(editedPageNode,"theme","0");
} catch (RepositoryException e) {
logger.error(e);
}
Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateFooterDialog.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateFooterDialog.java 2009-08-22 15:21:33 UTC (rev 29024)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateFooterDialog.java 2009-08-22 22:51:23 UTC (rev 29025)
@@ -20,6 +20,12 @@
import org.jboss.labs.magnolia.Constants;
import org.jboss.labs.magnolia.utils.JBossOrgUtils;
+/**
+ * Class that renders template footer definition dialog.
+ *
+ * @author Ryszard Kozmik <ryszard.kozmik at jboss.com>
+ *
+ */
public class OrgTemplateFooterDialog extends ConfiguredDialog {
protected static Logger logger = Logger.getLogger(OrgTemplateFooterDialog.class);
@@ -74,10 +80,12 @@
}
private String getCustomThemeNumber () {
- String themeNumber ="";
+ String themeNumber ="0";
+
try {
- themeNumber = JBossOrgUtils.getPageProperty(this.getStorageNode(),"theme","0");
+ Content editedPageNode = super.getStorageNode();
+ themeNumber = JBossOrgUtils.getPageProperty(editedPageNode,"theme","0");
} catch (RepositoryException e) {
logger.error(e);
}
Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateHeaderDialog.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateHeaderDialog.java 2009-08-22 15:21:33 UTC (rev 29024)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/dialogs/OrgTemplateHeaderDialog.java 2009-08-22 22:51:23 UTC (rev 29025)
@@ -20,6 +20,12 @@
import org.jboss.labs.magnolia.Constants;
import org.jboss.labs.magnolia.utils.JBossOrgUtils;
+/**
+ * Class that renders template header definition dialog.
+ *
+ * @author Ryszard Kozmik <ryszard.kozmik at jboss.com>
+ *
+ */
public class OrgTemplateHeaderDialog extends ConfiguredDialog {
protected static Logger logger = Logger.getLogger(OrgTemplateHeaderDialog.class);
@@ -74,15 +80,16 @@
}
private String getCustomThemeNumber () {
- String themeNumber ="";
- //try {
- //themeNumber = JBossOrgUtils.getPageProperty(this.,"theme","0");
- themeNumber = "0";
- //} catch (RepositoryException e) {
- // logger.error(e);
- //}
+ String themeNumber ="0";
+ try {
+ Content editedPageNode = super.getStorageNode();
+ themeNumber = JBossOrgUtils.getPageProperty(editedPageNode,"theme","0");
+ } catch (RepositoryException e) {
+ logger.error(e);
+ }
+
return themeNumber;
}
Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/utils/JBossOrgUtils.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/utils/JBossOrgUtils.java 2009-08-22 15:21:33 UTC (rev 29024)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-paragraphs/src/main/java/org/jboss/labs/magnolia/utils/JBossOrgUtils.java 2009-08-22 22:51:23 UTC (rev 29025)
@@ -6,11 +6,12 @@
import info.magnolia.cms.core.Content;
import java.text.SimpleDateFormat;
-import java.util.Collection;
import java.util.Date;
import javax.jcr.RepositoryException;
+import org.apache.log4j.Logger;
+
/**
* Class with various auxiliary static methods.
*
@@ -19,6 +20,9 @@
*
*/
public class JBossOrgUtils {
+
+ // LOGGER
+ private static Logger log = Logger.getLogger(JBossOrgUtils.class);
// CONSTANTS
private static final String RSS_DATE_FORMAT = "MMM d, yyyy h:mm a";
@@ -60,34 +64,49 @@
// checking whether the page has the property defined
if ( pageNode!=null && pageNode.hasNodeData(pathToValue) && pageNode.getNodeData(pathToValue).getString().trim().length()!=0 ) {
+ log.debug("PATH: "+pathToValue+" EXISTS IN CURRENT PAGE: "+pageNode.getHandle());
return pageNode.getNodeData(pathToValue).getString();
}
// checking if inheritance is turned on and if yes then searching through ancestors to find property value
- if ( pageNode.hasNodeData("orgLayoutBody/ignoreInherit") && !pageNode.getNodeData("orgLayoutBody/ignoreInherit").getBoolean() ) {
+ if ( !pageNode.hasNodeData("orgLayoutBody/ignoreInherit")
+ || ( pageNode.hasNodeData("orgLayoutBody/ignoreInherit")
+ && !pageNode.getNodeData("orgLayoutBody/ignoreInherit").getBoolean() ) ) {
- int ancestorIdx = pageNode.getAncestors().size()-1;
+ int ancestorIdx = pageNode.getAncestors().size();
+ log.debug("NUMBER OF ANCESTORS: "+ancestorIdx);
while ( ancestorIdx-- > 0 ) {
Content ancestor = pageNode.getAncestor(ancestorIdx);
+ log.debug("CURRENT ANCESTOR: "+ancestor.getHandle());
// if property value is defined for this ancestor then we are done
if ( ancestor.hasNodeData(pathToValue) && ancestor.getNodeData(pathToValue).getString().trim().length()!=0 ) {
+
+ log.debug("PROPERTY: "+pathToValue+" FOUND IN: "+ancestor.getHandle());
propertyValue=ancestor.getNodeData(pathToValue).getString();
break;
+
}
// in case this ancestor ignores any further inheritance we stop checking deeper ancestors
if ( ancestor.getNodeData("orgLayoutBody/ignoreInherit").getString().equals("true") ) {
+
+ log.debug("ANCESTOR: "+ancestor.getHandle()+" IGNORES INHERITANCE");
break;
+
}
}
} else {
+
+ log.debug("RETURNING DEFAULT VALUE: "+defaultValue);
return defaultValue;
+
}
+ log.debug("METHOD FINISHED, RETURNING: "+propertyValue);
return propertyValue;
}
More information about the jboss-svn-commits
mailing list