This is an automated email from the ASF dual-hosted git repository. jleroux pushed a commit to branch release18.12 in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git
The following commit(s) were added to refs/heads/release18.12 by this push: new 16481383c3 Fixed: pagination, jump to page with AJAX enabled is broken (OFBIZ-12817 - #637) 16481383c3 is described below commit 16481383c3e37f41a308245ff5d5b7289fe691ac Author: Jacques Le Roux <jacques.le.r...@les7arts.com> AuthorDate: Fri Feb 16 11:54:23 2024 +0100 Fixed: pagination, jump to page with AJAX enabled is broken (OFBIZ-12817 - #637) Last conflict handled by hand was not well done :/ This is OK (and tested) --- .../widget/renderer/macro/MacroFormRenderer.java | 65 ++++++++++++++++++++-- 1 file changed, 59 insertions(+), 6 deletions(-) diff --git a/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java b/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java index 6f7ce8026a..c7fc63f442 100644 --- a/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java +++ b/framework/widget/src/main/java/org/apache/ofbiz/widget/renderer/macro/MacroFormRenderer.java @@ -23,12 +23,9 @@ import java.io.Reader; import java.io.StringReader; import java.io.StringWriter; import java.io.UnsupportedEncodingException; -import java.net.URI; -import java.rmi.server.UID; -import java.net.URLDecoder; import java.net.URLEncoder; +import java.rmi.server.UID; import java.sql.Timestamp; -import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; @@ -203,6 +200,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderDisplayField(Appendable writer, Map<String, Object> context, DisplayField displayField) throws IOException { ModelFormField modelFormField = displayField.getModelFormField(); String idName = modelFormField.getCurrentContainerId(context); @@ -322,6 +320,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderHyperlinkField(Appendable writer, Map<String, Object> context, HyperlinkField hyperlinkField) throws IOException { this.request.setAttribute("image", hyperlinkField.getImageLocation(context)); ModelFormField modelFormField = hyperlinkField.getModelFormField(); @@ -342,10 +341,12 @@ public final class MacroFormRenderer implements FormStringRenderer { this.request.removeAttribute("descriptionSize"); } + @Override public void renderMenuField(Appendable writer, Map<String, Object> context, MenuField menuField) throws IOException { menuField.renderFieldString(writer, context, null); } + @Override public void renderTextField(Appendable writer, Map<String, Object> context, TextField textField) throws IOException { ModelFormField modelFormField = textField.getModelFormField(); String name = modelFormField.getParameterName(context); @@ -445,6 +446,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderTextareaField(Appendable writer, Map<String, Object> context, TextareaField textareaField) throws IOException { ModelFormField modelFormField = textareaField.getModelFormField(); String name = modelFormField.getParameterName(context); @@ -782,6 +784,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderDropDownField(Appendable writer, Map<String, Object> context, DropDownField dropDownField) throws IOException { ModelFormField modelFormField = dropDownField.getModelFormField(); ModelForm modelForm = modelFormField.getModelForm(); @@ -1026,6 +1029,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderCheckField(Appendable writer, Map<String, Object> context, CheckField checkField) throws IOException { ModelFormField modelFormField = checkField.getModelFormField(); String currentValue = modelFormField.getEntry(context); @@ -1093,6 +1097,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderRadioField(Appendable writer, Map<String, Object> context, RadioField radioField) throws IOException { ModelFormField modelFormField = radioField.getModelFormField(); List<ModelFormField.OptionValue> allOptionValues = radioField.getAllOptionValues(context, WidgetWorker.getDelegator(context)); @@ -1154,6 +1159,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderSubmitField(Appendable writer, Map<String, Object> context, SubmitField submitField) throws IOException { ModelFormField modelFormField = submitField.getModelFormField(); ModelForm modelForm = modelFormField.getModelForm(); @@ -1231,6 +1237,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderResetField(Appendable writer, Map<String, Object> context, ResetField resetField) throws IOException { ModelFormField modelFormField = resetField.getModelFormField(); String name = modelFormField.getParameterName(context); @@ -1258,12 +1265,14 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderHiddenField(Appendable writer, Map<String, Object> context, HiddenField hiddenField) throws IOException { ModelFormField modelFormField = hiddenField.getModelFormField(); String value = hiddenField.getValue(context); this.renderHiddenField(writer, context, modelFormField, value); } + @Override 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); @@ -1292,10 +1301,12 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderIgnoredField(Appendable writer, Map<String, Object> context, IgnoredField ignoredField) { // do nothing, it's an ignored field; could add a comment or something if we wanted to } + @Override public void renderFieldTitle(Appendable writer, Map<String, Object> context, ModelFormField modelFormField) throws IOException { String titleText = modelFormField.getTitle(context); String style = modelFormField.getTitleStyle(); @@ -1382,10 +1393,12 @@ public final class MacroFormRenderer implements FormStringRenderer { } } + @Override public void renderSingleFormFieldTitle(Appendable writer, Map<String, Object> context, ModelFormField modelFormField) throws IOException { renderFieldTitle(writer, context, modelFormField); } + @Override public void renderFormOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { this.widgetCommentsEnabled = ModelWidget.widgetBoundaryCommentsEnabled(context); if (modelForm instanceof ModelSingleForm) { @@ -1455,6 +1468,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormClose />"); @@ -1466,6 +1480,7 @@ public final class MacroFormRenderer implements FormStringRenderer { } } + @Override public void renderMultiFormClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { //FIXME copy from HtmlFormRenderer.java (except for the closing form tag itself, that is now converted) Iterator<ModelFormField> submitFields = modelForm.getMultiSubmitFields().iterator(); @@ -1501,6 +1516,7 @@ public final class MacroFormRenderer implements FormStringRenderer { } } + @Override public void renderFormatListWrapperOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { Map<String, Object> inputFields = UtilGenerics.checkMap(context.get("requestParameters")); Map<String, Object> queryStringMap = UtilGenerics.toMap(context.get("queryStringMap")); @@ -1558,6 +1574,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderEmptyFormDataMessage(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderEmptyFormDataMessage"); @@ -1567,6 +1584,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatListWrapperClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatListWrapperClose"); @@ -1584,6 +1602,7 @@ public final class MacroFormRenderer implements FormStringRenderer { } } + @Override public void renderFormatHeaderOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatHeaderOpen "); @@ -1591,6 +1610,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatHeaderClose"); @@ -1598,6 +1618,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { String headerStyle = FlexibleStringExpander.expandString(modelForm.getHeaderRowStyle(), context); StringWriter sr = new StringWriter(); @@ -1608,12 +1629,14 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatHeaderRowClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowCellOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm, ModelFormField modelFormField, int positionSpan) throws IOException { String areaStyle = modelFormField.getTitleAreaStyle(); StringWriter sr = new StringWriter(); @@ -1626,12 +1649,14 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowCellClose(Appendable writer, Map<String, Object> context, ModelForm modelForm, ModelFormField modelFormField) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatHeaderRowCellClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowFormCellOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { String areaStyle = modelForm.getFormTitleAreaStyle(); StringWriter sr = new StringWriter(); @@ -1642,12 +1667,14 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowFormCellClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatHeaderRowFormCellClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatHeaderRowFormCellTitleSeparator(Appendable writer, Map<String, Object> context, ModelForm modelForm, ModelFormField modelFormField, boolean isLast) throws IOException { String titleStyle = modelFormField.getTitleStyle(); StringWriter sr = new StringWriter(); @@ -1660,6 +1687,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatItemRowOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { Integer itemIndex = (Integer) context.get("itemIndex"); String altRowStyles = ""; @@ -1689,6 +1717,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatItemRowClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatItemRowClose "); @@ -1698,6 +1727,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatItemRowCellOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm, ModelFormField modelFormField, int positionSpan) throws IOException { String areaStyle = modelFormField.getWidgetAreaStyle(); StringWriter sr = new StringWriter(); @@ -1712,6 +1742,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatItemRowCellClose(Appendable writer, Map<String, Object> context, ModelForm modelForm, ModelFormField modelFormField) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatItemRowCellClose"); @@ -1721,6 +1752,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatItemRowFormCellOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { String areaStyle = modelForm.getFormTitleAreaStyle(); StringWriter sr = new StringWriter(); @@ -1731,12 +1763,14 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatItemRowFormCellClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatItemRowFormCellClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatSingleWrapperOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { String style = FlexibleStringExpander.expandString(modelForm.getDefaultTableStyle(), context); StringWriter sr = new StringWriter(); @@ -1749,6 +1783,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatSingleWrapperClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatSingleWrapperClose"); @@ -1758,18 +1793,21 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatFieldRowOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatFieldRowOpen />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatFieldRowClose(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatFieldRowClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatFieldRowTitleCellOpen(Appendable writer, Map<String, Object> context, ModelFormField modelFormField) throws IOException { String style = modelFormField.getTitleAreaStyle(); StringWriter sr = new StringWriter(); @@ -1780,15 +1818,18 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatFieldRowTitleCellClose(Appendable writer, Map<String, Object> context, ModelFormField modelFormField) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatFieldRowTitleCellClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatFieldRowSpacerCell(Appendable writer, Map<String, Object> context, ModelFormField modelFormField) throws IOException { } + @Override public void renderFormatFieldRowWidgetCellOpen(Appendable writer, Map<String, Object> context, ModelFormField modelFormField, int positions, int positionSpan, Integer nextPositionInRow) throws IOException { String areaStyle = modelFormField.getWidgetAreaStyle(); StringWriter sr = new StringWriter(); @@ -1801,18 +1842,21 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFormatFieldRowWidgetCellClose(Appendable writer, Map<String, Object> context, ModelFormField modelFormField, int positions, int positionSpan, Integer nextPositionInRow) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatFieldRowWidgetCellClose />"); executeMacro(writer, sr.toString()); } + @Override public void renderFormatEmptySpace(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { StringWriter sr = new StringWriter(); sr.append("<@renderFormatEmptySpace />"); executeMacro(writer, sr.toString()); } + @Override public void renderTextFindField(Appendable writer, Map<String, Object> context, TextFindField textFindField) throws IOException { ModelFormField modelFormField = textFindField.getModelFormField(); String defaultOption = textFindField.getDefaultOption(context); @@ -1905,6 +1949,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderRangeFindField(Appendable writer, Map<String, Object> context, RangeFindField rangeFindField) throws IOException { ModelFormField modelFormField = rangeFindField.getModelFormField(); Locale locale = (Locale) context.get("locale"); @@ -1991,6 +2036,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderDateFindField(Appendable writer, Map<String, Object> context, DateFindField dateFindField) throws IOException { ModelFormField modelFormField = dateFindField.getModelFormField(); Locale locale = (Locale) context.get("locale"); @@ -2139,6 +2185,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderLookupField(Appendable writer, Map<String, Object> context, LookupField lookupField) throws IOException { ModelFormField modelFormField = lookupField.getModelFormField(); String lookupFieldFormName = lookupField.getFormName(context); @@ -2452,8 +2499,7 @@ public final class MacroFormRenderer implements FormStringRenderer { // Page select dropdown if (listSize > 0 && this.javaScriptEnabled) { if (ajaxEnabled) { - ajaxSelectUrl = MacroCommonRenderer.createAjaxParamsFromUpdateAreas(updateAreas, null, modelForm, - prepLinkText + "' + (this.value - 1) + '", context); + ajaxSelectUrl = createAjaxParamsFromUpdateAreas(updateAreas, prepLinkText + "' + (this.value - 1) + '", context); } else { linkText = prepLinkText; if (linkText.startsWith("/")) { @@ -2563,6 +2609,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFileField(Appendable writer, Map<String, Object> context, FileField textField) throws IOException { ModelFormField modelFormField = textField.getModelFormField(); String className = ""; @@ -2612,6 +2659,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderPasswordField(Appendable writer, Map<String, Object> context, PasswordField passwordField) throws IOException { ModelFormField modelFormField = passwordField.getModelFormField(); String className = ""; @@ -2682,6 +2730,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderImageField(Appendable writer, Map<String, Object> context, ImageField imageField) throws IOException { ModelFormField modelFormField = imageField.getModelFormField(); String value = modelFormField.getEntry(context, imageField.getValue(context)); @@ -2726,6 +2775,7 @@ public final class MacroFormRenderer implements FormStringRenderer { this.appendTooltip(writer, context, modelFormField); } + @Override public void renderFieldGroupOpen(Appendable writer, Map<String, Object> context, ModelForm.FieldGroup fieldGroup) throws IOException { String style = fieldGroup.getStyle(); String id = fieldGroup.getId(); @@ -2769,6 +2819,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderFieldGroupClose(Appendable writer, Map<String, Object> context, ModelForm.FieldGroup fieldGroup) throws IOException { String style = fieldGroup.getStyle(); String id = fieldGroup.getId(); @@ -2792,6 +2843,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderBanner(Appendable writer, Map<String, Object> context, ModelForm.Banner banner) throws IOException { String style = banner.getStyle(context); String leftStyle = banner.getLeftTextStyle(context); @@ -3351,6 +3403,7 @@ public final class MacroFormRenderer implements FormStringRenderer { executeMacro(writer, sr.toString()); } + @Override public void renderContainerFindField(Appendable writer, Map<String, Object> context, ContainerField containerField) throws IOException { String id = containerField.getModelFormField().getIdName(); String className = UtilFormatOut.checkNull(containerField.getModelFormField().getWidgetStyle());