length as a mixedcollection key confuses things...
[roojs1] / Roo / util / MixedCollection.js
index e8df1b8..2a251ee 100644 (file)
@@ -289,7 +289,9 @@ mc.add(otherEl);
     indexOf : function(o){
         if(!this.items.indexOf){
             for(var i = 0, len = this.items.length; i < len; i++){
-                if(this.items[i] == o) return i;
+                if(this.items[i] == o) {
+                    return i;
+                }
             }
             return -1;
         }else{
@@ -305,7 +307,9 @@ mc.add(otherEl);
     indexOfKey : function(key){
         if(!this.keys.indexOf){
             for(var i = 0, len = this.keys.length; i < len; i++){
-                if(this.keys[i] == key) return i;
+                if(this.keys[i] == key) {
+                    return i;
+                }
             }
             return -1;
         }else{
@@ -319,6 +323,9 @@ mc.add(otherEl);
  * @return {Object} The item associated with the passed key.
  */
     item : function(key){
+        if (key === 'length') {
+            return null;
+        }
         var item = typeof this.map[key] != "undefined" ? this.map[key] : this.items[key];
         return typeof item != 'function' || this.allowFunctions ? item : null; // for prototype!
     },
@@ -387,7 +394,6 @@ mc.add(otherEl);
     },
     
     _sort : function(property, dir, fn){
-        Roo.log(property);
         var dsc = String(dir).toUpperCase() == "DESC" ? -1 : 1;
         fn = fn || function(a, b){
             return a-b;
@@ -397,12 +403,7 @@ mc.add(otherEl);
             c[c.length] = {key: k[i], value: items[i], index: i};
         }
         c.sort(function(a, b){
-            Roo.log(a);
-            Roo.log(b);
             var v = fn(a[property], b[property]) * dsc;
-            Roo.log(a[property]);
-            Roo.log(b[property]);
-            Roo.log(v);
             if(v == 0){
                 v = (a.index < b.index ? -1 : 1);
             }
@@ -412,8 +413,6 @@ mc.add(otherEl);
             items[i] = c[i].value;
             k[i] = c[i].key;
         }
-        Roo.log(k);
-        Roo.log(items);
         this.fireEvent("sort", this);
     },