From: Daniel Pearl Date: Wed, 13 Mar 2019 14:07:17 +0000 (-0400) Subject: LP1787636: Sort Libraries without Holdings In Holdings View X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=53af6ea8afdf40c0dd033c2e6dfd55a53af85938;p=working%2FEvergreen.git LP1787636: Sort Libraries without Holdings In Holdings View Empty libraries in holdings view are listed at the end of the library list instead of integrated within the list. This patch sorts them within the list. Signed-off-by: Daniel Pearl Signed-off-by: Jason Stephenson Signed-off-by: Chris Sharp --- diff --git a/Open-ILS/src/templates/staff/cat/catalog/t_holdings.tt2 b/Open-ILS/src/templates/staff/cat/catalog/t_holdings.tt2 index 58a1abc84a..0ca2a88bf6 100644 --- a/Open-ILS/src/templates/staff/cat/catalog/t_holdings.tt2 +++ b/Open-ILS/src/templates/staff/cat/catalog/t_holdings.tt2 @@ -1,7 +1,7 @@
-
+
[% l('Show holdings at or below') %] diff --git a/Open-ILS/web/js/ui/default/staff/cat/services/holdings.js b/Open-ILS/web/js/ui/default/staff/cat/services/holdings.js index d78c049bc3..2b19821805 100644 --- a/Open-ILS/web/js/ui/default/staff/cat/services/holdings.js +++ b/Open-ILS/web/js/ui/default/staff/cat/services/holdings.js @@ -87,6 +87,43 @@ function(egCore , $q) { } }); + if (empty_org) { + + var empty_org_list = []; + angular.forEach(svc.org_use_map,function(v,k){ + if (v == 0) empty_org_list.push(k); + }); + + angular.forEach(empty_org_list, function (oid) { + var owner = egCore.org.get(oid); + if (owner.ou_type().can_have_vols() != 't') return; + + var owner_list = []; + while (owner.parent_ou()) { // we're going to skip the top of the tree... + owner_list.unshift(owner.shortname()); + owner = egCore.org.get(owner.parent_ou()); + } + + var owner_label = owner_list.join(' ... '); + + svc.copies.push({ + index : index++, + id_list : [], + call_number: { label : '' }, + barcode : '', + owner_id : oid, + owner_list : owner_list, + owner_label: owner_label, + copy_count : 0, + cn_count : 0, + copy_alert_count : 0 + }); + }); + } + + svc.ongoing = false; + + svc.copies = svc.copies.sort( function (a, b) { function compare_array (x, y, i) { @@ -255,40 +292,6 @@ function(egCore , $q) { } } - if (empty_org) { - - var empty_org_list = []; - angular.forEach(svc.org_use_map,function(v,k){ - if (v == 0) empty_org_list.push(k); - }); - - angular.forEach(empty_org_list, function (oid) { - var owner = egCore.org.get(oid); - if (owner.ou_type().can_have_vols() != 't') return; - - var owner_list = []; - while (owner.parent_ou()) { // we're going to skip the top of the tree... - owner_list.unshift(owner.shortname()); - owner = egCore.org.get(owner.parent_ou()); - } - - var owner_label = owner_list.join(' ... '); - - new_list.push({ - index : index++, - id_list : [], - call_number: { label : '' }, - barcode : '', - owner_id : oid, - owner_list : owner_list, - owner_label: owner_label, - copy_count : 0, - cn_count : 0, - copy_alert_count : 0 - }); - }); - } - svc.copies = new_list; svc.ongoing = false; },