use object-based store to ensure unique years, not array.indexOf
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 10 Dec 2008 17:52:08 +0000 (17:52 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 10 Dec 2008 17:52:08 +0000 (17:52 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@11501 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/js/ui/default/acq/financial/list_funds.js

index 43acbb5..e700a6c 100644 (file)
@@ -33,18 +33,19 @@ function loadFundGrid() {
 
             var yearStore = {identifier:'year', name:'year', items:[]};
 
-            var added = [];
+            var added = {};
             for(var i = 0; i < storeData.items.length; i++) {
                 var year = storeData.items[i].year;
-                if(added.indexOf(year) == -1) {
+                if(!(year in added)) {
                     yearStore.items.push({year:year});
-                    added.push(year);
+                    added[year] = 1;
                 }
             }
             yearStore.items = yearStore.items.sort().reverse();
             fundFilterYearSelect.store = new dojo.data.ItemFileReadStore({data:yearStore});
             var today = new Date().getFullYear().toString();
-            fundFilterYearSelect.setValue((added.indexOf(today != -1)) ? today : added[0]);
+            if(today in added)
+                fundFilterYearSelect.setValue(today);
         }
     );
 }