You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by nm...@apache.org on 2015/05/29 15:34:50 UTC

svn commit: r1682460 - in /ofbiz/branches/release13.07/framework/widget: src/org/ofbiz/widget/form/MacroFormRenderer.java src/org/ofbiz/widget/form/ModelFormField.java templates/htmlFormMacroLibrary.ftl

Author: nmalin
Date: Fri May 29 13:34:49 2015
New Revision: 1682460

URL: http://svn.apache.org/r1682460
Log:
Correct the persistance value and option lost on date-find field after the search, this correction come from OFBiz-5074 by Taher Alkhateeb (backported on 13.07 through OFBIZ-6430) and OFBIZ-6417 renderDateFindField doesn't reselect operation by Christian Carlow

Modified:
    ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java
    ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
    ofbiz/branches/release13.07/framework/widget/templates/htmlFormMacroLibrary.ftl

Modified: ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java?rev=1682460&r1=1682459&r2=1682460&view=diff
==============================================================================
--- ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java (original)
+++ ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java Fri May 29 13:34:49 2015
@@ -1896,18 +1896,34 @@ public class MacroFormRenderer implement
         String formName = "";
         String defaultDateTimeString = "";
         StringBuilder imgSrc = new StringBuilder();
+
         // add calendar pop-up button and seed data IF this is not a "time" type date-find
         if (!"time".equals(dateFindField.getType())) {
             formName = modelFormField.getModelForm().getCurrentFormName(context);
             defaultDateTimeString = UtilHttp.encodeBlanks(modelFormField.getEntry(context, dateFindField.getDefaultDateTimeString(context)));
             this.appendContentUrl(imgSrc, "/images/cal.gif");
         }
-        String defaultOptionFrom = dateFindField.getDefaultOptionFrom();
-        String defaultOptionThru = dateFindField.getDefaultOptionThru();
+        String defaultOptionFrom = dateFindField.getDefaultOptionFrom(context);
+        String defaultOptionThru = dateFindField.getDefaultOptionThru(context);
         String value2 = modelFormField.getEntry(context);
         if (value2 == null) {
             value2 = "";
         }
+
+        //check if values are present on parameters (from a previous search)
+        if (context.containsKey("parameters")) {
+            Map<String, Object> parameters = UtilGenerics.checkMap(context.get("parameters"));
+            if (name != null) {
+                String nameValue0 = name.concat("_fld0_value");
+                if (parameters.containsKey(nameValue0)) {
+                    value = (String)parameters.get(nameValue0);   
+                }
+                String nameValue1 = name.concat("_fld1_value");
+                if (parameters.containsKey(nameValue1)) {
+                    value2 = (String)parameters.get(nameValue1);  
+                }  
+            }
+        }
         String titleStyle = "";
         if (UtilValidate.isNotEmpty(modelFormField.getTitleStyle())) {
             titleStyle = modelFormField.getTitleStyle();
@@ -1924,6 +1940,8 @@ public class MacroFormRenderer implement
         sr.append(localizedInputTitle);
         sr.append("\" value=\"");
         sr.append(value);
+        sr.append("\" value2=\"");
+        sr.append(value2);
         sr.append("\" size=\"");
         sr.append(Integer.toString(size));
         sr.append("\" maxlength=\"");

Modified: ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java?rev=1682460&r1=1682459&r2=1682460&view=diff
==============================================================================
--- ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java (original)
+++ ofbiz/branches/release13.07/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java Fri May 29 13:34:49 2015
@@ -3528,9 +3528,35 @@ public class ModelFormField {
             return this.defaultOptionFrom;
         }
 
+        public String getDefaultOptionFrom(Map<String, Object> context) {
+            String defaultOption = getDefaultOptionFrom();
+
+            Map<String, Object> parameters = UtilGenerics.checkMap(context.get("parameters"), String.class, Object.class);
+            if (UtilValidate.isNotEmpty(parameters)) {
+                String fieldName = this.getModelFormField().getName();
+                if (parameters.containsKey(fieldName.concat("_fld0_value"))){
+                    defaultOption = (String)parameters.get(fieldName.concat("_fld0_op"));
+                }
+            }
+            return defaultOption;
+        }
+
         public String getDefaultOptionThru() {
             return this.defaultOptionThru;
         }
+
+        public String getDefaultOptionThru(Map<String, Object> context) {
+            String defaultOption = getDefaultOptionThru();
+
+            Map<String, Object> parameters = UtilGenerics.checkMap(context.get("parameters"), String.class, Object.class);
+            if (UtilValidate.isNotEmpty(parameters)) {
+                String fieldName = this.getModelFormField().getName();
+                if( parameters.containsKey(fieldName.concat("_fld1_value"))) {
+                    defaultOption = (String)parameters.get(fieldName.concat("_fld1_op"));
+                }
+            }
+            return defaultOption;
+        }
     }
 
     public static class RangeFindField extends TextField {

Modified: ofbiz/branches/release13.07/framework/widget/templates/htmlFormMacroLibrary.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/widget/templates/htmlFormMacroLibrary.ftl?rev=1682460&r1=1682459&r2=1682460&view=diff
==============================================================================
--- ofbiz/branches/release13.07/framework/widget/templates/htmlFormMacroLibrary.ftl (original)
+++ ofbiz/branches/release13.07/framework/widget/templates/htmlFormMacroLibrary.ftl Fri May 29 13:34:49 2015
@@ -479,7 +479,7 @@ under the License.
   </#if>
 </#macro>
 
-<#macro renderDateFindField className alert name localizedInputTitle value size maxlength dateType formName defaultDateTimeString imgSrc localizedIconTitle titleStyle defaultOptionFrom defaultOptionThru opEquals opSameDay opGreaterThanFromDayStart opGreaterThan opGreaterThan opLessThan opUpToDay opUpThruDay opIsEmpty>
+<#macro renderDateFindField className alert name localizedInputTitle value value2 size maxlength dateType formName defaultDateTimeString imgSrc localizedIconTitle titleStyle defaultOptionFrom defaultOptionThru opEquals opSameDay opGreaterThanFromDayStart opGreaterThan opGreaterThan opLessThan opUpToDay opUpThruDay opIsEmpty>
   <span class="view-calendar">
     <input id="${name?html}_fld0_value" type="text" <@renderClass className alert /><#if name?has_content> name="${name?html}_fld0_value"</#if><#if localizedInputTitle?has_content> title="${localizedInputTitle}"</#if><#if value?has_content> value="${value}"</#if><#if size?has_content> size="${size}"</#if><#if maxlength?has_content> maxlength="${maxlength}"</#if>/><#rt/>
     <#if dateType != "time">