You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by er...@apache.org on 2012/03/30 22:44:28 UTC
svn commit: r1307601 [3/3] - in
/ofbiz/branches/20120329_portletWidget/framework:
base/src/org/ofbiz/base/util/ common/config/ common/data/ common/entitydef/
common/webcommon/WEB-INF/ common/widget/ images/webapp/images/
webtools/config/ webtools/webap...
Modified: ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java?rev=1307601&r1=1307600&r2=1307601&view=diff
==============================================================================
--- ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java (original)
+++ ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java Fri Mar 30 20:44:26 2012
@@ -45,6 +45,7 @@ import org.ofbiz.base.util.string.Flexib
import org.ofbiz.entity.Delegator;
import org.ofbiz.entity.GenericEntityException;
import org.ofbiz.entity.GenericValue;
+import org.ofbiz.entity.util.EntityUtil; //#Eam# portletWidget
import org.ofbiz.widget.ModelWidget;
import org.ofbiz.widget.ModelWidgetAction;
import org.ofbiz.widget.WidgetFactory;
@@ -1602,12 +1603,44 @@ public abstract class ModelScreenWidget
protected String originalPortalPageId;
protected String actualPortalPageId;
protected Boolean usePrivate;
+ //#Bam# portletWidget
+ protected FlexibleStringExpander portalPortletId;
+ protected FlexibleStringExpander portletSeqId;
+ private static final List<String> portletFieldNames = initPortletFieldNames();
+
+ static private List<String> initPortletFieldNames(){
+ List<String> _portletFieldNames = FastList.newInstance();
+ _portletFieldNames.add("screenName");
+ _portletFieldNames.add("screenLocation");
+ _portletFieldNames.add("useScreen");
+ _portletFieldNames.add("useScript");
+ _portletFieldNames.add("scriptName");
+ _portletFieldNames.add("uiLabelLocation");
+ _portletFieldNames.add("formName");
+ _portletFieldNames.add("formLocation");
+ _portletFieldNames.add("pkIdName");
+ _portletFieldNames.add("editAreaDivId");
+ _portletFieldNames.add("subAreaDivId");
+ _portletFieldNames.add("titleLabel");
+ _portletFieldNames.add("useMenu");
+ _portletFieldNames.add("menuName");
+ _portletFieldNames.add("menuLocation");
+ _portletFieldNames.add("helpName");
+ _portletFieldNames.add("editFormName");
+ _portletFieldNames.add("editFormLocation");
+ return _portletFieldNames;
+ }
+ //#Eam# portletWidget
public PortalPage(ModelScreen modelScreen, Element portalPageElement) {
super(modelScreen, portalPageElement);
this.idExdr = FlexibleStringExpander.getInstance(portalPageElement.getAttribute("id"));
this.confModeExdr = FlexibleStringExpander.getInstance(portalPageElement.getAttribute("conf-mode"));
this.usePrivate = !("false".equals(portalPageElement.getAttribute("use-private")));
+ //#Bam# portletWidget
+ this.portalPortletId = FlexibleStringExpander.getInstance(portalPageElement.getAttribute("portalPortletId"));
+ this.portletSeqId = FlexibleStringExpander.getInstance(portalPageElement.getAttribute("portletSeqId"));
+ //#Eam# portletWidget
}
@Override
@@ -1617,9 +1650,10 @@ public abstract class ModelScreenWidget
GenericValue portalPage = null;
List<GenericValue> portalPageColumns = null;
List<GenericValue> portalPagePortlets = null;
- List<GenericValue> portletAttributes = null;
String expandedPortalPageId = getId(context);
+ String portalPortletId = this.portalPortletId.expandString(context);//#Eam# portletWidget
+ String portletSeqId = this.portletSeqId.expandString(context);//#Eam# portletWidget
if (UtilValidate.isNotEmpty(expandedPortalPageId)) {
if (usePrivate) {
@@ -1643,6 +1677,45 @@ public abstract class ModelScreenWidget
return;
}
+ //#Bam# portletWidget
+ if (UtilValidate.isNotEmpty(portalPortletId)) {
+ GenericValue portletValue = null;
+ if ( UtilValidate.isNotEmpty(portletSeqId)) {
+ portletValue = delegator.findByPrimaryKey("PortalPagePortletView", UtilMisc.toMap("portalPageId", actualPortalPageId, "portalPortletId", portalPortletId, "portletSeqId", portletSeqId));
+ } else {
+ List<GenericValue> portletValues = delegator.findByAnd("PortalPagePortletView", UtilMisc.toMap("portalPageId", actualPortalPageId, "portalPortletId", portalPortletId));
+ if (UtilValidate.isNotEmpty(portletValues)) {
+ portletValue = EntityUtil.getFirst(portletValues);
+ portletSeqId = portletValue.getString("portletSeqId");
+ }
+ }
+ if ( UtilValidate.isEmpty(portletValue)) {
+ portletValue = delegator.findByPrimaryKey("PortalPortlet", UtilMisc.toMap("portalPortletId", portalPortletId));
+ }
+
+ if (UtilValidate.isNotEmpty(portletValue)) {
+ //remove from context value which will be initialized by this portlet
+ for (String portletField : portletFieldNames) {
+ if (context.containsKey(portletField)) context.put(portletField, null); //remove not works, suppose it's a because it's a stack
+ }
+ context.put("portletValue",portletValue);
+ context.put("portalPageId", actualPortalPageId);
+ context.put("portletSeqId", portletSeqId);
+ context.put("portalPortletId", portalPortletId);
+
+ retrievePortletAttributes(context);
+ putScreenNameLocationValue(delegator, context, portletValue);
+
+ // Renders the portalPagePortlet
+ context.put("includedInPage", "N"); // portletWidget modification
+ screenStringRenderer.renderPortalPagePortletBegin(writer, context, this, portletValue);
+ screenStringRenderer.renderPortalPagePortletBody(writer, context, this, portletValue);
+ screenStringRenderer.renderPortalPagePortletEnd(writer, context, this, portletValue);
+ }
+ } else {
+ context.put("includedInPage", "Y"); // portletWidget modification
+ //#Eam# portletWidget
+
// Renders the portalPage header
screenStringRenderer.renderPortalPageBegin(writer, context, this);
@@ -1693,6 +1766,8 @@ public abstract class ModelScreenWidget
context.put("nextColumnSeqId", nextColumnSeqId);
// Get portlet's attributes
+ //#Bam# portletWidget
+ /*
portletAttributes = delegator.findList("PortletAttribute",
EntityCondition.makeCondition(UtilMisc.toMap("portalPageId", portletValue.get("portalPageId"), "portalPortletId", portletValue.get("portalPortletId"), "portletSeqId", portletValue.get("portletSeqId"))),
null, null, null, false);
@@ -1701,7 +1776,30 @@ public abstract class ModelScreenWidget
GenericValue attribute = attributesIterator.next();
context.put(attribute.getString("attrName"), attribute.getString("attrValue"));
}
+ */
+ for (String portletField : portletFieldNames) {
+ if (context.containsKey(portletField)) context.remove(portletField);
+ }
+ //if (context.containsKey("areaDivId")) context.remove("areaDivId"); with id build with portalPageId portalPortletId portletSeqId, it seem, it's no more necessary because always unique
+ if (context.containsKey("component")) context.remove("component");
+ if (context.containsKey("portletLongId")) context.remove("portletLongId");
+ if (context.containsKey("portletTypeId")) context.remove("portletTypeId");
+ if (context.containsKey("subComponent")) context.remove("subComponent");
+ if (context.containsKey("webapp")) context.remove("webapp");
+ if (context.containsKey("areaId")) context.remove("areaId");
+
+ context.put("portletValue",portletValue);
+ context.put("portalPageId", portletValue.get("portalPageId"));
+ context.put("portalPortletId", portletValue.get("portalPortletId"));
+ context.put("portletSeqId", portletValue.get("portletSeqId"));
+
+ retrievePortletAttributes(context);
+
+ ListIterator<GenericValue> attributesIterator = (ListIterator<GenericValue>) context.remove("portletAttributesIterator");
+ putScreenNameLocationValue(delegator, context, portletValue);
+ //#Eam# portletWidget
+
// Renders the portalPagePortlet
screenStringRenderer.renderPortalPagePortletBegin(writer, context, this, portletValue);
screenStringRenderer.renderPortalPagePortletBody(writer, context, this, portletValue);
@@ -1725,6 +1823,7 @@ public abstract class ModelScreenWidget
}
// Renders the portalPage footer
screenStringRenderer.renderPortalPageEnd(writer, context, this);
+ } //#Eam# portletWidget
} catch (IOException e) {
String errMsg = "Error rendering PortalPage with portalPageId [" + getId(context) + "]: " + e.toString();
Debug.logError(e, errMsg, module);
@@ -1736,6 +1835,214 @@ public abstract class ModelScreenWidget
}
}
+ /**
+ * update screenName and screenLocation in portletValue with correct value if it's with a portletType or if it's a default value
+ * @param delegator
+ * @param context
+ * @param portletValue
+ * @throws GenericEntityException
+ */
+ private static void putScreenNameLocationValue(Delegator delegator, Map<String,Object> context, GenericValue portletValue) throws GenericEntityException{
+ if (UtilValidate.isNotEmpty(portletValue.get("portletTypeId"))) {
+ //update screen values
+ GenericValue portletType = delegator.findOne("PortletType", true, "portletTypeId", portletValue.get("portletTypeId"));
+ if (UtilValidate.isEmpty(portletType)){
+ Debug.logError("PortletId = " + portletValue.get("portalPortletId") + " with a not existing portletType, portletTypeId = " + portletValue.get("portletTypeId"), module);
+ } else {
+ portletValue.put("screenName", portletType.get("screenName"));
+ portletValue.put("screenLocation", portletType.get("screenLocation"));
+ }
+ } else {
+ if (UtilValidate.isEmpty(portletValue.get("screenName"))){
+ portletValue.put("screenName", context.get("screenName"));
+ }
+ if (UtilValidate.isEmpty(portletValue.get("screenLocation"))){
+ portletValue.put("screenLocation", context.get("screenLocation"));
+ }
+ }
+ }
+
+ protected static Map<String,Object> retrievePortletAttributes (Map<String,Object> context) throws GenericEntityException {
+ Delegator delegator = (Delegator) context.get("delegator");
+ String portalPageId = (String) context.get("portalPageId");
+ String portalPortletId = (String) context.get("portalPortletId");
+ GenericValue portletValue = (GenericValue) context.remove("portletValue");
+ if (UtilValidate.isEmpty(portletValue)) {
+ portletValue = delegator.findByPrimaryKey("PortalPortlet", UtilMisc.toMap("portalPortletId", portalPortletId));
+ }
+ String portletSeqId= (String) context.get("portletSeqId");
+
+ List<GenericValue> portletAttributes = delegator.findList("PortletAttribute",
+ EntityCondition.makeCondition(UtilMisc.toMap("portalPageId", "_NA_", "portalPortletId", portalPortletId, "portletSeqId", "00000")),
+ null, null, null, false);
+ //Begin addon modification : portletWidget
+
+ //Retrieve attributes from portletValue
+ // portalPortlet field overwrite PortletAttribute coming from portalPageId _NA_
+ if (UtilValidate.isNotEmpty(portletValue)) {
+ for (String portletField : portletFieldNames) {
+ if (UtilValidate.isNotEmpty(portletValue.get(portletField))) portletAttributes.add(delegator.makeValidValue("PortletAttribute", UtilMisc.toMap("attrName",portletField,"attrValue", portletValue.get(portletField))));
+ }
+ if (UtilValidate.isNotEmpty(portletValue.get("helpName"))) {
+ String helpName = (String) portletValue.get("helpName");
+ if (helpName.startsWith("DETAIL_") && helpName.length()>7) {
+ helpName = (String) context.get(helpName.substring(7, helpName.length()));
+ }
+ portletAttributes.add(delegator.makeValidValue("PortletAttribute", UtilMisc.toMap("attrName","helpName","attrValue", helpName)));
+ }
+ }
+ //End addon modification : portletWidget
+
+ if (UtilValidate.isNotEmpty(portletSeqId)) {
+ List<GenericValue> portalPortletAttributes = delegator.findList("PortletAttribute",
+ EntityCondition.makeCondition(UtilMisc.toMap("portalPageId", portalPageId, "portalPortletId", portalPortletId, "portletSeqId",portletSeqId)),
+ null, null, null, false);
+ if (UtilValidate.isNotEmpty(portalPortletAttributes)) {
+ portletAttributes.addAll(portalPortletAttributes);
+ }
+ }
+ ListIterator<GenericValue> portletAttributesIterator = portletAttributes.listIterator();
+ while (portletAttributesIterator.hasNext()) {
+ GenericValue attribute = portletAttributesIterator.next();
+ context.put(attribute.getString("attrName"), attribute.getString("attrValue"));
+ }
+ if (UtilValidate.isNotEmpty(portletValue.get("portletLongId"))) context.put("portletLongId", portletValue.get("portletLongId"));
+ if (UtilValidate.isNotEmpty(portletValue.get("portletTypeId"))) context.put("portletTypeId", portletValue.get("portletTypeId"));
+ if (UtilValidate.isNotEmpty(portletValue.get("component"))) context.put("component", portletValue.get("component"));
+ if (UtilValidate.isNotEmpty(portletValue.get("subComponent"))) context.put("subComponent", portletValue.get("subComponent"));
+ if (UtilValidate.isNotEmpty(portletValue.get("webapp"))) context.put("webapp", portletValue.get("webapp"));
+
+ // put default value in areaId, use value in attribute (so in context) or in parameters or PP_${portalPageId}${portalPortletId}${portletSeqId}
+ String areaId = (String) context.get("areaId");
+ if (UtilValidate.isEmpty(areaId)) {
+ Map<String, Object> contextParameters = UtilGenerics.checkMap( context.get("parameters"));
+ areaId = (String) contextParameters.get("areaId");
+ }
+ if (UtilValidate.isEmpty(areaId)) {
+ areaId = "PP_"+portalPageId+portalPortletId+portletSeqId;
+ }
+ context.put("currentAreaId", "PP_"+portalPageId+portalPortletId+portletSeqId);
+ context.put("areaId", areaId);
+
+ //Begin addon modification : portletWidget
+ String portletLongId = (String) context.get("portletLongId");
+ if (UtilValidate.isEmpty(portletLongId)) {
+ portletLongId = portalPortletId;
+ }
+ if (UtilValidate.isNotEmpty(portletValue.get("component"))) {
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("screenName"))) {
+ context.put("screenName", portletValue.get("screenName"));
+ } else {
+ context.put("screenName", portletLongId);
+ }
+ }
+
+ // prepare location for screen form menu
+ StringBuffer location = new StringBuffer();
+ StringBuffer uiLabelLocation = new StringBuffer();
+ if (UtilValidate.isNotEmpty(portletValue.get("component"))){
+ location.append("component://").append(portletValue.get("component")).append("/widget/");
+ if (UtilValidate.isNotEmpty(context.get("webapp"))) {
+ location.append(context.get("webapp")).append("/");
+ }
+ uiLabelLocation.append(location);
+ location.append(context.get("subComponent"));
+ }
+ //End addon modification : portletWidget
+ if (UtilValidate.isNotEmpty(portletValue.get("component"))) {
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("screenLocation"))
+ && "Y".equals(portletValue.get("useScreen"))) {
+ context.put("screenLocation",portletValue.get("screenLocation"));
+ } else if ("Y".equals(portletValue.get("useScreen")) ) {
+ context.put("screenLocation", location +"Screens.xml");
+ }
+ }
+ else if (UtilValidate.isNotEmpty(portletValue)) {
+ context.put("screenLocation", portletValue.get("screenLocation"));
+ }
+
+ //if (UtilValidate.isEmpty(context.get("areaDivId"))) context.put("areaDivId", "PP_" + portalPageId + portalPortletId + portletSeqId); with id build with portalPageId portalPortletId portletSeqId, it seem, it's no more necessary because always unique
+ if (UtilValidate.isEmpty(context.get("editAreaDivId"))) context.put("editAreaDivId", portletLongId + "_EditArea");
+ if (UtilValidate.isEmpty(context.get("entity"))) context.put("entity", portletLongId);
+ if (UtilValidate.isEmpty(context.get("helpName"))) context.put("helpName", "HELP_" + portalPortletId);
+ if (UtilValidate.isEmpty(context.get("subAreaDivId"))) context.put("subAreaDivId", portletLongId + "_SubArea");
+ if (UtilValidate.isEmpty(context.get("titleLabel"))) context.put("titleLabel", "PageTitle"+portletLongId);
+
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("menuName")) ){
+ context.put("menuName", portletValue.get("menuName"));
+ } else {
+ context.put("menuName", portletLongId);
+ }
+
+ if (UtilValidate.isNotEmpty(portletValue.get("portletTypeId"))){
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("menuLocation"))
+ && "Y".equals(portletValue.get("useMenu")) ){
+ context.put("menuLocation", portletValue.get("menuLocation"));
+ } else if ("Y".equals(portletValue.get("useMenu")) ) {
+ context.put("menuLocation", location.toString() + "Menus.xml");
+ }
+ }
+
+ if (UtilValidate.isNotEmpty(portletValue.get("portletTypeId"))){
+ if (UtilValidate.isNotEmpty(portletValue)
+ && UtilValidate.isNotEmpty(portletValue.get("scriptName"))
+ && "Y".equals(portletValue.get("useScript")) ){
+ context.put("scriptName", portletValue.get("scriptName"));
+ } else {
+ StringBuffer scriptName = new StringBuffer();
+ scriptName.append("component://").append(context.get("component"))
+ .append("/script/org/ofbiz/")
+ .append(context.get("component"))
+ .append("/");
+ if (UtilValidate.isNotEmpty(context.get("webapp"))) {
+ scriptName.append(context.get("webapp")).append("/");
+ }
+ // test if we should use script, if yes add scriptName in context
+ if (UtilValidate.isNotEmpty(portletValue) && "Y".equals(portletValue.get("useScript"))) {
+ context.put("scriptName", scriptName.append(context.get("subComponent")).append("Wactions.xml").append("#").append(portletLongId) );
+ }
+ }
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("uiLabelLocation")) ){
+ context.put("uiLabelLocation", portletValue.get("uiLabelLocation"));
+ } else {
+ uiLabelLocation.append("CommonScreens.xml");
+ context.put("uiLabelLocation", uiLabelLocation );
+ }
+ }
+ if (UtilValidate.isEmpty(context.get("formName"))) {
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("formName")) ){
+ context.put("formName", portletValue.get("formName"));
+ } else {
+ context.put("formName", portletLongId);
+ }
+ }
+ if (UtilValidate.isEmpty(context.get("formLocation"))) {
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("formLocation")) ){
+ context.put("formLocation", portletValue.get("formLocation"));
+ } else {
+ context.put("formLocation", location.toString() + "Forms.xml");
+ }
+ }
+
+ if (UtilValidate.isEmpty(context.get("editFormName"))){
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("editFormName")) ){
+ context.put("editFormName", portletValue.get("editFormName"));
+ } else {
+ context.put("editFormName", "EditParam_"+portletLongId);
+ }
+ }
+ if (UtilValidate.isEmpty(context.get("editFormLocation"))) {
+ if (UtilValidate.isNotEmpty(portletValue) && UtilValidate.isNotEmpty(portletValue.get("editFormLocation")) ){
+ context.put("editFormLocation", portletValue.get("editFormLocation"));
+ } else {
+ context.put("editFormLocation", location.toString() + "Forms.xml");
+ }
+ }
+ //End addon modification : portletWidget
+ context.put("portletAttributesIterator", portletAttributesIterator);
+ return context;
+ }
+
public String getId(Map<String, Object> context) {
return this.idExdr.expandString(context);
}
Modified: ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/text/TextFormRenderer.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/text/TextFormRenderer.java?rev=1307601&r1=1307600&r2=1307601&view=diff
==============================================================================
--- ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/text/TextFormRenderer.java (original)
+++ ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/text/TextFormRenderer.java Fri Mar 30 20:44:26 2012
@@ -46,6 +46,7 @@ import org.ofbiz.widget.form.ModelFormFi
import org.ofbiz.widget.form.ModelFormField.RadioField;
import org.ofbiz.widget.form.ModelFormField.RangeFindField;
import org.ofbiz.widget.form.ModelFormField.ResetField;
+import org.ofbiz.widget.form.ModelFormField.ShowPortletLink;
import org.ofbiz.widget.form.ModelFormField.SubmitField;
import org.ofbiz.widget.form.ModelFormField.TextField;
import org.ofbiz.widget.form.ModelFormField.TextFindField;
@@ -298,4 +299,9 @@ public class TextFormRenderer implements
public void renderContainerFindField(Appendable writer, Map<String, Object> context, ContainerField containerField) throws IOException {
}
+
+ @Override
+ public void renderShowPortletLink(Appendable writer, Map<String, Object> context, ShowPortletLink showPortletLink) {
+ // TODO Auto-generated method stub
+ }
}
Modified: ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/xml/XmlFormRenderer.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/xml/XmlFormRenderer.java?rev=1307601&r1=1307600&r2=1307601&view=diff
==============================================================================
--- ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/xml/XmlFormRenderer.java (original)
+++ ofbiz/branches/20120329_portletWidget/framework/widget/src/org/ofbiz/widget/xml/XmlFormRenderer.java Fri Mar 30 20:44:26 2012
@@ -46,6 +46,7 @@ import org.ofbiz.widget.form.ModelFormFi
import org.ofbiz.widget.form.ModelFormField.RadioField;
import org.ofbiz.widget.form.ModelFormField.RangeFindField;
import org.ofbiz.widget.form.ModelFormField.ResetField;
+import org.ofbiz.widget.form.ModelFormField.ShowPortletLink;
import org.ofbiz.widget.form.ModelFormField.SubmitField;
import org.ofbiz.widget.form.ModelFormField.TextField;
import org.ofbiz.widget.form.ModelFormField.TextFindField;
@@ -339,4 +340,9 @@ public class XmlFormRenderer implements
public void renderContainerFindField(Appendable writer, Map<String, Object> context, ContainerField containerField) throws IOException {
}
+
+ @Override
+ public void renderShowPortletLink(Appendable writer, Map<String, Object> context, ShowPortletLink showPortletLink) {
+ // TODO Auto-generated method stub
+ }
}
Modified: ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlFormMacroLibrary.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlFormMacroLibrary.ftl?rev=1307601&r1=1307600&r2=1307601&view=diff
==============================================================================
--- ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlFormMacroLibrary.ftl (original)
+++ ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlFormMacroLibrary.ftl Fri Mar 30 20:44:26 2012
@@ -47,6 +47,13 @@ under the License.
</#if>
</#macro>
<#macro renderHyperlinkField></#macro>
+<#macro makeShowPortletString linkStyle id event action target targetArea targetPortletId description parameterForm parameterList collapse>
+<div <#if id?has_content>id="${id}_div"</#if>><a href="javascript:ajaxUpdateArea('${targetArea}','${target}',<#if parameterForm?has_content> jQuery('#${parameterForm}').serialize()<#elseif parameterList?has_content>${parameterList}<#else>'portalPortletId=${targetPortletId}'</#if>); <#if collapse?has_content>toggleParentScreenlet('${collapse}');</#if>">${description}</a></div>
+</#macro>
+<#macro rerenderRefreshPortlet linkStyle event action areaId id formName imgSrc title alternate target appendFormParams description params collapse markSelected>
+<#if id?has_content><div id="${id}_div"></#if>
+<a <#if linkStyle?has_content>class="${linkStyle}"</#if> href='javascript:refrshPortlet("${target}", "${areaId}", "${params}", "${formName}", "${appendFormParams}", "${collapse}", <#if (collapse== "true" || markSelected=="true" ) && id?has_content>"${id}_div"<#else>""</#if>,"${markSelected}" )' <#if action?has_content && event?has_content> ${event}="${action}"</#if><#if imgSrc?length == 0 && title?has_content> title="${title}"</#if>><#if imgSrc?has_content><img src="${imgSrc}" alt="${alternate}" title="${title}"/></#if>${description}</a><#if id?has_content></div></#if>
+</#macro>
<#macro renderTextField name className alert value textSize maxlength id event action disabled clientAutocomplete ajaxUrl ajaxEnabled mask>
<#if mask?has_content>
@@ -276,13 +283,15 @@ ${item.description}</span>
</#list>
</#macro>
-<#macro renderSubmitField buttonType className alert formName title name event action imgSrc confirmation containerId ajaxUrl>
+<#-- <#macro renderSubmitField buttonType className alert formName title name event action imgSrc confirmation containerId ajaxUrl> -->
+<#macro renderSubmitField buttonType className alert formName title name event action imgSrc confirmation containerId ajaxUrl returnParams>
<#if buttonType=="text-link">
<a <@renderClass className alert /> href="javascript:document.${formName}.submit()" <#if confirmation?has_content>onclick="return confirm('${confirmation?js_string}');"</#if>><#if title?has_content>${title}</#if> </a>
<#elseif buttonType=="image">
<input type="image" src="${imgSrc}" <@renderClass className alert /><#if name?has_content> name="${name}"</#if><#if title?has_content> alt="${title}"</#if><#if event?has_content> ${event}="${action}"</#if> <#if confirmation?has_content>onclick="return confirm('${confirmation?js_string}');"</#if>/>
<#else>
-<input type="<#if containerId?has_content>button<#else>submit</#if>" <@renderClass className alert /><#if name?exists> name="${name}"</#if><#if title?has_content> value="${title}"</#if><#if event?has_content> ${event}="${action}"</#if><#if containerId?has_content> onclick="<#if confirmation?has_content>if (confirm('${confirmation?js_string}')) </#if>ajaxSubmitFormUpdateAreas('${containerId}', '${ajaxUrl}')"<#else><#if confirmation?has_content> onclick="return confirm('${confirmation?js_string}');"</#if></#if>/></#if>
+<#--<input type="<#if containerId?has_content>button<#else>submit</#if>" <@renderClass className alert /><#if name?exists> name="${name}"</#if><#if title?has_content> value="${title}"</#if><#if event?has_content> ${event}="${action}"</#if><#if containerId?has_content> onclick="<#if confirmation?has_content>if (confirm('${confirmation?js_string}')) </#if>ajaxSubmitFormUpdateAreas('${containerId}', '${ajaxUrl}')"<#else><#if confirmation?has_content> onclick="return confirm('${confirmation?js_string}');"</#if></#if>/></#if>-->
+<input type="<#if containerId?has_content>button<#else>submit</#if>" <@renderClass className alert /><#if name?exists> name="${name}"</#if><#if title?has_content> value="${title}"</#if><#if event?has_content> ${event}="${action}"</#if><#if containerId?has_content> onclick="<#if confirmation?has_content>if (confirm('${confirmation?js_string}')) </#if><#if returnParams?has_content>ajaxSubmitFormUpdateAreasWithReturn('${containerId}', '${ajaxUrl}', ${returnParams})"<#else>ajaxSubmitFormUpdateAreas('${containerId}', '${ajaxUrl}')"</#if><#else><#if confirmation?has_content> onclick="return confirm('${confirmation?js_string}');"</#if></#if>/></#if>
</#macro>
<#macro renderResetField className alert name title>
@@ -376,7 +385,7 @@ ${item.description}</span>
</#macro>
<#macro renderFormatItemRowOpen formName itemIndex altRowStyles evenRowStyle oddRowStyle>
- <tr <#if itemIndex?has_content><#if itemIndex%2==0><#if evenRowStyle?has_content>class="${evenRowStyle}<#if altRowStyles?has_content> ${altRowStyles}</#if>"<#elseif altRowStyles?has_content>class="${altRowStyles}"</#if><#else><#if oddRowStyle?has_content>class="${oddRowStyle}<#if altRowStyles?has_content> ${altRowStyles}</#if>"<#elseif altRowStyles?has_content>class="${altRowStyles}"</#if></#if></#if> >
+ <tr <#if itemIndex?has_content>id="${formName}_row_${itemIndex}" </#if><#if itemIndex?has_content><#if itemIndex%2==0><#if evenRowStyle?has_content>class="${evenRowStyle}<#if altRowStyles?has_content> ${altRowStyles}</#if>"<#elseif altRowStyles?has_content>class="${altRowStyles}"</#if><#else><#if oddRowStyle?has_content>class="${oddRowStyle}<#if altRowStyles?has_content> ${altRowStyles}</#if>"<#elseif altRowStyles?has_content>class="${altRowStyles}"</#if></#if></#if> >
</#macro>
<#macro renderFormatItemRowClose formName>
</tr>
Modified: ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlScreenMacroLibrary.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlScreenMacroLibrary.ftl?rev=1307601&r1=1307600&r2=1307601&view=diff
==============================================================================
--- ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlScreenMacroLibrary.ftl (original)
+++ ofbiz/branches/20120329_portletWidget/framework/widget/templates/htmlScreenMacroLibrary.ftl Fri Mar 30 20:44:26 2012
@@ -237,10 +237,17 @@ ${menuString}
</td>
</#macro>
+<#--#Bam# portletWidget -->
+<#--
<#macro renderPortalPagePortletBegin originalPortalPageId portalPageId portalPortletId portletSeqId prevPortletId="" prevPortletSeqId="" nextPortletId="" nextPortletSeqId="" columnSeqId="" prevColumnSeqId="" nextColumnSeqId="" confMode="false" delPortletHint="Remove this portlet" editAttribute="false" editAttributeHint="Edit portlet parameters">
+-->
+<#macro renderPortalPagePortletBegin originalPortalPageId portalPageId portalPortletId portletSeqId includedInPage prevPortletId="" prevPortletSeqId="" nextPortletId="" nextPortletSeqId="" columnSeqId="" prevColumnSeqId="" nextColumnSeqId="" confMode="false" delPortletHint="Remove this portlet" editAttribute="false" editAttributeHint="Edit portlet parameters">
+<#--#Eam# portletWidget -->
<#assign portletKey = portalPageId+portalPortletId+portletSeqId>
<#assign portletKeyFields = '<input name="portalPageId" value="' + portalPageId + '" type="hidden"/><input name="portalPortletId" value="' + portalPortletId + '" type="hidden"/><input name="portletSeqId" value="' + portletSeqId + '" type="hidden"/>'>
+ <#if includedInPage=="Y"><#--#Bam# portletWidget -->
<div id="PP_${portletKey}" name="portalPortlet" class="noClass" portalPageId="${portalPageId}" portalPortletId="${portalPortletId}" columnSeqId="${columnSeqId}" portletSeqId="${portletSeqId}">
+ </#if><#--#Bam# portletWidget -->
<#if confMode == "true">
<div class="portlet-config" id="PPCFG_${portletKey}">
<div class="portlet-config-title-bar">
@@ -314,8 +321,14 @@ ${menuString}
</#if>
</#macro>
+<#--#Bam# portletWidget
<#macro renderPortalPagePortletEnd confMode="false">
+-->
+<#macro renderPortalPagePortletEnd includedInPage confMode="false">
+<#--#Bam# portletWidget -->
+ <#if includedInPage=="Y"> <#--#Eam# portletWidget -->
</div>
+ </#if> <#--#Eam# portletWidget -->
<#if confMode == "true">
</div>
</#if>