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="[EMAIL PROTECTED]" 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="[EMAIL PROTECTED]" selected="ognl:visit.choice" 
displayName="Choose" validators="validators:required" >
-           <input jwcid="@Radio" value="literal:2" />&nbsp;Yes&nbsp;
-           <input jwcid="@Radio" value="literal:4" />&nbsp;No
-          </div>
-      </td>
-  </tr>
-
-  <tr>
-       <td> </td>
-       <td><input jwcid="[EMAIL PROTECTED]" image="asset:continue"/></td>
-  </tr>
-
-  <tr>
-       <td></td>
-               <td>
-       Or, use a LinkSubmit component:   
-       <a jwcid="[EMAIL PROTECTED]" 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="[EMAIL PROTECTED]" selected="ognl:visit.choice" 
displayName="Choose" validators="validators:required" >
+                    <input jwcid="@Radio" value="literal:2" />&nbsp;Yes&nbsp;
+                    <input jwcid="@Radio" value="literal:4" />&nbsp;No
+                </div>
+            </td>
+        </tr>
+
+        <tr>
+            <td> </td>
+            <td><input jwcid="[EMAIL PROTECTED]" image="asset:continue"/></td>
+        </tr>
+
+        <tr>
+            <td></td>
+            <td>
+                Or, use a LinkSubmit component:
+                <a jwcid="[EMAIL PROTECTED]" 
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);
                        }
 


Reply via email to