Update of
/var/cvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation
In directory
james.mmbase.org:/tmp/cvs-serv8918/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation
Modified Files:
Tag: b1_4
LinkTag.java
Log Message:
CMSC-805 Add optional parameters to content url when redirected
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation
See also: http://www.mmbase.org/jira/browse/CMSC-805
Index: LinkTag.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer/cmsc/taglib/src/java/com/finalist/cmsc/taglib/navigation/LinkTag.java,v
retrieving revision 1.17
retrieving revision 1.17.2.1
diff -u -b -r1.17 -r1.17.2.1
--- LinkTag.java 28 Jan 2008 21:15:45 -0000 1.17
+++ LinkTag.java 10 Mar 2008 09:25:14 -0000 1.17.2.1
@@ -22,6 +22,7 @@
import com.finalist.cmsc.beans.om.*;
import com.finalist.cmsc.navigation.ServerUtil;
+import com.finalist.cmsc.services.search.PageInfo;
import com.finalist.cmsc.services.search.Search;
import com.finalist.cmsc.services.sitemanagement.SiteManagement;
import com.finalist.cmsc.taglib.CmscTag;
@@ -240,13 +241,20 @@
private void addPortletParametersToUrl(PortalURL u) {
if (element != null) {
int pageId = page.getId();
- if (window == null) {
- window = Search.getPortletWindow(pageId, element);
+ PageInfo pageInfo = Search.getPortletInformation(pageId, element);
+ if (pageInfo != null) {
+ window = pageInfo.getWindowName();
+ u.setRenderParameter(window, "elementId", new String[] {
element });
+ for (Map.Entry<String, String> urlParam :
pageInfo.getUrlParameters().entrySet()) {
+ u.setRenderParameter(pageInfo.getWindowName(),
urlParam.getKey(), new String[] { urlParam.getValue() } );
+ }
}
+ else {
if (window != null) {
u.setRenderParameter(window, "elementId", new String[] {
element });
}
}
+ }
if (window != null) {
for (Map.Entry<String, Object> paramEntry : params.entrySet()) {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs