Upgrade to ExtJS 4.0.0 - Released 04/26/2011
[extjs.git] / docs / source / Errors.html
diff --git a/docs/source/Errors.html b/docs/source/Errors.html
new file mode 100644 (file)
index 0000000..7fbdbcf
--- /dev/null
@@ -0,0 +1,54 @@
+<!DOCTYPE html><html><head><title>Sencha Documentation Project</title><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../prettify.css" type="text/css"><link rel="stylesheet" href="../prettify_sa.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script></head><body onload="prettyPrint()"><pre class="prettyprint"><pre><span id='Ext-data.Errors'>/**
+</span> * @author Ed Spencer
+ * @class Ext.data.Errors
+ * @extends Ext.util.MixedCollection
+ * 
+ * &lt;p&gt;Wraps a collection of validation error responses and provides convenient functions for
+ * accessing and errors for specific fields.&lt;/p&gt;
+ * 
+ * &lt;p&gt;Usually this class does not need to be instantiated directly - instances are instead created
+ * automatically when {@link Ext.data.Model#validate validate} on a model instance:&lt;/p&gt;
+ * 
+&lt;pre&gt;&lt;code&gt;
+//validate some existing model instance - in this case it returned 2 failures messages
+var errors = myModel.validate();
+
+errors.isValid(); //false
+
+errors.length; //2
+errors.getByField('name');  // [{field: 'name',  error: 'must be present'}]
+errors.getByField('title'); // [{field: 'title', error: 'is too short'}]
+&lt;/code&gt;&lt;/pre&gt;
+ */
+Ext.define('Ext.data.Errors', {
+    extend: 'Ext.util.MixedCollection',
+    
+<span id='Ext-data.Errors-method-isValid'>    /**
+</span>     * Returns true if there are no errors in the collection
+     * @return {Boolean} 
+     */
+    isValid: function() {
+        return this.length === 0;
+    },
+    
+<span id='Ext-data.Errors-method-getByField'>    /**
+</span>     * Returns all of the errors for the given field
+     * @param {String} fieldName The field to get errors for
+     * @return {Array} All errors for the given field
+     */
+    getByField: function(fieldName) {
+        var errors = [],
+            error, field, i;
+            
+        for (i = 0; i &lt; this.length; i++) {
+            error = this.items[i];
+            
+            if (error.field == fieldName) {
+                errors.push(error);
+            }
+        }
+        
+        return errors;
+    }
+});
+</pre></pre></body></html>
\ No newline at end of file