Update of
/var/cvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation
In directory
james.mmbase.org:/tmp/cvs-serv14734/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation
Modified Files:
LinkTag.java
Log Message:
Added a function to the link tag to restrict searching for a given portlet to
the current page.
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation
Index: LinkTag.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation/LinkTag.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- LinkTag.java 11 Jan 2008 10:22:17 -0000 1.15
+++ LinkTag.java 28 Jan 2008 12:38:28 -0000 1.16
@@ -44,6 +44,7 @@
private String window;
private String urlfragment;
private String portletdefinition;
+ private boolean restrictToCurrentPage;
/**
* Parameters added by nested param tag
@@ -126,6 +127,19 @@
private void setPageAndWindowBasedOnPortletDefinition(String path, String
portletdefinition) {
List<Page> pages = SiteManagement.getListFromPath(path);
int lastIndexOfPages = pages.size() - 1;
+
+ if (restrictToCurrentPage) {
+ if(lastIndexOfPages >= 0) {
+ Page currentPage = pages.get(lastIndexOfPages);
+ String portletPosition =
getPortletPositionWithDefinition(currentPage, portletdefinition);
+ if (portletPosition != null) {
+ window = portletPosition;
+ page = currentPage;
+ }
+ }
+ return;
+ }
+
for (int i = lastIndexOfPages; i >= 0; i--) {
Page currentPage = pages.get(i);
String portletPosition =
getPortletPositionWithDefinition(currentPage, portletdefinition);
@@ -267,6 +281,10 @@
this.portletdefinition = portletdefinition;
}
+ public void setRestrictToCurrentPage(boolean restrictToCurrentPage) {
+ this.restrictToCurrentPage = restrictToCurrentPage;
+ }
+
public void setWindow(String window) {
this.window = window;
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs