From 66d952424526cb2b36aa6f90cfc546585ea13168 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Thu, 3 Jul 2014 15:33:23 -0400 Subject: [PATCH] patron holds suspend/activate Signed-off-by: Bill Erickson --- .../src/templates/staff/circ/patron/t_holds.tt2 | 4 ++++ .../templates/staff/circ/share/hold_strings.tt2 | 2 ++ .../web/js/ui/default/staff/circ/patron/holds.js | 6 ++++++ .../web/js/ui/default/staff/circ/services/holds.js | 25 ++++++++++++++++++++++ 4 files changed, 37 insertions(+) diff --git a/Open-ILS/src/templates/staff/circ/patron/t_holds.tt2 b/Open-ILS/src/templates/staff/circ/patron/t_holds.tt2 index ea0c7dd819..976bb40c3d 100644 --- a/Open-ILS/src/templates/staff/circ/patron/t_holds.tt2 +++ b/Open-ILS/src/templates/staff/circ/patron/t_holds.tt2 @@ -27,6 +27,10 @@ label="[% l('Edit Notification Settings') %]"> + + diff --git a/Open-ILS/src/templates/staff/circ/share/hold_strings.tt2 b/Open-ILS/src/templates/staff/circ/share/hold_strings.tt2 index 41718f85ae..0e5be7dce0 100644 --- a/Open-ILS/src/templates/staff/circ/share/hold_strings.tt2 +++ b/Open-ILS/src/templates/staff/circ/share/hold_strings.tt2 @@ -10,6 +10,8 @@ s.HOLD_STATUS_5 = "[% l('Hold Shelf Delay') %]"; s.HOLD_STATUS_6 = "[% l('Canceled') %]"; s.HOLD_STATUS_7 = "[% l('Suspended') %]"; s.HOLD_STATUS_8 = "[% l('Wrong Shelf') %]"; +s.ACTIVATE_HOLDS = "[% l('Activate [_1] Hold(s)?', '{{num_holds}}') %]" +s.SUSPEND_HOLDS = "[% l('Suspend [_1] Hold(s)?', '{{num_holds}}') %]" }]); diff --git a/Open-ILS/web/js/ui/default/staff/circ/patron/holds.js b/Open-ILS/web/js/ui/default/staff/circ/patron/holds.js index 8720003ed1..3fa0d9ffed 100644 --- a/Open-ILS/web/js/ui/default/staff/circ/patron/holds.js +++ b/Open-ILS/web/js/ui/default/staff/circ/patron/holds.js @@ -132,6 +132,12 @@ function($scope, $q, $routeParams, egCore, egUser, patronSvc, $scope.edit_dates = function(items) { generic_update(items, 'edit_dates'); } + $scope.suspend = function(items) { + generic_update(items, 'suspend_holds'); + } + $scope.activate = function(items) { + generic_update(items, 'activate_holds'); + } }]) diff --git a/Open-ILS/web/js/ui/default/staff/circ/services/holds.js b/Open-ILS/web/js/ui/default/staff/circ/services/holds.js index a49fb89d1f..db77eebf66 100644 --- a/Open-ILS/web/js/ui/default/staff/circ/services/holds.js +++ b/Open-ILS/web/js/ui/default/staff/circ/services/holds.js @@ -217,6 +217,31 @@ function($modal , $q , egCore , egAlertDialog , egConfirmDialog) { }).result; } + service.activate_holds = function(hold_ids) { + if (!hold_ids.length) return $q.when(); + return egConfirmDialog.open( + egCore.strings.ACTIVATE_HOLDS, '', {num_holds : hold_ids.length}) + .result.then(function() { + var vals = hold_ids.map(function(hold_id) { + return {id : hold_id, frozen : false} + }); + return service.update_holds(vals); + }); + } + + service.suspend_holds = function(hold_ids) { + if (!hold_ids.length) return $q.when(); + return egConfirmDialog.open( + egCore.strings.SUSPEND_HOLDS, '', {num_holds : hold_ids.length}) + .result.then(function() { + var vals = hold_ids.map(function(hold_id) { + return {id : hold_id, frozen : true} + }); + return service.update_holds(vals); + }); + } + + return service; }]) -- 2.11.0