LP#1729934 Webstaff display org-scoped penalties
authorBill Erickson <berickxx@gmail.com>
Thu, 29 Mar 2018 21:06:16 +0000 (17:06 -0400)
committerKathy Lussier <klussier@masslnc.org>
Wed, 11 Apr 2018 17:27:20 +0000 (13:27 -0400)
Consistent with the XUL client, only display patron standing penalties
(AKA Messages) that are linked to an org unit which is an ancestor,
matching, or descendant org unit of the workstation (e.g. the full
path).

To test:

[1] Create a patron Message which applies to a branch using a branch or
null-depth penalty (e.g. at BR1).

[2] Create a second message that links to the root org unit (e.g. CONS)
via depth=0 penalty.

[2] Log out and back in to the browser client at a workstation under a
different section of the org unit tree (e.g. BR3) and confirm the
Messages created at BR1 do not display, but the messages created at CONS
do.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Open-ILS/web/js/ui/default/staff/circ/patron/app.js

index 580b430..fa8a60e 100644 (file)
@@ -710,6 +710,7 @@ function($scope,  $q,  $routeParams,  $timeout,  $window,  $location,  egCore ,
 function($scope , $q , $routeParams,  egCore , $uibModal , patronSvc , egCirc) {
     $scope.initTab('messages', $routeParams.id);
     var usr_id = $routeParams.id;
+    var org_ids = egCore.org.fullPath(egCore.auth.user().ws_ou(), true);
 
     // setup date filters
     var start = new Date(); // now - 1 year
@@ -736,6 +737,7 @@ function($scope , $q , $routeParams,  egCore , $uibModal , patronSvc , egCirc) {
         setQuery : function() {
             return {
                 usr : usr_id,
+                org_unit : org_ids,
                 '-or' : [
                     {stop_date : null},
                     {stop_date : {'>' : 'now'}}
@@ -751,6 +753,7 @@ function($scope , $q , $routeParams,  egCore , $uibModal , patronSvc , egCirc) {
         setQuery : function() {
             return {
                 usr : usr_id, 
+                org_unit : org_ids,
                 stop_date : {'<=' : 'now'},
                 set_date : {between : date_range()}
             };