You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2007/09/27 03:15:12 UTC
svn commit: r579862 - in /tapestry/tapestry4/trunk:
tapestry-examples/Workbench/src/context/Fields.html
tapestry-framework/src/js/dojo-0.4.3/dojo2.js
tapestry-framework/src/js/tapestry/form.js
Author: jkuhnert
Date: Wed Sep 26 18:15:11 2007
New Revision: 579862
URL: http://svn.apache.org/viewvc?rev=579862&view=rev
Log:
Fixes TAPESTRY-1753. required object checking was using dojo.lang.arrayLike instead of just instanceof Array
Modified:
tapestry/tapestry4/trunk/tapestry-examples/Workbench/src/context/Fields.html
tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3/dojo2.js
tapestry/tapestry4/trunk/tapestry-framework/src/js/tapestry/form.js
Modified: tapestry/tapestry4/trunk/tapestry-examples/Workbench/src/context/Fields.html
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-examples/Workbench/src/context/Fields.html?rev=579862&r1=579861&r2=579862&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-examples/Workbench/src/context/Fields.html (original)
+++ tapestry/tapestry4/trunk/tapestry-examples/Workbench/src/context/Fields.html Wed Sep 26 18:15:11 2007
@@ -9,94 +9,94 @@
<p>
<form jwcid="valid@Form" focus="false">
-<input jwcid="inputEnabled"/> <em>Enable Client Side Validation</em>
+ <input jwcid="inputEnabled"/> <em>Enable Client Side Validation</em>
</form>
<p>Input field components can perform validations on the client-side, triggered
-by the user submitting the form. The checkbox above enables or disables
-this feature. Input is always rechecked on the server-side (in case the client
-doesn't support JavaScript).
+ by the user submitting the form. The checkbox above enables or disables
+ this feature. Input is always rechecked on the server-side (in case the client
+ doesn't support JavaScript).
-<span jwcid="showError"/>
+ <span jwcid="showError"/>
-<form jwcid="@Form" success="listener:doSubmit" delegate="bean:delegate"
+<form jwcid="@Form" success="listener:doSubmit" delegate="bean:delegate"
clientValidationEnabled="ognl:clientValidationEnabled" >
-<table class="form">
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="d" field="component:inputDate"/></th>
- <td><input jwcid="inputDate"/></td>
- </tr>
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="i" field="component:inputInt"/></th>
- <td><input jwcid="inputInt"/></td>
- </tr>
- <tr>
- <th><label jwcid="@FieldLabel" field="component:inputDouble"/></th>
- <td><input jwcid="inputDouble"/></td>
- </tr>
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="b" field="component:inputBigDecimal"/></th>
- <td><input jwcid="inputBigDecimal"/></td>
- </tr>
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="l" field="component:inputLong"/></th>
- <td><input jwcid="inputLong"/></td>
- </tr>
-
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="s" field="component:inputString"/></th>
- <td><input jwcid="inputString"/></td>
- </tr>
-
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="e" field="component:inputEmail"/></th>
- <td><input jwcid="inputEmail"/></td>
- </tr>
-
- <tr>
- <th><label jwcid="@FieldLabel" accessKey="z" field="component:zipCode"/></th>
- <td><input jwcid="zipCode" /></td>
- </tr>
-
- <tr>
- <th><label for="phone" accessKey="p">Phone</label></th>
- <td><input jwcid="phone" /></td>
- </tr>
- <tr>
- <th><label jwcid="@FieldLabel" accessKey="a" field="component:ipaddress" /></th>
- <td><input jwcid="ipaddress" /></td>
- </tr>
-
- <tr>
- <th><label jwcid="@FieldLabel" accesskey="a" field="component:textArea"/></th>
- <td><input jwcid="textArea" cols="33" rows="4" /></td>
- </tr>
-
- <tr>
- <th><label jwcid="@FieldLabel" field="component:choose" /></th>
- <td>
- <div jwcid="choose@RadioGroup" selected="ognl:visit.choice" displayName="Choose" validators="validators:required" >
- <input jwcid="@Radio" value="literal:2" /> Yes
- <input jwcid="@Radio" value="literal:4" /> No
- </div>
- </td>
- </tr>
-
- <tr>
- <td> </td>
- <td><input jwcid="continue@ImageSubmit" image="asset:continue"/></td>
- </tr>
-
- <tr>
- <td></td>
- <td>
- Or, use a LinkSubmit component:
- <a jwcid="continueLink@LinkSubmit" listener="listener:doByLink">Continue</a>
- </td>
- </tr>
-
-</table>
+ <table class="form">
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="d" field="component:inputDate"/></th>
+ <td><input jwcid="inputDate"/></td>
+ </tr>
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="i" field="component:inputInt"/></th>
+ <td><input jwcid="inputInt"/></td>
+ </tr>
+ <tr>
+ <th><label jwcid="@FieldLabel" field="component:inputDouble"/></th>
+ <td><input jwcid="inputDouble"/></td>
+ </tr>
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="b" field="component:inputBigDecimal"/></th>
+ <td><input jwcid="inputBigDecimal"/></td>
+ </tr>
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="l" field="component:inputLong"/></th>
+ <td><input jwcid="inputLong"/></td>
+ </tr>
+
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="s" field="component:inputString"/></th>
+ <td><input jwcid="inputString"/></td>
+ </tr>
+
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="e" field="component:inputEmail"/></th>
+ <td><input jwcid="inputEmail"/></td>
+ </tr>
+
+ <tr>
+ <th><label jwcid="@FieldLabel" accessKey="z" field="component:zipCode"/></th>
+ <td><input jwcid="zipCode" /></td>
+ </tr>
+
+ <tr>
+ <th><label for="phone" accessKey="p">Phone</label></th>
+ <td><input jwcid="phone" /></td>
+ </tr>
+ <tr>
+ <th><label jwcid="@FieldLabel" accessKey="a" field="component:ipaddress" /></th>
+ <td><input jwcid="ipaddress" /></td>
+ </tr>
+
+ <tr>
+ <th><label jwcid="@FieldLabel" accesskey="a" field="component:textArea"/></th>
+ <td><input jwcid="textArea" cols="33" rows="4" /></td>
+ </tr>
+
+ <tr>
+ <th><label jwcid="@FieldLabel" field="component:choose" /></th>
+ <td>
+ <div jwcid="choose@RadioGroup" selected="ognl:visit.choice" displayName="Choose" validators="validators:required" >
+ <input jwcid="@Radio" value="literal:2" /> Yes
+ <input jwcid="@Radio" value="literal:4" /> No
+ </div>
+ </td>
+ </tr>
+
+ <tr>
+ <td> </td>
+ <td><input jwcid="continue@ImageSubmit" image="asset:continue"/></td>
+ </tr>
+
+ <tr>
+ <td></td>
+ <td>
+ Or, use a LinkSubmit component:
+ <a jwcid="continueLink@LinkSubmit" listener="listener:doByLink">Continue</a>
+ </td>
+ </tr>
+
+ </table>
</form>
</span>
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3/dojo2.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3/dojo2.js?rev=579862&r1=579861&r2=579862&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3/dojo2.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3/dojo2.js Wed Sep 26 18:15:11 2007
@@ -679,7 +679,7 @@
if(!dj_undef("type",_8d)&&(_8d.type=="select-one"||_8d.type=="select-multiple")&&(_8d.selectedIndex==-1||/^\s*$/.test(_8d.options[_8d.selectedIndex].value))){
_85[_85.length]=_8d.name;
}else{
-if(dojo.lang.isArrayLike(_8d)){
+if(_8d instanceof Array){
var _8f=false;
for(var j=0;j<_8d.length;j++){
if(_8d[j].checked){
@@ -692,7 +692,7 @@
if(_84.required instanceof Array){
for(var i=0;i<_84.required.length;i++){
if(!dojo.lang.isObject(_84.required[i])){continue;}
-var _8d,_91;
+var _8d,_91, _92;
for(var _92 in _84.required[i]){
_8d=_83[_92];
_91=_84.required[i][_92];
Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/tapestry/form.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/tapestry/form.js?rev=579862&r1=579861&r2=579862&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/tapestry/form.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/tapestry/form.js Wed Sep 26 18:15:11 2007
@@ -498,8 +498,7 @@
for (var i=0; i < props.profiles.length; i++) {
var results=dojo.validate.check(form, props.profiles[i]);
-
- if (!this.processResults(form, results, props.profiles[i])) {
+ if (!this.processResults(form, results, props.profiles[i])) {
this.summarizeErrors(form, results, props.profiles[i]);
return false;
}
@@ -532,10 +531,10 @@
processResults:function(form, results, profile){
if (results.isSuccessful()) { return true; }
- var formValid=true;
+ var formValid=true;
if (results.hasMissing()) {
var missing=results.getMissing();
- for (var i=0; i < missing.length; i++) {
+ for (var i=0; i < missing.length; i++) {
this.handleMissingField(missing[i], profile);
}
@@ -544,7 +543,7 @@
if (results.hasInvalid()) {
var invalid=results.getInvalid();
- for (var i=0; i < invalid.length; i++) {
+ for (var i=0; i < invalid.length; i++) {
this.handleInvalidField(invalid[i], profile);
}