From: Bill Erickson Date: Thu, 19 Nov 2015 13:47:09 +0000 (-0500) Subject: LP#1452950 Patron reg loading dialog; more caching X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=cf7766e55838f73e8c6538e1deddc84ee46ea0eb;p=evergreen%2Fmasslnc.git LP#1452950 Patron reg loading dialog; more caching * Hide the patron edit form and show a loading dialog while data loads. * Cache net access levels and ident types to speed up navigation between patron edit and other pages within the patron app. Signed-off-by: Bill Erickson Signed-off-by: Galen Charlton --- diff --git a/Open-ILS/src/templates/staff/circ/patron/t_edit.tt2 b/Open-ILS/src/templates/staff/circ/patron/t_edit.tt2 index 9caf5e73ae..a35e9e4fd9 100644 --- a/Open-ILS/src/templates/staff/circ/patron/t_edit.tt2 +++ b/Open-ILS/src/templates/staff/circ/patron/t_edit.tt2 @@ -132,6 +132,22 @@ [% END %] + +
+
+
+
+ [% l('Loading...') %] +
+
+
+
+ + +
+ [% formfield('ac', 'barcode', 'card') %] [% formfield('au', 'usrname') %] [% formfield('au', 'passwd') %] @@ -494,4 +510,4 @@
- + diff --git a/Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js b/Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js index 8b67beedba..dca92a85a3 100644 --- a/Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js +++ b/Open-ILS/web/js/ui/default/staff/circ/patron/regctl.js @@ -193,13 +193,29 @@ angular.module('egCoreMod') }; service.get_ident_types = function() { - return egCore.pcrud.retrieveAll('cit', {}, {atomic : true}) - .then(function(types) { service.ident_types = types }); + if (egCore.env.cit) { + service.ident_types = egCore.env.cit.list; + return $q.when(); + } else { + return egCore.pcrud.retrieveAll('cit', {}, {atomic : true}) + .then(function(types) { + egCore.env.absorbList(types, 'cit') + service.ident_types = types + }); + } }; service.get_net_access_levels = function() { - return egCore.pcrud.retrieveAll('cnal', {}, {atomic : true}) - .then(function(levels) { service.net_access_levels = levels }); + if (egCore.env.cnal) { + service.net_access_levels = egCore.env.cnal.list; + return $q.when(); + } else { + return egCore.pcrud.retrieveAll('cnal', {}, {atomic : true}) + .then(function(levels) { + egCore.env.absorbList(levels, 'cnal') + service.net_access_levels = levels + }); + } } service.get_perm_groups = function() { @@ -538,6 +554,7 @@ angular.module('egCoreMod') function PatronRegCtrl($scope, $routeParams, $q, $modal, $window, egCore, patronSvc, patronRegSvc) { + $scope.page_data_loaded = false; $scope.clone_id = $routeParams.clone_id; $scope.stage_username = $routeParams.stage_username; $scope.patron_id = @@ -626,6 +643,9 @@ function PatronRegCtrl($scope, $routeParams, if ($scope.patron.isnew) set_new_patron_defaults(prs); + + $scope.page_data_loaded = true; + console.log('here with ' + $scope.page_data_loaded); }); // update the currently displayed field documentation