Hi Gil,
Great work so far. However, I seem to be facing a bug. I list the
error below that shows in almost every form:
When calling macro "renderHiddenField", required parameter
"conditionGroup" (parameter #2) was not specified. ---- Tip: If the
omission was deliberate, you may consider making the parameter
optional in the macro by specifying a default value for it, like
<#macro macroName paramName=defaultExpr>) ---- ---- FTL stack trace
("~" means nesting-related): - Failed at: #macro renderHiddenField
name conditi... [in template
"component://common-theme/template/macro/HtmlFormMacroLibrary.ftl" in
macro "renderHiddenField" at line 305, column 1] - Reached through:
@renderHiddenField name="realestateCi... [in template
"-222c6da2:161d256a91a:-7356" at line 1, column 1]
On Mon, Feb 26, 2018 at 12:57 PM, <[email protected]> wrote:
> Author: pgil
> Date: Mon Feb 26 09:57:36 2018
> New Revision: 1825350
>
> URL: http://svn.apache.org/viewvc?rev=1825350&view=rev
> Log:
> Implemented: Add the ability in performFind service to set OR search criteria
> (OFBIZ-10195)
>
> This improvement add a way to specify a condition-group attribute on search
> fields, for performFind service usage.
> The same group conditions are gathered with AND operator, and each group is
> added with a OR
> The resulting condition is added to the other with AND operator.
> Thanks Taher for your reviews and ideas
>
> Modified:
>
> ofbiz/ofbiz-framework/trunk/framework/common/src/main/java/org/apache/ofbiz/common/FindServices.java
> ofbiz/ofbiz-framework/trunk/framework/widget/dtd/widget-form.xsd
>
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormField.java
>
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormFieldBuilder.java
>
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java
>
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/CsvFormMacroLibrary.ftl
>
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/FoFormMacroLibrary.ftl
>
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/HtmlFormMacroLibrary.ftl
>
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/TextFormMacroLibrary.ftl
>
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
>
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XmlFormMacroLibrary.ftl
>
> Modified:
> ofbiz/ofbiz-framework/trunk/framework/common/src/main/java/org/apache/ofbiz/common/FindServices.java
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/common/src/main/java/org/apache/ofbiz/common/FindServices.java?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/framework/common/src/main/java/org/apache/ofbiz/common/FindServices.java
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/framework/common/src/main/java/org/apache/ofbiz/common/FindServices.java
> Mon Feb 26 09:57:36 2018
> @@ -218,11 +218,19 @@ public class FindServices {
> Set<String> processed = new LinkedHashSet<>();
> Set<String> keys = new LinkedHashSet<>();
> Map<String, ModelField> fieldMap = new LinkedHashMap<>();
> + /**
> + * When inputFields contains several xxxx_grp, yyyy_grp ... values,
> + * Corresponding conditions will grouped by an {@link
> EntityOperator.AND} then all added to final
> + * condition grouped by an {@link EntityOperator.OR}
> + * That will allow union of search criteria, instead of default
> intersection.
> + */
> + Map<String, List<EntityCondition>> savedGroups = new LinkedHashMap();
> for (ModelField modelField : fieldList) {
> fieldMap.put(modelField.getName(), modelField);
> }
> List<EntityCondition> result = new LinkedList<>();
> for (Map.Entry<String, ? extends Object> entry :
> parameters.entrySet()) {
> + String currentGroup = null;
> String parameterName = entry.getKey();
> if (processed.contains(parameterName)) {
> continue;
> @@ -237,7 +245,15 @@ public class FindServices {
> } else if (parameterName.endsWith("_value")) {
> fieldName = parameterName.substring(0,
> parameterName.length() - 6);
> }
> - String key = fieldName.concat("_ic");
> +
> + String key = fieldName.concat("_grp");
> + if (parameters.containsKey(key)) {
> + if (parameters.containsKey(key)) {
> + keys.add(key);
> + }
> + currentGroup = (String) parameters.get(key);
> + }
> + key = fieldName.concat("_ic");
> if (parameters.containsKey(key)) {
> keys.add(key);
> ignoreCase = "Y".equals(parameters.get(key));
> @@ -272,11 +288,28 @@ public class FindServices {
> if (ObjectType.isEmpty(fieldValue) &&
> !"empty".equals(operation)) {
> continue;
> }
> - result.add(createSingleCondition(modelField, operation,
> fieldValue, ignoreCase, delegator, context));
> + if (UtilValidate.isNotEmpty(currentGroup)){
> + List<EntityCondition> groupedConditions = new LinkedList<>();
> + if(savedGroups.get(currentGroup) != null) {
> + groupedConditions.addAll(savedGroups.get(currentGroup));
> + }
> + groupedConditions.add(createSingleCondition(modelField,
> operation, fieldValue, ignoreCase, delegator, context));
> + savedGroups.put(currentGroup, groupedConditions);
> + } else {
> + result.add(createSingleCondition(modelField, operation,
> fieldValue, ignoreCase, delegator, context));
> + }
> +
> for (String mapKey : keys) {
> queryStringMap.put(mapKey, parameters.get(mapKey));
> }
> }
> + //Add OR-grouped conditions
> + List<EntityCondition> orConditions = new LinkedList<>();
> + for (String groupedConditions : savedGroups.keySet()) {
> +
> orConditions.add(EntityCondition.makeCondition(savedGroups.get(groupedConditions)));
> + }
> + if (orConditions.size() > 0)
> result.add(EntityCondition.makeCondition(orConditions, EntityOperator.OR));
> +
> return result;
> }
>
>
> Modified: ofbiz/ofbiz-framework/trunk/framework/widget/dtd/widget-form.xsd
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/widget/dtd/widget-form.xsd?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/framework/widget/dtd/widget-form.xsd
> (original)
> +++ ofbiz/ofbiz-framework/trunk/framework/widget/dtd/widget-form.xsd Mon Feb
> 26 09:57:36 2018
> @@ -925,6 +925,16 @@ under the License.
> </xs:documentation>
> </xs:annotation>
> </xs:attribute>
> + <xs:attribute type="xs:string" name="condition-group">
> + <xs:annotation>
> + <xs:documentation>
> + The condition-group regroup search criterias
> together.
> + Each group member will be gathered with AND operator
> + Every defined groups will be joined each other with
> OR operator
> + Any ungrouped condition will be added with AND
> operator
> + </xs:documentation>
> + </xs:annotation>
> + </xs:attribute>
> </xs:complexType>
> </xs:element>
>
>
> Modified:
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormField.java
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormField.java?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormField.java
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormField.java
> Mon Feb 26 09:57:36 2018
> @@ -144,6 +144,7 @@ public class ModelFormField {
> private final String widgetStyle;
> private final String parentFormName;
> private final String tabindex;
> + private final String conditionGroup;
>
> private ModelFormField(ModelFormFieldBuilder builder) {
> this.action = builder.getAction();
> @@ -197,6 +198,7 @@ public class ModelFormField {
> this.widgetStyle = builder.getWidgetStyle();
> this.parentFormName = builder.getParentFormName();
> this.tabindex = builder.getTabindex();
> + this.conditionGroup = builder.getConditionGroup();
> }
>
> public FlexibleStringExpander getAction() {
> @@ -448,6 +450,10 @@ public class ModelFormField {
> return tabindex;
> }
>
> + public String getConditionGroup() {
> + return conditionGroup;
> + }
> +
> public Map<String, ? extends Object> getMap(Map<String, ? extends
> Object> context) {
> if (UtilValidate.isEmpty(this.mapAcsr)) {
> return this.modelForm.getDefaultMap(context);
>
> Modified:
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormFieldBuilder.java
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormFieldBuilder.java?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormFieldBuilder.java
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelFormFieldBuilder.java
> Mon Feb 26 09:57:36 2018
> @@ -111,6 +111,7 @@ public class ModelFormFieldBuilder {
> private String widgetStyle = "";
> private String parentFormName = "";
> private String tabindex = "";
> + private String conditionGroup = "";
>
> public ModelFormFieldBuilder() {
> }
> @@ -162,6 +163,7 @@ public class ModelFormFieldBuilder {
> this.widgetStyle = fieldElement.getAttribute("widget-style");
> this.parentFormName = fieldElement.getAttribute("form-name");
> this.tabindex = fieldElement.getAttribute("tabindex");
> + this.conditionGroup = fieldElement.getAttribute("condition-group");
> Element childElement = null;
> List<? extends Element> subElements =
> UtilXml.childElementList(fieldElement);
> for (Element subElement : subElements) {
> @@ -277,6 +279,7 @@ public class ModelFormFieldBuilder {
> this.widgetStyle = modelFormField.getWidgetStyle();
> this.parentFormName = modelFormField.getParentFormName();
> this.tabindex = modelFormField.getTabindex();
> + this.conditionGroup = modelFormField.getConditionGroup();
> }
>
> public ModelFormFieldBuilder(ModelFormFieldBuilder builder) {
> @@ -318,6 +321,7 @@ public class ModelFormFieldBuilder {
> this.widgetStyle = builder.getWidgetStyle();
> this.parentFormName = builder.getParentFormName();
> this.tabindex = builder.getTabindex();
> + this.conditionGroup = builder.getConditionGroup();
> }
>
> public ModelFormFieldBuilder addOnChangeUpdateArea(UpdateArea
> onChangeUpdateArea) {
> @@ -494,6 +498,10 @@ public class ModelFormFieldBuilder {
> return tabindex;
> }
>
> + public String getConditionGroup() {
> + return conditionGroup;
> + }
> +
> private boolean induceFieldInfo(ModelForm modelForm, String
> defaultFieldType, ModelReader entityModelReader, DispatchContext
> dispatchContext) {
> if (induceFieldInfoFromEntityField(defaultFieldType,
> entityModelReader)) {
> return true;
> @@ -810,6 +818,9 @@ public class ModelFormFieldBuilder {
> if (UtilValidate.isNotEmpty(builder.getTabindex())) {
> this.tabindex = builder.getTabindex();
> }
> + if (UtilValidate.isNotEmpty(builder.getConditionGroup())) {
> + this.conditionGroup = builder.getConditionGroup();
> + }
> this.encodeOutput = builder.getEncodeOutput();
> this.position = builder.getPosition();
> this.requiredField = builder.getRequiredField();
> @@ -1000,4 +1011,8 @@ public class ModelFormFieldBuilder {
> this.tabindex = tabindex;
> return this;
> }
> + public ModelFormFieldBuilder setConditionGroup(String conditionGroup) {
> + this.conditionGroup = conditionGroup;
> + return this;
> + }
> }
>
> Modified:
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java
> Mon Feb 26 09:57:36 2018
> @@ -774,6 +774,7 @@ public final class MacroFormRenderer imp
> ModelFormField modelFormField = dropDownField.getModelFormField();
> ModelForm modelForm = modelFormField.getModelForm();
> String currentValue = modelFormField.getEntry(context);
> + String conditionGroup = modelFormField.getConditionGroup();
> List<ModelFormField.OptionValue> allOptionValues =
> dropDownField.getAllOptionValues(context, WidgetWorker.getDelegator(context));
> ModelFormField.AutoComplete autoComplete =
> dropDownField.getAutoComplete();
> String event = modelFormField.getEvent();
> @@ -1000,6 +1001,8 @@ public final class MacroFormRenderer imp
> sr.append(ignoreCase);
> sr.append("\" fullSearch=\"");
> sr.append(fullSearch);
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" tabindex=\"");
> sr.append(tabindex);
> sr.append("\" />");
> @@ -1014,6 +1017,7 @@ public final class MacroFormRenderer imp
> public void renderCheckField(Appendable writer, Map<String, Object>
> context, CheckField checkField) throws IOException {
> ModelFormField modelFormField = checkField.getModelFormField();
> String currentValue = modelFormField.getEntry(context);
> + String conditionGroup = modelFormField.getConditionGroup();
> Boolean allChecked = checkField.isAllChecked(context);
> String id = modelFormField.getCurrentContainerId(context);
> String className = "";
> @@ -1051,6 +1055,8 @@ public final class MacroFormRenderer imp
> sr.append(alert);
> sr.append("\" id=\"");
> sr.append(id);
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" allChecked=");
> sr.append((allChecked != null ? Boolean.toString(allChecked) :
> "\"\""));
> sr.append(" currentValue=\"");
> @@ -1076,6 +1082,7 @@ public final class MacroFormRenderer imp
> ModelFormField modelFormField = radioField.getModelFormField();
> List<ModelFormField.OptionValue> allOptionValues =
> radioField.getAllOptionValues(context, WidgetWorker.getDelegator(context));
> String currentValue = modelFormField.getEntry(context);
> + String conditionGroup = modelFormField.getConditionGroup();
> String className = "";
> String alert = "false";
> String name = modelFormField.getParameterName(context);
> @@ -1123,6 +1130,8 @@ public final class MacroFormRenderer imp
> if (action != null) {
> sr.append(action);
> }
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" tabindex=\"");
> sr.append(tabindex);
> sr.append("\" />");
> @@ -1243,12 +1252,15 @@ public final class MacroFormRenderer imp
> public void renderHiddenField(Appendable writer, Map<String, Object>
> context, ModelFormField modelFormField, String value) throws IOException {
> String name = modelFormField.getParameterName(context);
> String action = modelFormField.getAction(context);
> + String conditionGroup = modelFormField.getConditionGroup();
> String event = modelFormField.getEvent();
> String id = modelFormField.getCurrentContainerId(context);
> StringWriter sr = new StringWriter();
> sr.append("<@renderHiddenField ");
> sr.append(" name=\"");
> sr.append(name);
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" value=\"");
> sr.append(value);
> sr.append("\" id=\"");
> @@ -1788,6 +1800,7 @@ public final class MacroFormRenderer imp
> public void renderTextFindField(Appendable writer, Map<String, Object>
> context, TextFindField textFindField) throws IOException {
> ModelFormField modelFormField = textFindField.getModelFormField();
> String defaultOption = textFindField.getDefaultOption(context);
> + String conditionGroup = modelFormField.getConditionGroup();
> String className = "";
> String alert = "false";
> String opEquals = "";
> @@ -1869,6 +1882,8 @@ public final class MacroFormRenderer imp
> sr.append(ignoreCase);
> sr.append("\" tabindex=\"");
> sr.append(tabindex);
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" />");
> executeMacro(writer, sr.toString());
> this.appendTooltip(writer, context, modelFormField);
> @@ -1882,6 +1897,7 @@ public final class MacroFormRenderer imp
> String opGreaterThanEquals =
> UtilProperties.getMessage("conditionalUiLabels", "greater_than_equals",
> locale);
> String opLessThan = UtilProperties.getMessage("conditionalUiLabels",
> "less_than", locale);
> String opLessThanEquals =
> UtilProperties.getMessage("conditionalUiLabels", "less_than_equals", locale);
> + String conditionGroup = modelFormField.getConditionGroup();
> String className = "";
> String alert = "false";
> if (UtilValidate.isNotEmpty(modelFormField.getWidgetStyle())) {
> @@ -1950,6 +1966,8 @@ public final class MacroFormRenderer imp
> sr.append(value2);
> sr.append("\" defaultOptionThru=\"");
> sr.append(defaultOptionThru);
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" tabindex=\"");
> sr.append(tabindex);
> sr.append("\" />");
> @@ -1968,6 +1986,7 @@ public final class MacroFormRenderer imp
> String opUpToDay = UtilProperties.getMessage("conditionalUiLabels",
> "up_to_day", locale);
> String opUpThruDay =
> UtilProperties.getMessage("conditionalUiLabels", "up_thru_day", locale);
> String opIsEmpty = UtilProperties.getMessage("conditionalUiLabels",
> "is_empty", locale);
> + String conditionGroup = modelFormField.getConditionGroup();
> Map<String, String> uiLabelMap =
> UtilGenerics.checkMap(context.get("uiLabelMap"));
> if (uiLabelMap == null) {
> Debug.logWarning("Could not find uiLabelMap in context", module);
> @@ -2066,6 +2085,8 @@ public final class MacroFormRenderer imp
> sr.append(defaultDateTimeString);
> sr.append("\" imgSrc=\"");
> sr.append(imgSrc.toString());
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" localizedIconTitle=\"");
> sr.append(localizedIconTitle);
> sr.append("\" titleStyle=\"");
> @@ -2102,6 +2123,7 @@ public final class MacroFormRenderer imp
> public void renderLookupField(Appendable writer, Map<String, Object>
> context, LookupField lookupField) throws IOException {
> ModelFormField modelFormField = lookupField.getModelFormField();
> String lookupFieldFormName = lookupField.getFormName(context);
> + String conditionGroup = modelFormField.getConditionGroup();
> String className = "";
> String alert = "false";
> if (UtilValidate.isNotEmpty(modelFormField.getWidgetStyle())) {
> @@ -2275,6 +2297,8 @@ public final class MacroFormRenderer imp
> sr.append(Boolean.toString(isInitiallyCollapsed));
> sr.append("\" lastViewName=\"");
> sr.append(lastViewName);
> + sr.append("\" conditionGroup=\"");
> + sr.append(conditionGroup);
> sr.append("\" tabindex=\"");
> sr.append(tabindex);
> sr.append("\" delegatorName=\"");
>
> Modified:
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/CsvFormMacroLibrary.ftl
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/CsvFormMacroLibrary.ftl?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/CsvFormMacroLibrary.ftl
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/CsvFormMacroLibrary.ftl
> Mon Feb 26 09:57:36 2018
> @@ -30,7 +30,7 @@ under the License.
>
> <#macro renderDateTimeField name className alert title value size maxlength
> id dateType shortDateInput timeDropdownParamName defaultDateTimeString
> localizedIconTitle timeDropdown timeHourName classString hour1 hour2
> timeMinutesName minutes isTwelveHour ampmName amSelected pmSelected
> compositeType formName mask="" event="" action="" step="" timeValues=""
> tabindex="" ><@renderField value /></#macro>
>
> -<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch tabindex>
> +<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch
> conditionGroup tabindex>
> <#if currentValue?has_content && firstInList?has_content>
> <@renderField explicitDescription />
> <#else>
> @@ -41,13 +41,13 @@ under the License.
> </#macro>
>
> <#macro renderTooltip tooltip tooltipStyle></#macro>
> -<#macro renderCheckField items className alert id allChecked currentValue
> name event action tabindex></#macro>
> -<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action tabindex></#macro>
> +<#macro renderCheckField items className alert id allChecked currentValue
> name event action conditionGroup tabindex></#macro>
> +<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action conditionGroup tabindex></#macro>
>
> <#macro renderSubmitField buttonType className alert formName title name
> event action imgSrc confirmation containerId ajaxUrl tabindex></#macro>
> <#macro renderResetField className alert name title></#macro>
>
> -<#macro renderHiddenField name value id event action></#macro>
> +<#macro renderHiddenField name conditionGroup value id event action></#macro>
> <#macro renderIgnoredField></#macro>
>
> <#macro renderFieldTitle style title id="" fieldHelpText=""
> for=""><@renderField title />,</#macro>
> @@ -97,15 +97,15 @@ under the License.
>
> <#macro renderFormatEmptySpace> </#macro>
>
> -<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase tabindex><@renderField value
> /></#macro>
> +<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase conditionGroup
> tabindex><@renderField value /></#macro>
>
> -<#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 tabindex><@renderField value /></#macro>
> +<#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 conditionGroup tabindex><@renderField value
> /></#macro>
>
> -<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> tabindex>
> +<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> conditionGroup tabindex>
> <@renderField value />
> </#macro>
>
> -<#macro renderLookupField name formName fieldFormName className=""
> alert="false" value="" size="" maxlength="" id="" event="" action=""
> readonly=false autocomplete="" descriptionFieldName="" targetParameterIter=""
> imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled presentation="layer"
> width="" height="" position="" fadeBackground="true" clearText=""
> showDescription="" initiallyCollapsed="" lastViewName="main" tabindex=""
> delegatorName="default">></#macro>
> +<#macro renderLookupField name formName fieldFormName conditionGroup
> className="" alert="false" value="" size="" maxlength="" id="" event=""
> action="" readonly=false autocomplete="" descriptionFieldName=""
> targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
> presentation="layer" width="" height="" position="" fadeBackground="true"
> clearText="" showDescription="" initiallyCollapsed="" lastViewName="main"
> tabindex="" delegatorName="default">></#macro>
> <#macro renderNextPrev paginateStyle paginateFirstStyle viewIndex highIndex
> listSize viewSize ajaxEnabled javaScriptEnabled ajaxFirstUrl firstUrl
> paginateFirstLabel paginatePreviousStyle ajaxPreviousUrl previousUrl
> paginatePreviousLabel pageLabel ajaxSelectUrl selectUrl ajaxSelectSizeUrl
> selectSizeUrl commonDisplaying paginateNextStyle ajaxNextUrl nextUrl
> paginateNextLabel paginateLastStyle ajaxLastUrl lastUrl paginateLastLabel
> paginateViewSizeLabel></#macro>
> <#macro renderFileField className alert name value size maxlength
> autocomplete tabindex><@renderField value /></#macro>
> <#macro renderPasswordField className alert name value size maxlength id
> autocomplete tabindex></#macro>
>
> Modified:
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/FoFormMacroLibrary.ftl
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/FoFormMacroLibrary.ftl?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/FoFormMacroLibrary.ftl
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/FoFormMacroLibrary.ftl
> Mon Feb 26 09:57:36 2018
> @@ -57,7 +57,7 @@ under the License.
>
> <#macro renderDateTimeField name className alert title value size maxlength
> step timeValues id event action dateType shortDateInput timeDropdownParamName
> defaultDateTimeString localizedIconTitle timeDropdown timeHourName
> classString hour1 hour2 timeMinutesName minutes isTwelveHour ampmName
> amSelected pmSelected compositeType formName mask="" event="" action=""
> step="" timeValues="" tabindex=""><@makeBlock className value /></#macro>
>
> -<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size explicitDescription allowEmpty options
> fieldName otherFieldName otherValue otherFieldSize dDFCurrent ajaxEnabled
> noCurrentSelectedKey ajaxOptions frequency minChars choices autoSelect
> partialSearch partialChars ignoreCase fullSearch tabindex firstInList=""
> currentValue="">
> +<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size explicitDescription allowEmpty options
> fieldName otherFieldName otherValue otherFieldSize dDFCurrent ajaxEnabled
> noCurrentSelectedKey ajaxOptions frequency minChars choices autoSelect
> partialSearch partialChars ignorease fullSearch conditionGroup tabindex
> firstInList="" currentValue="">
> <#if currentValue?has_content && firstInList?has_content>
> <@makeBlock "" explicitDescription />
> <#else>
> @@ -67,13 +67,13 @@ under the License.
> </#if>
> </#macro>
>
> -<#macro renderCheckField items className alert id allChecked currentValue
> name event action tabindex><@makeBlock "" "" /></#macro>
> -<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action tabindex><@makeBlock "" "" /></#macro>
> +<#macro renderCheckField items className alert id allChecked currentValue
> name event action conditionGroup tabindex><@makeBlock "" "" /></#macro>
> +<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action conditionGroup tabindex><@makeBlock ""
> "" /></#macro>
>
> <#macro renderSubmitField buttonType className alert formName title name
> event action imgSrc confirmation containerId ajaxUrl tabindex><@makeBlock ""
> "" /></#macro>
> <#macro renderResetField className alert name title><@makeBlock "" ""
> /></#macro>
>
> -<#macro renderHiddenField name value id event action><!--hidden--></#macro>
> +<#macro renderHiddenField name conditionGroup value id event
> action><!--hidden--></#macro>
> <#macro renderIgnoredField><!--ignore--></#macro>
>
> <#macro renderFieldTitle style title id fieldHelpText="" for=""><fo:block
> <@getFoStyle style/>>${title?default("")?replace(" ", "
> ")}</fo:block></#macro>
> @@ -121,16 +121,16 @@ under the License.
>
> <#macro renderFormatEmptySpace> <@makeBlock "" " " /><!--space--></#macro>
>
> -<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase tabindex><@makeBlock className
> value/></#macro>
> +<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase conditionGroup
> tabindex><@makeBlock className value/></#macro>
>
> -<#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 tabindex>
> +<#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 conditionGroup tabindex>
> <@makeBlock className value />
> </#macro>
> -<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> tabindex>
> +<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> conditionGroup tabindex>
> <@makeBlock className value />
> </#macro>
>
> -<#macro renderLookupField name formName fieldFormName className=""
> alert="false" value="" size="" maxlength="" id="" event="" action=""
> readonly=false autocomplete="" descriptionFieldName="" targetParameterIter=""
> imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled presentation="layer"
> width="" height="" position="" fadeBackground="true" clearText=""
> showDescription="" initiallyCollapsed="" lastViewName="main" tabindex=""
> delegatorName="default"></#macro>
> +<#macro renderLookupField name formName fieldFormName conditionGroup
> className="" alert="false" value="" size="" maxlength="" id="" event=""
> action="" readonly=false autocomplete="" descriptionFieldName=""
> targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
> presentation="layer" width="" height="" position="" fadeBackground="true"
> clearText="" showDescription="" initiallyCollapsed="" lastViewName="main"
> tabindex="" delegatorName="default"></#macro>
> <#macro renderNextPrev paginateStyle paginateFirstStyle viewIndex highIndex
> listSize viewSize ajaxEnabled javaScriptEnabled ajaxFirstUrl firstUrl
> paginateFirstLabel paginatePreviousStyle ajaxPreviousUrl previousUrl
> paginatePreviousLabel pageLabel ajaxSelectUrl selectUrl ajaxSelectSizeUrl
> selectSizeUrl commonDisplaying paginateNextStyle ajaxNextUrl nextUrl
> paginateNextLabel paginateLastStyle ajaxLastUrl lastUrl paginateLastLabel
> paginateViewSizeLabel></#macro>
> <#macro renderFileField className alert name value size maxlength
> autocomplete tabindex><@makeBlock className value /></#macro>
> <#macro renderPasswordField className alert name value size maxlength id
> autocomplete tabindex><@makeBlock className "" /></#macro>
>
> Modified:
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/HtmlFormMacroLibrary.ftl
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/HtmlFormMacroLibrary.ftl?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/HtmlFormMacroLibrary.ftl
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/HtmlFormMacroLibrary.ftl
> Mon Feb 26 09:57:36 2018
> @@ -207,7 +207,10 @@ under the License.
> </span>
> </#macro>
>
> -<#macro renderDropDownField name className alert id formName otherFieldName
> action explicitDescription options fieldName otherFieldName otherValue
> otherFieldSize ajaxEnabled ajaxOptions frequency minChars choices autoSelect
> partialSearch partialChars ignoreCase fullSearch tabindex="" multiple=""
> event="" size="" firstInList="" currentValue="" allowEmpty="" dDFCurrent=""
> noCurrentSelectedKey="">
> +<#macro renderDropDownField name className alert id formName otherFieldName
> action explicitDescription options fieldName otherFieldName otherValue
> otherFieldSize ajaxEnabled ajaxOptions frequency minChars choices autoSelect
> partialSearch partialChars ignoreCase fullSearch conditionGroup tabindex=""
> multiple="" event="" size="" firstInList="" currentValue="" allowEmpty=""
> dDFCurrent="" noCurrentSelectedKey="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <span class="ui-widget">
> <select name="${name?default("")}<#rt/>" <@renderClass className alert
> /><#if id?has_content> id="${id}"</#if><#if multiple?has_content>
> multiple="multiple"</#if><#if otherFieldSize gt 0>
> onchange="process_choice(this,document.${formName}.${otherFieldName})"</#if><#if
> event?has_content> ${event}="${action}"</#if><#if size?has_content>
> size="${size}"</#if><#if tabindex?has_content>
> tabindex="${tabindex}"</#if><#rt/>>
> <#if firstInList?has_content && currentValue?has_content &&
> !multiple?has_content>
> @@ -249,7 +252,10 @@ under the License.
> </#if>
> </#macro>
>
> -<#macro renderCheckField items className alert id name action allChecked=""
> currentValue="" event="" tabindex="">
> +<#macro renderCheckField items className alert id name action conditionGroup
> allChecked="" currentValue="" event="" tabindex="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <#list items as item>
> <span <@renderClass className alert />><#rt/>
> <input type="checkbox"<#if (item_index == 0)>
> id="${id}"</#if><#rt/><#if tabindex?has_content>
> tabindex="${tabindex}"</#if><#rt/>
> @@ -261,7 +267,10 @@ under the License.
> </#list>
> </#macro>
>
> -<#macro renderRadioField items className alert name action currentValue=""
> noCurrentSelectedKey="" event="" tabindex="">
> +<#macro renderRadioField items className alert name action conditionGroup
> currentValue="" noCurrentSelectedKey="" event="" tabindex="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <#list items as item>
> <span <@renderClass className alert />><#rt/>
> <input type="radio"<#if currentValue?has_content><#if
> currentValue==item.key> checked="checked"</#if><#if tabindex?has_content>
> tabindex="${tabindex}"</#if><#rt/>
> @@ -293,7 +302,10 @@ under the License.
> <input type="reset" <@renderClass className alert /> name="${name}"<#if
> title?has_content> value="${title}"</#if>/>
> </#macro>
>
> -<#macro renderHiddenField name value="" id="" event="" action="">
> +<#macro renderHiddenField name conditionGroup value="" id="" event=""
> action="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <input type="hidden" name="${name}"<#if value?has_content>
> value="${value}"</#if><#if id?has_content> id="${id}"</#if><#if
> event?has_content && action?has_content> ${event}="${action}"</#if>/>
> </#macro>
>
> @@ -449,7 +461,10 @@ under the License.
>
> <#macro renderFormatEmptySpace> </#macro>
>
> -<#macro renderTextFindField name defaultOption opBeginsWith opContains
> opIsEmpty opNotEqual className alert hideIgnoreCase ignCase ignoreCase
> value="" opEquals="" size="" maxlength="" autocomplete="" titleStyle=""
> tabindex="">
> +<#macro renderTextFindField name defaultOption opBeginsWith opContains
> opIsEmpty opNotEqual className alert hideIgnoreCase ignCase ignoreCase
> conditionGroup value="" opEquals="" size="" maxlength="" autocomplete=""
> titleStyle="" tabindex="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <#if opEquals?has_content>
> <select <#if name?has_content>name="${name}_op"</#if>
> class="selectBox"><#rt/>
> <option value="equals"<#if defaultOption=="equals">
> selected="selected"</#if>>${opEquals}</option><#rt/>
> @@ -472,7 +487,10 @@ under the License.
> </#if>
> </#macro>
>
> -<#macro renderDateFindField className alert name dateType formName value
> defaultDateTimeString imgSrc localizedIconTitle defaultOptionFrom
> defaultOptionThru opEquals opSameDay opGreaterThanFromDayStart opGreaterThan
> opGreaterThan opLessThan opUpToDay opUpThruDay opIsEmpty
> localizedInputTitle="" value2="" size="" maxlength="" titleStyle=""
> tabindex="">
> +<#macro renderDateFindField className alert name dateType formName value
> defaultDateTimeString imgSrc localizedIconTitle defaultOptionFrom
> defaultOptionThru opEquals opSameDay opGreaterThanFromDayStart opGreaterThan
> opGreaterThan opLessThan opUpToDay opUpThruDay opIsEmpty conditionGroup
> localizedInputTitle="" value2="" size="" maxlength="" titleStyle=""
> tabindex="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <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>/><#if tabindex?has_content>
> tabindex="${tabindex}"</#if><#rt/>
> <#if dateType != "time">
> @@ -550,7 +568,10 @@ under the License.
> </span>
> </#macro>
>
> -<#macro renderRangeFindField className alert value defaultOptionFrom
> opEquals opGreaterThan opGreaterThanEquals opLessThan opLessThanEquals
> defaultOptionThru name="" size="" maxlength="" autocomplete="" titleStyle=""
> value2="" tabindex="">
> +<#macro renderRangeFindField className alert value defaultOptionFrom
> opEquals opGreaterThan opGreaterThanEquals opLessThan opLessThanEquals
> defaultOptionThru conditionGroup name="" size="" maxlength="" autocomplete=""
> titleStyle="" value2="" tabindex="">
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <input type="text" <@renderClass className alert /> <#if
> name?has_content>name="${name}_fld0_value"</#if><#if value?has_content>
> value="${value}"</#if><#if size?has_content> size="${size}"</#if><#if
> maxlength?has_content> maxlength="${maxlength}"</#if><#if
> autocomplete?has_content> autocomplete="off"</#if>/><#if
> tabindex?has_content> tabindex="${tabindex}"</#if><#rt/>
> <#if titleStyle?has_content>
> <span class="${titleStyle}" ><#rt/>
> @@ -612,7 +633,7 @@ Parameter: lastViewName, String, optiona
> Parameter: tabindex, String, optional - HTML tabindex number.
> Parameter: delegatorName, String, optional - name of the delegator in
> context.
> -->
> -<#macro renderLookupField name formName fieldFormName className=""
> alert="false" value="" size="" maxlength="" id="" event="" action=""
> readonly=false autocomplete="" descriptionFieldName="" targetParameterIter=""
> imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled presentation="layer"
> width=modelTheme.getLookupWidth() height=modelTheme.getLookupHeight()
> position=modelTheme.getLookupPosition() fadeBackground="true" clearText=""
> showDescription="" initiallyCollapsed="" lastViewName="main" tabindex=""
> delegatorName="default">
> +<#macro renderLookupField name formName fieldFormName conditionGroup
> className="" alert="false" value="" size="" maxlength="" id="" event=""
> action="" readonly=false autocomplete="" descriptionFieldName=""
> targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
> presentation="layer" width=modelTheme.getLookupWidth()
> height=modelTheme.getLookupHeight() position=modelTheme.getLookupPosition()
> fadeBackground="true" clearText="" showDescription="" initiallyCollapsed=""
> lastViewName="main" tabindex="" delegatorName="default">
> <#if
> Static["org.apache.ofbiz.widget.model.ModelWidget"].widgetBoundaryCommentsEnabled(context)><#--
> context is always null here, but this is handled in
> widgetBoundaryCommentsEnabled -->
> <!-- @renderLookupField -->
> </#if>
> @@ -629,6 +650,9 @@ Parameter: delegatorName, String, option
> <#if ajaxEnabled?has_content && ajaxEnabled && (presentation?has_content
> && "window" == presentation)>
> <#local ajaxUrl = ajaxUrl + "&_LAST_VIEW_NAME_=" + lastViewName />
> </#if>
> + <#if conditionGroup?has_content>
> + <input type="hidden" name="${name}_grp" value="${conditionGroup}"/>
> + </#if>
> <span class="field-lookup">
> <#if size?has_content && size=="0">
> <input type="hidden" <#if name?has_content> name="${name}"</#if><#if
> tabindex?has_content> tabindex="${tabindex}"</#if><#rt/>
>
> Modified:
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/TextFormMacroLibrary.ftl
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/TextFormMacroLibrary.ftl?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/TextFormMacroLibrary.ftl
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/TextFormMacroLibrary.ftl
> Mon Feb 26 09:57:36 2018
> @@ -30,7 +30,7 @@ under the License.
>
> <#macro renderDateTimeField name className alert title value size maxlength
> id dateType shortDateInput timeDropdownParamName defaultDateTimeString
> localizedIconTitle timeDropdown timeHourName classString hour1 hour2
> timeMinutesName minutes isTwelveHour ampmName amSelected pmSelected
> compositeType formName mask="" event="" action="" step="" timeValues=""
> tabindex="" ><@renderField value /></#macro>
>
> -<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch tabindex>
> +<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch
> conditionGroup tabindex>
> <#if currentValue?has_content && firstInList?has_content>
> <@renderField explicitDescription />
> <#else>
> @@ -41,13 +41,13 @@ under the License.
> </#macro>
>
> <#macro renderTooltip tooltip tooltipStyle></#macro>
> -<#macro renderCheckField items className alert id allChecked currentValue
> name event action tabindex></#macro>
> -<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action tabindex></#macro>
> +<#macro renderCheckField items className alert id allChecked currentValue
> name event action conditionGroup tabindex></#macro>
> +<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action conditionGroup tabindex></#macro>
>
> <#macro renderSubmitField buttonType className alert formName title name
> event action imgSrc confirmation containerId ajaxUrl tabindex></#macro>
> <#macro renderResetField className alert name title></#macro>
>
> -<#macro renderHiddenField name value id event action></#macro>
> +<#macro renderHiddenField name conditionGroup value id event action></#macro>
> <#macro renderIgnoredField></#macro>
>
> <#macro renderFieldTitle style title id fieldHelpText=""
> for=""><@renderField title /></#macro>
> @@ -97,15 +97,15 @@ under the License.
>
> <#macro renderFormatEmptySpace> </#macro>
>
> -<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase tabindex><@renderField value
> /></#macro>
> +<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase conditionGroup
> tabindex><@renderField value /></#macro>
>
> -<#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 tabindex><@renderField value /></#macro>
> +<#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 conditionGroup tabindex><@renderField value
> /></#macro>
>
> -<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> tabindex>
> +<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> conditionGroup tabindex>
> <@renderField value />
> </#macro>
>
> -<#macro renderLookupField name formName fieldFormName className=""
> alert="false" value="" size="" maxlength="" id="" event="" action=""
> readonly=false autocomplete="" descriptionFieldName="" targetParameterIter=""
> imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled presentation="layer"
> width="" height="" position="" fadeBackground="true" clearText=""
> showDescription="" initiallyCollapsed="" lastViewName="main" tabindex=""
> delegatorName="default">><@renderField value /></#macro>
> +<#macro renderLookupField name formName fieldFormName conditionGroup
> className="" alert="false" value="" size="" maxlength="" id="" event=""
> action="" readonly=false autocomplete="" descriptionFieldName=""
> targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
> presentation="layer" width="" height="" position="" fadeBackground="true"
> clearText="" showDescription="" initiallyCollapsed="" lastViewName="main"
> tabindex="" delegatorName="default">><@renderField value /></#macro>
> <#macro renderNextPrev paginateStyle paginateFirstStyle viewIndex highIndex
> listSize viewSize ajaxEnabled javaScriptEnabled ajaxFirstUrl firstUrl
> paginateFirstLabel paginatePreviousStyle ajaxPreviousUrl previousUrl
> paginatePreviousLabel pageLabel ajaxSelectUrl selectUrl ajaxSelectSizeUrl
> selectSizeUrl commonDisplaying paginateNextStyle ajaxNextUrl nextUrl
> paginateNextLabel paginateLastStyle ajaxLastUrl lastUrl paginateLastLabel
> paginateViewSizeLabel></#macro>
> <#macro renderFileField className alert name value size maxlength
> autocomplete tabindex><@renderField value /></#macro>
> <#macro renderPasswordField className alert name value size maxlength id
> autocomplete tabindex></#macro>
>
> Modified:
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
> Mon Feb 26 09:57:36 2018
> @@ -40,17 +40,17 @@ under the License.
> <#else><@renderItemField value "dtf" className/></#if>
> </#macro>
>
> -<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch
> tabindex><@renderItemField explicitDescription "txf" className/></#macro>
> +<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch
> conditionGroup tabindex><@renderItemField explicitDescription "txf"
> className/></#macro>
>
> -<#macro renderCheckField items className alert id allChecked currentValue
> name event action tabindex><@renderItemField currentValue "txf"
> className/></#macro>
> +<#macro renderCheckField items className alert id allChecked currentValue
> name event action conditionGroup tabindex><@renderItemField currentValue
> "txf" className/></#macro>
>
> -<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action tabindex><@renderItemField
> currentValue "txf" className/></#macro>
> +<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action conditionGroup
> tabindex><@renderItemField currentValue "txf" className/></#macro>
>
> <#macro renderSubmitField buttonType className alert formName title name
> event action imgSrc confirmation containerId ajaxUrl tabindex></#macro>
>
> <#macro renderResetField className alert name title></#macro>
>
> -<#macro renderHiddenField name value id event action></#macro>
> +<#macro renderHiddenField name conditionGroup value id event action></#macro>
>
> <#macro renderIgnoredField></#macro>
>
> @@ -112,13 +112,13 @@ under the License.
>
> <#macro renderFormatEmptySpace><@renderItemField "" "txf"/></#macro>
>
> -<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase tabindex></#macro>
> +<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase conditionGroup tabindex></#macro>
>
> -<#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 tabindex></#macro>
> +<#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 conditionGroup tabindex></#macro>
>
> -<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> tabindex></#macro>
> +<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> conditionGroup tabindex></#macro>
>
> -<#macro renderLookupField name formName fieldFormName className=""
> alert="false" value="" size="" maxlength="" id="" event="" action=""
> readonly=false autocomplete="" descriptionFieldName="" targetParameterIter=""
> imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled presentation="layer"
> width="" height="" position="" fadeBackground="true" clearText=""
> showDescription="" initiallyCollapsed="" lastViewName="main" tabindex=""
> delegatorName="default">><@renderItemField value "txf" className/></#macro>
> +<#macro renderLookupField name formName fieldFormName conditionGroup
> className="" alert="false" value="" size="" maxlength="" id="" event=""
> action="" readonly=false autocomplete="" descriptionFieldName=""
> targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
> presentation="layer" width="" height="" position="" fadeBackground="true"
> clearText="" showDescription="" initiallyCollapsed="" lastViewName="main"
> tabindex="" delegatorName="default">><@renderItemField value "txf"
> className/></#macro>
>
> <#macro renderNextPrev paginateStyle paginateFirstStyle viewIndex highIndex
> listSize viewSize ajaxEnabled javaScriptEnabled ajaxFirstUrl firstUrl
> paginateFirstLabel paginatePreviousStyle ajaxPreviousUrl previousUrl
> paginatePreviousLabel pageLabel ajaxSelectUrl selectUrl ajaxSelectSizeUrl
> selectSizeUrl commonDisplaying paginateNextStyle ajaxNextUrl nextUrl
> paginateNextLabel paginateLastStyle ajaxLastUrl lastUrl paginateLastLabel
> paginateViewSizeLabel></#macro>
>
>
> Modified:
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XmlFormMacroLibrary.ftl
> URL:
> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XmlFormMacroLibrary.ftl?rev=1825350&r1=1825349&r2=1825350&view=diff
> ==============================================================================
> ---
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XmlFormMacroLibrary.ftl
> (original)
> +++
> ofbiz/ofbiz-framework/trunk/themes/common-theme/template/macro/XmlFormMacroLibrary.ftl
> Mon Feb 26 09:57:36 2018
> @@ -46,16 +46,16 @@ under the License.
>
> <#macro renderDateTimeField name className alert title value size maxlength
> id dateType shortDateInput timeDropdownParamName defaultDateTimeString
> localizedIconTitle timeDropdown timeHourName classString hour1 hour2
> timeMinutesName minutes isTwelveHour ampmName amSelected pmSelected
> compositeType formName mask="" event="" action="" step="" timeValues=""
> tabindex="" ><@renderField value/></#macro>
>
> -<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch tabindex>
> +<#macro renderDropDownField name className alert id multiple formName
> otherFieldName event action size firstInList currentValue explicitDescription
> allowEmpty options fieldName otherFieldName otherValue otherFieldSize
> dDFCurrent ajaxEnabled noCurrentSelectedKey ajaxOptions frequency minChars
> choices autoSelect partialSearch partialChars ignoreCase fullSearch
> conditionGroup tabindex>
> </#macro>
>
> -<#macro renderCheckField items className alert id allChecked currentValue
> name event action tabindex></#macro>
> -<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action tabindex></#macro>
> +<#macro renderCheckField items className alert id allChecked currentValue
> name event action conditionGroup tabindex></#macro>
> +<#macro renderRadioField items className alert currentValue
> noCurrentSelectedKey name event action conditionGroup tabindex></#macro>
>
> <#macro renderSubmitField buttonType className alert formName title name
> event action imgSrc confirmation containerId ajaxUrl tabindex></#macro>
> <#macro renderResetField className alert name title></#macro>
>
> -<#macro renderHiddenField name value id event action></#macro>
> +<#macro renderHiddenField name conditionGroup value id event action></#macro>
> <#macro renderIgnoredField></#macro>
>
> <#macro renderFieldTitle style title id fieldHelpText="" for=""></#macro>
> @@ -92,12 +92,12 @@ under the License.
>
> <#macro renderTextFindField name value defaultOption opEquals opBeginsWith
> opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
> titleStyle hideIgnoreCase ignCase ignoreCase tabindex><@renderField
> value/></#macro>
>
> -<#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 tabindex></#macro>
> +<#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 conditionGroup tabindex></#macro>
>
> -<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> tabindex>
> +<#macro renderRangeFindField className alert name value size maxlength
> autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
> opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
> conditionGroup tabindex>
> </#macro>
>
> -<#macro renderLookupField name formName fieldFormName className=""
> alert="false" value="" size="" maxlength="" id="" event="" action=""
> readonly=false autocomplete="" descriptionFieldName="" targetParameterIter=""
> imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled presentation="layer"
> width="" height="" position="" fadeBackground="true" clearText=""
> showDescription="" initiallyCollapsed="" lastViewName="main" tabindex=""
> delegatorName="default">></#macro>
> +<#macro renderLookupField name formName fieldFormName conditionGroup
> className="" alert="false" value="" size="" maxlength="" id="" event=""
> action="" readonly=false autocomplete="" descriptionFieldName=""
> targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
> presentation="layer" width="" height="" position="" fadeBackground="true"
> clearText="" showDescription="" initiallyCollapsed="" lastViewName="main"
> tabindex="" delegatorName="default">></#macro>
> <#macro renderNextPrev paginateStyle paginateFirstStyle viewIndex highIndex
> listSize viewSize ajaxEnabled javaScriptEnabled ajaxFirstUrl firstUrl
> paginateFirstLabel paginatePreviousStyle ajaxPreviousUrl previousUrl
> paginatePreviousLabel pageLabel ajaxSelectUrl selectUrl ajaxSelectSizeUrl
> selectSizeUrl commonDisplaying paginateNextStyle ajaxNextUrl nextUrl
> paginateNextLabel paginateLastStyle ajaxLastUrl lastUrl paginateLastLabel
> paginateViewSizeLabel></#macro>
> <#macro renderFileField className alert name value size maxlength
> autocomplete tabindex></#macro>
> <#macro renderPasswordField className alert name value size maxlength id
> autocomplete tabindex></#macro>
>
>