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=20dac92a5342644fcb64f2e45194e2eac7120027;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 --- 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 8b77183b20..4026811d40 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 73c91a350b..aeae4b9751 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 @@ -88,6 +88,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) { @@ -277,40 +314,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; },