Improved test suite to reset fixture after each test, added selects to test ':selecte...
[jquery.git] / build / js / parse.js
index 5b60b0a..498361d 100644 (file)
@@ -67,3 +67,40 @@ function parse( f ) {
 
        return c;
 }
+
+function categorize( json ) {
+       var obj = { cat: [], method: [] };
+
+       for ( var i = 0; i < json.length; i++ ) {
+               if ( !json[i].cat ) json[i].cat = "";
+
+               var cat = json[i].cat.split("/");
+
+               var pos = obj;
+               for ( var j = 0; j < cat.length; j++ ) {
+                       var c = cat[j];
+                       var curCat = null;
+
+                       // Locate current category
+                       for ( var n = 0; n < pos.cat.length; n++ )
+                               if ( pos.cat[n].value == c )
+                                       curCat = pos.cat[n];
+
+                       // Create current category
+                       if ( !curCat ) {
+                               curCat = { value: c, cat: [], method: [] };
+                               pos.cat.push( curCat )
+                       }
+
+                       // If we're at  the end, add the method
+                       if ( j == cat.length - 1 )
+                               curCat.method.push( json[i] );
+
+                       // Otherwise, traverse deeper
+                       else
+                               pos = curCat;
+               }
+       }
+
+       return obj;
+}