You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2008/02/07 00:03:05 UTC
svn commit: r619209 -
/lenya/trunk/src/modules-core/usecase/java/src/org/apache/lenya/cms/cocoon/transformation/UsecaseMenuTransformer.java
Author: andreas
Date: Wed Feb 6 15:03:02 2008
New Revision: 619209
URL: http://svn.apache.org/viewvc?rev=619209&view=rev
Log:
Add href attribute to menu items for executable usecases. This allows to get rid of the silly href='?' attributes on menu items.
Modified:
lenya/trunk/src/modules-core/usecase/java/src/org/apache/lenya/cms/cocoon/transformation/UsecaseMenuTransformer.java
Modified: lenya/trunk/src/modules-core/usecase/java/src/org/apache/lenya/cms/cocoon/transformation/UsecaseMenuTransformer.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/usecase/java/src/org/apache/lenya/cms/cocoon/transformation/UsecaseMenuTransformer.java?rev=619209&r1=619208&r2=619209&view=diff
==============================================================================
--- lenya/trunk/src/modules-core/usecase/java/src/org/apache/lenya/cms/cocoon/transformation/UsecaseMenuTransformer.java (original)
+++ lenya/trunk/src/modules-core/usecase/java/src/org/apache/lenya/cms/cocoon/transformation/UsecaseMenuTransformer.java Wed Feb 6 15:03:02 2008
@@ -127,8 +127,9 @@
usecase = usecaseResolver.resolve(this.sourceUrl, usecaseName);
usecase.setSourceURL(this.sourceUrl);
usecase.setName(usecaseName);
- if (attr.getValue(HREF_ATTRIBUTE) != null) {
- passRequestParameters(usecase, attr.getValue(HREF_ATTRIBUTE));
+ String hrefAttribute = attr.getValue(HREF_ATTRIBUTE);
+ if (hrefAttribute != null) {
+ passRequestParameters(usecase, hrefAttribute);
}
usecase.checkPreconditions();
if (usecase.hasErrors()) {
@@ -138,11 +139,10 @@
removeHrefAttribute(attributes);
messages = usecase.getErrorMessages();
}
- Object itemState = usecase.getParameter(Usecase.PARAMETER_ITEM_STATE);
- if (itemState != null && itemState instanceof Boolean) {
- Boolean state = (Boolean) itemState;
- attributes.addAttribute("", CHECKED_ATTRIBUTE, CHECKED_ATTRIBUTE, "CDATA", state.toString());
+ else if (hrefAttribute == null) {
+ attributes.addAttribute("", HREF_ATTRIBUTE, HREF_ATTRIBUTE, "CDATA", this.sourceUrl);
}
+ setItemState(attributes, usecase);
} finally {
if (usecase != null) {
usecaseResolver.release(usecase);
@@ -164,6 +164,14 @@
addMessages(messages);
}
+ }
+
+ protected void setItemState(AttributesImpl attributes, Usecase usecase) {
+ Object itemState = usecase.getParameter(Usecase.PARAMETER_ITEM_STATE);
+ if (itemState != null && itemState instanceof Boolean) {
+ Boolean state = (Boolean) itemState;
+ attributes.addAttribute("", CHECKED_ATTRIBUTE, CHECKED_ATTRIBUTE, "CDATA", state.toString());
+ }
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org