Update of
/var/cvs/contributions/CMSContainer/cmsc/sitemanagement/src/java/com/finalist/cmsc/navigation/select/forms
In directory
james.mmbase.org:/tmp/cvs-serv17138/cmsc/sitemanagement/src/java/com/finalist/cmsc/navigation/select/forms
Modified Files:
SelectorAction.java
Log Message:
CMSC-1033 aliases are not stacked in the search of the content channel portlet
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/sitemanagement/src/java/com/finalist/cmsc/navigation/select/forms
See also: http://www.mmbase.org/jira/browse/CMSC-1033
Index: SelectorAction.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer/cmsc/sitemanagement/src/java/com/finalist/cmsc/navigation/select/forms/SelectorAction.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- SelectorAction.java 10 May 2008 16:31:24 -0000 1.6
+++ SelectorAction.java 25 Mar 2009 08:24:18 -0000 1.7
@@ -9,18 +9,27 @@
*/
package com.finalist.cmsc.navigation.select.forms;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringUtils;
-
-import org.apache.struts.action.*;
-import org.mmbase.bridge.*;
+import org.apache.struts.action.ActionForm;
+import org.apache.struts.action.ActionForward;
+import org.apache.struts.action.ActionMapping;
+import org.mmbase.bridge.Cloud;
+import org.mmbase.bridge.Node;
+import org.mmbase.bridge.NodeList;
import com.finalist.cmsc.mmbase.TreeUtil;
-import com.finalist.cmsc.navigation.*;
+import com.finalist.cmsc.navigation.NavigationInfo;
+import com.finalist.cmsc.navigation.NavigationTreeModel;
+import com.finalist.cmsc.navigation.NavigationUtil;
+import com.finalist.cmsc.navigation.PagesUtil;
+import com.finalist.cmsc.navigation.SiteUtil;
import com.finalist.cmsc.navigation.select.SelectRenderer;
import com.finalist.cmsc.util.bundles.JstlUtil;
import com.finalist.tree.TreeInfo;
@@ -29,6 +38,8 @@
public class SelectorAction extends com.finalist.cmsc.struts.SelectorAction {
+ private boolean strictPageOnly;
+
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request,
HttpServletResponse response, Cloud cloud) throws Exception {
@@ -39,6 +50,11 @@
cloud.setProperty("Selector" + NavigationInfo.class.getName(), info);
}
+ if (mapping instanceof SelectorPageActionMapping) {
+ SelectorPageActionMapping selectoMapping =
(SelectorPageActionMapping) mapping;
+ strictPageOnly = selectoMapping.isStrictPageOnly();
+ }
+
JstlUtil.setResourceBundle(request, "cmsc-site");
return super.execute(mapping, form, request, response, cloud);
}
@@ -87,7 +103,7 @@
node = NavigationUtil.getSiteFromPath(cloud,
node.getStringValue(TreeUtil.PATH_FIELD));
}
- NavigationTreeModel model = new NavigationTreeModel(node);
+ NavigationTreeModel model = new NavigationTreeModel(node,
strictPageOnly);
SelectAjaxRenderer chr = new SelectRenderer(response, getLinkPattern(),
getTarget());
AjaxTree t = new AjaxTree(model, chr, info);
t.setImgBaseUrl("../../gfx/icons/");
@@ -109,6 +125,13 @@
Node parentNode = NavigationUtil.getPageFromPath(cloud, path);
if (parentNode != null) {
NodeList children = NavigationUtil.getChildren(parentNode);
+ if (strictPageOnly) {
+ children =
NavigationUtil.getStrictPageOrderedChildren(parentNode);
+ }
+ else {
+ children = NavigationUtil.getChildren(parentNode);
+ }
+
for (Iterator<Node> iter = children.iterator(); iter.hasNext();) {
Node child = iter.next();
strings.add(child.getStringValue(TreeUtil.PATH_FIELD));
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs