[open-ils-commits] r18490 - in branches/rel_2_0/Open-ILS: src/perlmods/OpenILS/Application/Acq web/js/ui/default/conify/global/acq (senator)

svn at svn.open-ils.org svn at svn.open-ils.org
Wed Oct 27 10:53:31 EDT 2010


Author: senator
Date: 2010-10-27 10:53:29 -0400 (Wed, 27 Oct 2010)
New Revision: 18490

Modified:
   branches/rel_2_0/Open-ILS/src/perlmods/OpenILS/Application/Acq/Picklist.pm
   branches/rel_2_0/Open-ILS/web/js/ui/default/conify/global/acq/distribution_formula.js
Log:
Backport r18489 from trunk: distribution formula UI paging


Modified: branches/rel_2_0/Open-ILS/src/perlmods/OpenILS/Application/Acq/Picklist.pm
===================================================================
--- branches/rel_2_0/Open-ILS/src/perlmods/OpenILS/Application/Acq/Picklist.pm	2010-10-27 14:52:36 UTC (rev 18489)
+++ branches/rel_2_0/Open-ILS/src/perlmods/OpenILS/Application/Acq/Picklist.pm	2010-10-27 14:53:29 UTC (rev 18490)
@@ -456,13 +456,19 @@
         desc => 'Ranged distribution formulas, fleshed with entries',
         params => [
             {desc => 'Authentication token', type => 'string'},
+            {desc => "offset", type => "number"},
+            {desc => "limit", type => "number"}
         ],
         return => {desc => 'List of distribution formulas'}
     }
 );
 
 sub ranged_distrib_formulas {
-    my($self, $conn, $auth, $org) = @_;
+    my ($self, $conn, $auth, $offset, $limit) = @_;
+
+    $offset ||= 0;
+    $limit ||= 10;
+
     my $e = new_editor(authtoken=>$auth);
     return $e->event unless $e->checkauth;
     my $orgs = $U->user_has_work_perm_at($e, 'CREATE_PICKLIST', {descendants =>1});
@@ -472,9 +478,11 @@
         {
             flesh => 1, 
             flesh_fields => {acqdf => ['entries']},
-            order_by => {acqdfe => ['position']}
+            order_by => {acqdf => "name"},
+            limit => $limit,
+            offset => $offset
         }
-    ]);
+    ]) or return $e->die_event;
 
     for (@$forms) {
 

Modified: branches/rel_2_0/Open-ILS/web/js/ui/default/conify/global/acq/distribution_formula.js
===================================================================
--- branches/rel_2_0/Open-ILS/web/js/ui/default/conify/global/acq/distribution_formula.js	2010-10-27 14:52:36 UTC (rev 18489)
+++ branches/rel_2_0/Open-ILS/web/js/ui/default/conify/global/acq/distribution_formula.js	2010-10-27 14:53:29 UTC (rev 18490)
@@ -8,12 +8,35 @@
 var localeStrings = dojo.i18n.getLocalization('openils.conify', 'conify');
 
 
-var formCache = [];
+var formCache = {};
 var formula, entryTbody, entryTemplate, dndSource;
 var virtualId = -1;
 var pcrud;
 
 
+function gridDataLoader() {
+    fListGrid.resetStore();
+    fListGrid.showLoadProgressIndicator();
+    fieldmapper.standardRequest(
+        ["open-ils.acq", "open-ils.acq.distribution_formula.ranged.retrieve"], {
+            "async": true,
+            "params": [
+                openils.User.authtoken,
+                fListGrid.displayOffset,
+                fListGrid.displayLimit
+            ],
+            "onresponse": function(r) {
+                var form = openils.Util.readResponse(r);
+                formCache[form.id()] = form;
+                fListGrid.store.newItem(form.toStoreItem());
+            },
+            "oncomplete": function() {
+                fListGrid.hideLoadProgressIndicator();
+            }
+        }
+    );
+}
+
 function draw() {
 
     pcrud = new openils.PermaCrud();
@@ -28,21 +51,8 @@
             location.href = location.href + '/' + fmObject.id();
         }
 
-        fieldmapper.standardRequest(
-            ['open-ils.acq', 'open-ils.acq.distribution_formula.ranged.retrieve'],
-            {   async: true,
-                params: [openils.User.authtoken],
-                onresponse: function (r) { 
-                    var form = openils.Util.readResponse(r);
-                    formCache[form.id()] = form;
-                    fListGrid.store.newItem(form.toStoreItem());
-                },
-                oncomplete: function() {
-                    fListGrid.hideLoadProgressIndicator();
-                }
-            }
-        );
-
+        fListGrid.dataLoader = gridDataLoader;
+        gridDataLoader();
     }
 }
 



More information about the open-ils-commits mailing list