|
From: <die...@us...> - 2012-03-15 10:02:57
|
Revision: 3797
http://openutils.svn.sourceforge.net/openutils/?rev=3797&view=rev
Author: diego_schivo
Date: 2012-03-15 10:02:47 +0000 (Thu, 15 Mar 2012)
Log Message:
-----------
openutils-mgnlutils: ExtendedTemplate.getTemplateAvailability()
Modified Paths:
--------------
magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java
Modified: magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java
===================================================================
--- magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java 2012-03-15 06:53:34 UTC (rev 3796)
+++ magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java 2012-03-15 10:02:47 UTC (rev 3797)
@@ -20,11 +20,15 @@
package it.openutils.mgnlutils.templating;
import info.magnolia.cms.core.Content;
+import info.magnolia.cms.util.ContentUtil;
+import info.magnolia.rendering.template.TemplateAvailability;
+import info.magnolia.rendering.template.TemplateDefinition;
import info.magnolia.rendering.template.configured.ConfiguredTemplateDefinition;
import java.util.HashSet;
import java.util.Set;
+import javax.jcr.Node;
import javax.jcr.RepositoryException;
import org.apache.commons.lang.StringUtils;
@@ -155,76 +159,85 @@
* {@inheritDoc}
*/
@Override
- public boolean isAvailable(Content node)
+ public TemplateAvailability getTemplateAvailability()
{
- boolean available = super.isAvailable(node);
-
- if (!available)
+ final TemplateAvailability x = super.getTemplateAvailability();
+ return new TemplateAvailability()
{
- return false;
- }
+
+ public boolean isAvailable(Node content, TemplateDefinition templateDefinition)
+ {
+ boolean available = x != null ? !x.isAvailable(content, templateDefinition) : true;
- if (repositories != null && !repositories.isEmpty())
- {
- try
- {
- if (!repositories.contains(node.getWorkspace().getName()))
+ if (!available)
{
return false;
}
- }
- catch (RepositoryException e)
- {
- // ignore, should never happen
- }
- }
- if (available && (levels != null && !levels.isEmpty()))
- {
- try
- {
- int currentLevel = node.getLevel();
- if (!levels.contains(currentLevel))
+ Content node = ContentUtil.asContent(content);
+ if (repositories != null && !repositories.isEmpty())
{
- return false;
+ try
+ {
+ if (!repositories.contains(node.getWorkspace().getName()))
+ {
+ return false;
+ }
+ }
+ catch (RepositoryException e)
+ {
+ // ignore, should never happen
+ }
}
- }
- catch (RepositoryException e)
- {
- // ignore, should never happen
- }
- }
- if (available && StringUtils.isNotBlank(parentPath))
- {
- if (!StringUtils.contains(node.getHandle(), parentPath))
- {
- return false;
- }
- }
+ if (available && (levels != null && !levels.isEmpty()))
+ {
+ try
+ {
+ int currentLevel = node.getLevel();
+ if (!levels.contains(currentLevel))
+ {
+ return false;
+ }
+ }
+ catch (RepositoryException e)
+ {
+ // ignore, should never happen
+ }
+ }
- if (available && (parentTemplates != null && !parentTemplates.isEmpty()))
- {
- try
- {
- Content parent = node.getParent();
- while (parent.getLevel() > 0)
+ if (available && StringUtils.isNotBlank(parentPath))
{
- if (parentTemplates.contains(parent.getTemplate()))
+ if (!StringUtils.contains(node.getHandle(), parentPath))
{
- return true;
+ return false;
}
- parent = parent.getParent();
}
+
+ if (available && (parentTemplates != null && !parentTemplates.isEmpty()))
+ {
+ try
+ {
+ Content parent = node.getParent();
+ while (parent.getLevel() > 0)
+ {
+ if (parentTemplates.contains(parent.getTemplate()))
+ {
+ return true;
+ }
+ parent = parent.getParent();
+ }
+ }
+ catch (RepositoryException e)
+ {
+ log.warn("Error checking parent: " + e.getMessage(), e);
+ }
+ return false;
+ }
+
+ return true;
}
- catch (RepositoryException e)
- {
- log.warn("Error checking parent: " + e.getMessage(), e);
- }
- return false;
- }
-
- return true;
+ };
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mol...@us...> - 2015-03-05 14:31:23
|
Revision: 4610
http://openutils.svn.sourceforge.net/openutils/?rev=4610&view=rev
Author: molaschi
Date: 2015-03-05 14:31:16 +0000 (Thu, 05 Mar 2015)
Log Message:
-----------
fix error on template availability
Modified Paths:
--------------
magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java
Modified: magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java
===================================================================
--- magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java 2014-11-07 14:30:30 UTC (rev 4609)
+++ magnoliamodules/trunk/openutils-mgnlutils/src/main/java/it/openutils/mgnlutils/templating/ExtendedTemplate.java 2015-03-05 14:31:16 UTC (rev 4610)
@@ -178,7 +178,7 @@
public boolean isAvailable(Node node, TemplateDefinition templateDefinition)
{
- boolean available = x != null ? !x.isAvailable(node, templateDefinition) : true;
+ boolean available = x != null ? x.isAvailable(node, templateDefinition) : true;
if (!available)
{
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|