this change makes the description of the hyperlink appear twice.
have a look at: https://localhost3:8443/content/control/EditContent?contentId=ARTICLE_WRAP where the 'goto dataresource" button show twice" On Sun, 2009-01-11 at 16:35 +0000, [hidden email] wrote: > Author: jonesde > Date: Sun Jan 11 08:35:46 2009 > New Revision: 733486 > > URL: http://svn.apache.org/viewvc?rev=733486&view=rev > Log: > A few enhancements, including some fixes and enhancements for the loopkup field type to support the sub-hyperlink which was already in the xsd, the asterisk for required fields, and the on event stuff for the ajax auto-complete and other such things; also changed all fields to have a default id with formName_fieldName so that it doesn't always have to be explicitly declared but also won't conflict form multiform screens > > Modified: > ofbiz/trunk/framework/widget/dtd/widget-form.xsd > ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java > ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlFormRenderer.java > > Modified: ofbiz/trunk/framework/widget/dtd/widget-form.xsd > URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/dtd/widget-form.xsd?rev=733486&r1=733485&r2=733486&view=diff > ============================================================================== > --- ofbiz/trunk/framework/widget/dtd/widget-form.xsd (original) > +++ ofbiz/trunk/framework/widget/dtd/widget-form.xsd Sun Jan 11 08:35:46 2009 > @@ -1089,9 +1089,9 @@ > </xs:restriction> > </xs:simpleType> > </xs:attribute> > - <xs:attribute type="xs:double" name="frequency" default="0.4"/> > - <xs:attribute type="xs:positiveInteger" name="min-chars" default="1"/> > - <xs:attribute type="xs:positiveInteger" name="choices" default="10"/> > + <xs:attribute name="frequency" type="xs:double" default="0.4"/> > + <xs:attribute name="min-chars" type="xs:positiveInteger" default="1"/> > + <xs:attribute name="choices" type="xs:positiveInteger" default="10"/> > <xs:attribute name="partial-search" default="true"> > <xs:simpleType> > <xs:restriction base="xs:token"> > @@ -1100,7 +1100,7 @@ > </xs:restriction> > </xs:simpleType> > </xs:attribute> > - <xs:attribute type="xs:positiveInteger" name="partial-chars" default="2"/> > + <xs:attribute name="partial-chars" type="xs:positiveInteger" default="1"/> > <xs:attribute name="ignore-case" default="true"> > <xs:simpleType> > <xs:restriction base="xs:token"> > @@ -1109,7 +1109,7 @@ > </xs:restriction> > </xs:simpleType> > </xs:attribute> > - <xs:attribute name="full-search" default="false"> > + <xs:attribute name="full-search" default="true"> > <xs:simpleType> > <xs:restriction base="xs:token"> > <xs:enumeration value="true"/> > > Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java > URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java?rev=733486&r1=733485&r2=733486&view=diff > ============================================================================== > --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java (original) > +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java Sun Jan 11 08:35:46 2009 > @@ -1076,7 +1076,11 @@ > } > > public String getIdName() { > - return idName; > + if (UtilValidate.isNotEmpty(idName)) { > + return idName; > + } else { > + return this.modelForm.getName() + "_" + this.getFieldName(); > + } > } > > public String getHeaderLink() { > @@ -3257,12 +3261,18 @@ > protected FlexibleStringExpander formName; > protected String descriptionFieldName; > protected String targetParameter; > + protected SubHyperlink subHyperlink; > > public LookupField(Element element, ModelFormField modelFormField) { > super(element, modelFormField); > this.formName = FlexibleStringExpander.getInstance(element.getAttribute("target-form-name")); > this.descriptionFieldName = element.getAttribute("description-field-name"); > this.targetParameter = element.getAttribute("target-parameter"); > + > + Element subHyperlinkElement = UtilXml.firstChildElement(element, "sub-hyperlink"); > + if (subHyperlinkElement != null) { > + this.subHyperlink = new SubHyperlink(subHyperlinkElement); > + } > } > > public LookupField(int fieldSource, ModelFormField modelFormField) { > @@ -3299,6 +3309,10 @@ > public void setDescriptionFieldName(String str) { > this.descriptionFieldName = str; > } > + > + public SubHyperlink getSubHyperlink() { > + return this.subHyperlink; > + } > } > > public static class FileField extends TextField { > > 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=733486&r1=733485&r2=733486&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 Sun Jan 11 08:35:46 2009 > @@ -711,7 +711,7 @@ > ModelForm modelForm = modelFormField.getModelForm(); > ModelFormField.AutoComplete autoComplete = dropDownField.getAutoComplete(); > boolean ajaxEnabled = autoComplete != null && this.javaScriptEnabled; > - List allOptionValues = dropDownField.getAllOptionValues(context, modelForm.getDelegator(context)); > + List<ModelFormField.OptionValue> allOptionValues = dropDownField.getAllOptionValues(context, modelForm.getDelegator(context)); > > String event = modelFormField.getEvent(); > String action = modelFormField.getAction(context); > @@ -767,7 +767,7 @@ > > if (UtilValidate.isNotEmpty(currentValue)) { > writer.append(" value=\""); > - String explicitDescription = dropDownField.getCurrentDescription(context); > + //String explicitDescription = dropDownField.getCurrentDescription(context); > writer.append(currentValue); > writer.append('"'); > } > @@ -778,20 +778,22 @@ > writer.append("<script language=\"JavaScript\" type=\"text/javascript\">"); > appendWhitespace(writer); > writer.append("var data = {"); > - Iterator optionValueIter = allOptionValues.iterator(); > int count = 0; > - while (optionValueIter.hasNext()) { > + for (ModelFormField.OptionValue optionValue: allOptionValues) { > count++; > - ModelFormField.OptionValue optionValue = (ModelFormField.OptionValue) optionValueIter.next(); > - writer.append(""+optionValue.getKey()+": "); > - writer.append(" '"+optionValue.getDescription()+"'"); > + writer.append("" + optionValue.getKey() + ": "); > + writer.append(" '" + optionValue.getDescription() + "'"); > if (count != allOptionValues.size()) { > writer.append(", "); > } > } > writer.append("};"); > appendWhitespace(writer); > - writer.append("ajaxAutoCompleteDropDown('"+textFieldIdName+"', '"+idName+"', data, {autoSelect: "+autoComplete.getAutoSelect()+", frequency: "+autoComplete.getFrequency()+", minChars: "+autoComplete.getMinChars()+", choices: "+autoComplete.getChoices()+", partialSearch: "+autoComplete.getPartialSearch()+", partialChars: "+autoComplete.getPartialChars()+", ignoreCase: "+autoComplete.getIgnoreCase()+", fullSearch: "+autoComplete.getFullSearch()+"});"); > + writer.append("ajaxAutoCompleteDropDown('" + textFieldIdName + "', '" + idName + "', data, {autoSelect: " + > + autoComplete.getAutoSelect() + ", frequency: " + autoComplete.getFrequency() + ", minChars: " + autoComplete.getMinChars() + > + ", choices: " + autoComplete.getChoices() + ", partialSearch: " + autoComplete.getPartialSearch() + > + ", partialChars: " + autoComplete.getPartialChars() + ", ignoreCase: " + autoComplete.getIgnoreCase() + > + ", fullSearch: " + autoComplete.getFullSearch() + "});"); > appendWhitespace(writer); > writer.append("</script>"); > } else { > @@ -2178,14 +2180,39 @@ > writer.append('"'); > } > > - if (!lookupField.getClientAutocompleteField()) { > + String idName = modelFormField.getIdName(); > + if (UtilValidate.isNotEmpty(idName)) { > + writer.append(" id=\""); > + writer.append(idName); > + writer.append('"'); > + } > + > + List<ModelForm.UpdateArea> updateAreas = modelFormField.getOnChangeUpdateAreas(); > + boolean ajaxEnabled = updateAreas != null && this.javaScriptEnabled; > + if (!lookupField.getClientAutocompleteField() || ajaxEnabled) { > writer.append(" autocomplete=\"off\""); > } > > writer.append("/>"); > + > + this.addAsterisks(writer, context, modelFormField); > + > + this.makeHyperlinkString(writer, lookupField.getSubHyperlink(), context); > + > + this.appendTooltip(writer, context, modelFormField); > + > + if (ajaxEnabled) { > + appendWhitespace(writer); > + writer.append("<script language=\"JavaScript\" type=\"text/javascript\">"); > + appendWhitespace(writer); > + writer.append("ajaxAutoCompleter('" + createAjaxParamsFromUpdateAreas(updateAreas, null, context) + "');"); > + appendWhitespace(writer); > + writer.append("</script>"); > + } > + appendWhitespace(writer); > > - String descriptionFieldName = lookupField.getDescriptionFieldName(); > // add lookup pop-up button > + String descriptionFieldName = lookupField.getDescriptionFieldName(); > if (UtilValidate.isNotEmpty(descriptionFieldName)) { > writer.append("<a href=\"javascript:call_fieldlookup3(document."); > writer.append(modelFormField.getModelForm().getCurrentFormName(context)); > > Antwebsystems.com: Quality OFBiz services for competitive prices |
I'll take a look at it. -David On Jan 15, 2009, at 10:42 PM, Hans Bakker wrote: > this change makes the description of the hyperlink appear twice. > have a look at: > https://localhost3:8443/content/control/EditContent?contentId=ARTICLE_WRAP > > where the 'goto dataresource" button show twice" > > > On Sun, 2009-01-11 at 16:35 +0000, [hidden email] wrote: >> Author: jonesde >> Date: Sun Jan 11 08:35:46 2009 >> New Revision: 733486 >> >> URL: http://svn.apache.org/viewvc?rev=733486&view=rev >> Log: >> A few enhancements, including some fixes and enhancements for the >> loopkup field type to support the sub-hyperlink which was already >> in the xsd, the asterisk for required fields, and the on event >> stuff for the ajax auto-complete and other such things; also >> changed all fields to have a default id with formName_fieldName so >> that it doesn't always have to be explicitly declared but also >> won't conflict form multiform screens >> >> Modified: >> ofbiz/trunk/framework/widget/dtd/widget-form.xsd >> ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ >> ModelFormField.java >> ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/ >> HtmlFormRenderer.java >> >> Modified: ofbiz/trunk/framework/widget/dtd/widget-form.xsd >> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/dtd/widget-form.xsd?rev=733486&r1=733485&r2=733486&view=diff >> = >> = >> = >> = >> = >> = >> = >> = >> = >> ===================================================================== >> --- ofbiz/trunk/framework/widget/dtd/widget-form.xsd (original) >> +++ ofbiz/trunk/framework/widget/dtd/widget-form.xsd Sun Jan 11 >> 08:35:46 2009 >> @@ -1089,9 +1089,9 @@ >> </xs:restriction> >> </xs:simpleType> >> </xs:attribute> >> - <xs:attribute type="xs:double" name="frequency" >> default="0.4"/> >> - <xs:attribute type="xs:positiveInteger" name="min-chars" >> default="1"/> >> - <xs:attribute type="xs:positiveInteger" name="choices" >> default="10"/> >> + <xs:attribute name="frequency" type="xs:double" >> default="0.4"/> >> + <xs:attribute name="min-chars" type="xs:positiveInteger" >> default="1"/> >> + <xs:attribute name="choices" type="xs:positiveInteger" >> default="10"/> >> <xs:attribute name="partial-search" default="true"> >> <xs:simpleType> >> <xs:restriction base="xs:token"> >> @@ -1100,7 +1100,7 @@ >> </xs:restriction> >> </xs:simpleType> >> </xs:attribute> >> - <xs:attribute type="xs:positiveInteger" name="partial- >> chars" default="2"/> >> + <xs:attribute name="partial-chars" >> type="xs:positiveInteger" default="1"/> >> <xs:attribute name="ignore-case" default="true"> >> <xs:simpleType> >> <xs:restriction base="xs:token"> >> @@ -1109,7 +1109,7 @@ >> </xs:restriction> >> </xs:simpleType> >> </xs:attribute> >> - <xs:attribute name="full-search" default="false"> >> + <xs:attribute name="full-search" default="true"> >> <xs:simpleType> >> <xs:restriction base="xs:token"> >> <xs:enumeration value="true"/> >> >> Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ >> ModelFormField.java >> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelFormField.java?rev=733486&r1=733485&r2=733486&view=diff >> = >> = >> = >> = >> = >> = >> = >> = >> = >> ===================================================================== >> --- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ >> ModelFormField.java (original) >> +++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ >> ModelFormField.java Sun Jan 11 08:35:46 2009 >> @@ -1076,7 +1076,11 @@ >> } >> >> public String getIdName() { >> - return idName; >> + if (UtilValidate.isNotEmpty(idName)) { >> + return idName; >> + } else { >> + return this.modelForm.getName() + "_" + this.getFieldName(); >> + } >> } >> >> public String getHeaderLink() { >> @@ -3257,12 +3261,18 @@ >> protected FlexibleStringExpander formName; >> protected String descriptionFieldName; >> protected String targetParameter; >> + protected SubHyperlink subHyperlink; >> >> public LookupField(Element element, ModelFormField >> modelFormField) { >> super(element, modelFormField); >> this.formName = >> FlexibleStringExpander.getInstance(element.getAttribute("target- >> form-name")); >> this.descriptionFieldName = >> element.getAttribute("description-field-name"); >> this.targetParameter = element.getAttribute("target- >> parameter"); >> + >> + Element subHyperlinkElement = >> UtilXml.firstChildElement(element, "sub-hyperlink"); >> + if (subHyperlinkElement != null) { >> + this.subHyperlink = new >> SubHyperlink(subHyperlinkElement); >> + } >> } >> >> public LookupField(int fieldSource, ModelFormField >> modelFormField) { >> @@ -3299,6 +3309,10 @@ >> public void setDescriptionFieldName(String str) { >> this.descriptionFieldName = str; >> } >> + >> + public SubHyperlink getSubHyperlink() { >> + return this.subHyperlink; >> + } >> } >> >> public static class FileField extends TextField { >> >> 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=733486&r1=733485&r2=733486&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 Sun Jan 11 08:35:46 2009 >> @@ -711,7 +711,7 @@ >> ModelForm modelForm = modelFormField.getModelForm(); >> ModelFormField.AutoComplete autoComplete = >> dropDownField.getAutoComplete(); >> boolean ajaxEnabled = autoComplete != null && >> this.javaScriptEnabled; >> - List allOptionValues = >> dropDownField.getAllOptionValues(context, >> modelForm.getDelegator(context)); >> + List<ModelFormField.OptionValue> allOptionValues = >> dropDownField.getAllOptionValues(context, >> modelForm.getDelegator(context)); >> >> String event = modelFormField.getEvent(); >> String action = modelFormField.getAction(context); >> @@ -767,7 +767,7 @@ >> >> if (UtilValidate.isNotEmpty(currentValue)) { >> writer.append(" value=\""); >> - String explicitDescription = >> dropDownField.getCurrentDescription(context); >> + //String explicitDescription = >> dropDownField.getCurrentDescription(context); >> writer.append(currentValue); >> writer.append('"'); >> } >> @@ -778,20 +778,22 @@ >> writer.append("<script language=\"JavaScript\" type= >> \"text/javascript\">"); >> appendWhitespace(writer); >> writer.append("var data = {"); >> - Iterator optionValueIter = allOptionValues.iterator(); >> int count = 0; >> - while (optionValueIter.hasNext()) { >> + for (ModelFormField.OptionValue optionValue: >> allOptionValues) { >> count++; >> - ModelFormField.OptionValue optionValue = >> (ModelFormField.OptionValue) optionValueIter.next(); >> - writer.append(""+optionValue.getKey()+": "); >> - writer.append(" '"+optionValue.getDescription() >> +"'"); >> + writer.append("" + optionValue.getKey() + ": "); >> + writer.append(" '" + optionValue.getDescription() >> + "'"); >> if (count != allOptionValues.size()) { >> writer.append(", "); >> } >> } >> writer.append("};"); >> appendWhitespace(writer); >> - >> writer.append("ajaxAutoCompleteDropDown('"+textFieldIdName+"', >> '"+idName+"', data, {autoSelect: "+autoComplete.getAutoSelect()+", >> frequency: "+autoComplete.getFrequency()+", minChars: >> "+autoComplete.getMinChars()+", choices: "+autoComplete.getChoices() >> +", partialSearch: "+autoComplete.getPartialSearch()+", >> partialChars: "+autoComplete.getPartialChars()+", ignoreCase: >> "+autoComplete.getIgnoreCase()+", fullSearch: >> "+autoComplete.getFullSearch()+"});"); >> + writer.append("ajaxAutoCompleteDropDown('" + >> textFieldIdName + "', '" + idName + "', data, {autoSelect: " + >> + autoComplete.getAutoSelect() + ", frequency: " + >> autoComplete.getFrequency() + ", minChars: " + >> autoComplete.getMinChars() + >> + ", choices: " + autoComplete.getChoices() + ", >> partialSearch: " + autoComplete.getPartialSearch() + >> + ", partialChars: " + autoComplete.getPartialChars() >> + ", ignoreCase: " + autoComplete.getIgnoreCase() + >> + ", fullSearch: " + autoComplete.getFullSearch() + >> "});"); >> appendWhitespace(writer); >> writer.append("</script>"); >> } else { >> @@ -2178,14 +2180,39 @@ >> writer.append('"'); >> } >> >> - if (!lookupField.getClientAutocompleteField()) { >> + String idName = modelFormField.getIdName(); >> + if (UtilValidate.isNotEmpty(idName)) { >> + writer.append(" id=\""); >> + writer.append(idName); >> + writer.append('"'); >> + } >> + >> + List<ModelForm.UpdateArea> updateAreas = >> modelFormField.getOnChangeUpdateAreas(); >> + boolean ajaxEnabled = updateAreas != null && >> this.javaScriptEnabled; >> + if (!lookupField.getClientAutocompleteField() || >> ajaxEnabled) { >> writer.append(" autocomplete=\"off\""); >> } >> >> writer.append("/>"); >> + >> + this.addAsterisks(writer, context, modelFormField); >> + >> + this.makeHyperlinkString(writer, >> lookupField.getSubHyperlink(), context); >> + >> + this.appendTooltip(writer, context, modelFormField); >> + >> + if (ajaxEnabled) { >> + appendWhitespace(writer); >> + writer.append("<script language=\"JavaScript\" type= >> \"text/javascript\">"); >> + appendWhitespace(writer); >> + writer.append("ajaxAutoCompleter('" + >> createAjaxParamsFromUpdateAreas(updateAreas, null, context) + "');"); >> + appendWhitespace(writer); >> + writer.append("</script>"); >> + } >> + appendWhitespace(writer); >> >> - String descriptionFieldName = >> lookupField.getDescriptionFieldName(); >> // add lookup pop-up button >> + String descriptionFieldName = >> lookupField.getDescriptionFieldName(); >> if (UtilValidate.isNotEmpty(descriptionFieldName)) { >> writer.append("<a href= >> \"javascript:call_fieldlookup3(document."); >> >> writer >> .append(modelFormField.getModelForm().getCurrentFormName(context)); >> >> > -- > Antwebsystems.com: Quality OFBiz services for competitive prices > |
Free forum by Nabble | Edit this page |