Author: adrianc
Date: Tue Mar 30 15:35:28 2010 New Revision: 929173 URL: http://svn.apache.org/viewvc?rev=929173&view=rev Log: A patch from Blas Rodriguez Somoza: XHTML validation errors (framework/widget) - (https://issues.apache.org/jira/browse/OFBIZ-3623). Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlFormRenderer.java ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlMenuRenderer.java ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuItem.java ofbiz/trunk/framework/widget/templates/htmlFormMacroLibrary.ftl ofbiz/trunk/framework/widget/templates/htmlScreenMacroLibrary.ftl Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java (original) +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/MacroFormRenderer.java Tue Mar 30 15:35:28 2010 @@ -1928,9 +1928,9 @@ public class MacroFormRenderer implement if (lookupFieldFormName.indexOf('?') == -1) { autoCompleterTarget = lookupFieldFormName + "?"; } else { - autoCompleterTarget = lookupFieldFormName + "&"; + autoCompleterTarget = lookupFieldFormName + "&amp;"; } - autoCompleterTarget = autoCompleterTarget + "ajaxLookup=Y&searchValueField=" + lookupField.getModelFormField().getParameterName(context); + autoCompleterTarget = autoCompleterTarget + "ajaxLookup=Y&amp;searchValueField=" + lookupField.getModelFormField().getParameterName(context); updateAreas = FastList.newInstance(); updateAreas.add(new ModelForm.UpdateArea("change", id, autoCompleterTarget)); } @@ -2690,6 +2690,9 @@ public class MacroFormRenderer implement String queryString = UtilHttp.stripNamedParamsFromQueryString(str, paramName); String urlPath = UtilHttp.removeQueryStringFromTarget(targetService); String prepLinkText = UtilHttp.getQueryStringFromTarget(targetService); + + queryString = UtilHttp.encodeAmpersands(queryString); + if (prepLinkText == null) { prepLinkText = ""; } Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlFormRenderer.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlFormRenderer.java?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlFormRenderer.java (original) +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlFormRenderer.java Tue Mar 30 15:35:28 2010 @@ -173,16 +173,16 @@ public class HtmlFormRenderer extends Ht if (UtilValidate.isNotEmpty(modelFormField.getWidgetStyle()) || modelFormField.shouldBeRed(context)) { str.append("<span class=\""); str.append(modelFormField.getWidgetStyle()); + // add a style of red if this is a date/time field and redWhen is true + if (modelFormField.shouldBeRed(context)) { + str.append(" alert"); + } str.append('"'); if (UtilValidate.isNotEmpty(idName)) { str.append(" id=\""); str.append(idName); str.append('"'); } - // add a style of red if this is a date/time field and redWhen is true - if (modelFormField.shouldBeRed(context)) { - str.append(" alert"); - } str.append('>'); } Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlMenuRenderer.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlMenuRenderer.java?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlMenuRenderer.java (original) +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlMenuRenderer.java Tue Mar 30 15:35:28 2010 @@ -262,29 +262,34 @@ public class HtmlMenuRenderer extends Ht writer.append("<h2>").append(menuTitle).append("</h2>"); appendWhitespace(writer); } - writer.append("<ul>"); - appendWhitespace(writer); - writer.append("<li>"); - appendWhitespace(writer); - writer.append(" <ul>"); - appendWhitespace(writer); + if (modelMenu.renderedMenuItemCount(context) > 0) { + writer.append("<ul>"); + appendWhitespace(writer); + writer.append("<li>"); + appendWhitespace(writer); + writer.append(" <ul>"); + appendWhitespace(writer); + } } /* (non-Javadoc) * @see org.ofbiz.widget.menu.MenuStringRenderer#renderMenuClose(java.io.Writer, java.util.Map, org.ofbiz.widget.menu.ModelMenu) */ public void renderMenuClose(Appendable writer, Map<String, Object> context, ModelMenu modelMenu) throws IOException { + // TODO: div can't be directly inside an UL String fillStyle = modelMenu.getFillStyle(); if (UtilValidate.isNotEmpty(fillStyle)) { writer.append("<div class=\"").append(fillStyle).append("\"> </div>"); } //String menuContainerStyle = modelMenu.getMenuContainerStyle(context); - writer.append(" </ul>"); - appendWhitespace(writer); - writer.append("</li>"); - appendWhitespace(writer); - writer.append("</ul>"); - appendWhitespace(writer); + if (modelMenu.renderedMenuItemCount(context) > 0) { + writer.append(" </ul>"); + appendWhitespace(writer); + writer.append("</li>"); + appendWhitespace(writer); + writer.append("</ul>"); + appendWhitespace(writer); + } writer.append(" <br class=\"clear\"/>"); appendWhitespace(writer); writer.append("</div>"); Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java (original) +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenu.java Tue Mar 30 15:35:28 2010 @@ -323,6 +323,16 @@ public class ModelMenu extends ModelWidg //Debug.logInfo("in ModelMenu, buffer:" + buffer.toString(), module); } + public int renderedMenuItemCount(Map<String, Object> context) + { + int count = 0; + for (ModelMenuItem item : this.menuItemList) { + if (item.shouldBeRendered(context)) + count++; + } + return count; + } + public void renderSimpleMenuString(Appendable writer, Map<String, Object> context, MenuStringRenderer menuStringRenderer) throws IOException { //Iterator menuItemIter = null; //Set alreadyRendered = new TreeSet(); Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuItem.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuItem.java?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuItem.java (original) +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/menu/ModelMenuItem.java Tue Mar 30 15:35:28 2010 @@ -257,6 +257,16 @@ public class ModelMenuItem { } + public boolean shouldBeRendered(Map<String, Object> context) { + boolean passed = true; + if (this.condition != null) { + if (!this.condition.eval(context)) { + passed = false; + } + } + return passed; + } + public void renderMenuItemString(Appendable writer, Map<String, Object> context, MenuStringRenderer menuStringRenderer) throws IOException { boolean passed = true; Modified: ofbiz/trunk/framework/widget/templates/htmlFormMacroLibrary.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/templates/htmlFormMacroLibrary.ftl?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/templates/htmlFormMacroLibrary.ftl (original) +++ ofbiz/trunk/framework/widget/templates/htmlFormMacroLibrary.ftl Tue Mar 30 15:35:28 2010 @@ -330,7 +330,7 @@ ${item.description}</div> <#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/> -<option value="like"<#if defaultOption=="like"> selected</#if>>${opBeginsWith}</option><#rt/> +<option value="like"<#if defaultOption=="like"> selected="selected"</#if>>${opBeginsWith}</option><#rt/> <option value="contains"<#if defaultOption=="contains"> selected="selected"</#if>>${opContains}</option><#rt/> <option value="empty"<#rt/><#if defaultOption=="empty"> selected="selected"</#if>>${opIsEmpty}</option><#rt/> <option value="notEqual"<#if defaultOption=="notEqual"> selected="selected"</#if>>${opNotEqual}</option><#rt/> @@ -449,7 +449,7 @@ ${item.description}</div> </#list> </#if> );"> -<#if ajaxEnabled?has_content && ajaxEnabled><span id="${id}_indicator" style="display: none" class="indicator"><img /></span></#if> +<#if ajaxEnabled?has_content && ajaxEnabled><span id="${id}_indicator" style="display: none" class="indicator"><img src="" alt=""/></span></#if> </a></li><#rt> <#if disabled?has_content && disabled><li><a id="${id}_clear" style="background:none;margin-left:-6px;margin-right:15px;" class="clearField" href="javascript:void();" onclick="javascript:document.${formName}.${name}.value='';<#if descriptionFieldName?has_content>document.${formName}.${descriptionFieldName}.value='';</#if>">${clearText}</a></li></#if> </ul></div> Modified: ofbiz/trunk/framework/widget/templates/htmlScreenMacroLibrary.ftl URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/templates/htmlScreenMacroLibrary.ftl?rev=929173&r1=929172&r2=929173&view=diff ============================================================================== --- ofbiz/trunk/framework/widget/templates/htmlScreenMacroLibrary.ftl (original) +++ ofbiz/trunk/framework/widget/templates/htmlScreenMacroLibrary.ftl Tue Mar 30 15:35:28 2010 @@ -140,7 +140,7 @@ collapsed"><a <#if javaScriptEnabled>onc <#else> expanded"><a <#if javaScriptEnabled>onclick="javascript:toggleScreenlet(this, '${collapsibleAreaId}', '${saveCollapsed?string}', '${expandToolTip}', '${collapseToolTip}');"<#else>href="${fullUrlString}"</#if><#if expandToolTip?has_content> title="${expandToolTip}"</#if> </#if> -> </a></li> +> </a></li> </#if> <#if !collapsed> ${menuString} |
Free forum by Nabble | Edit this page |