From 6508510e74b62a78eb3b29ac7ea98741e522b91a Mon Sep 17 00:00:00 2001 From: Michael Peters Date: Thu, 29 Mar 2012 14:59:20 -0400 Subject: [PATCH] LP#520632 Fix for-loop over orgArraySearcher to preserve order Authored by Remington Steed This commit fixes the sort order in IE, Google Chrome of the org unit's when choosing a search depth. Signed-off-by: Remington Steed Signed-off-by: Michael Peters Signed-off-by: Mike Rylander --- Open-ILS/web/opac/common/js/opac_utils.js | 4 ++-- Open-ILS/web/opac/common/js/org_utils.js | 10 ++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Open-ILS/web/opac/common/js/opac_utils.js b/Open-ILS/web/opac/common/js/opac_utils.js index aae4746bda..78557b6e04 100644 --- a/Open-ILS/web/opac/common/js/opac_utils.js +++ b/Open-ILS/web/opac/common/js/opac_utils.js @@ -881,8 +881,8 @@ function buildOrgSelector(node) { var tree = new SlimTree(node,'orgTreeSelector'); orgTreeSelector = tree; var orgHiding = checkOrgHiding(); - for( var i in orgArraySearcher ) { - var node = orgArraySearcher[i]; + for (var i = 0; i < orgArraySearcherOrder.length; i++) { + var node = orgArraySearcher[orgArraySearcherOrder[i]]; if( node == null ) continue; if(!isXUL() && !isTrue(node.opac_visible())) continue; if (orgHiding) { diff --git a/Open-ILS/web/opac/common/js/org_utils.js b/Open-ILS/web/opac/common/js/org_utils.js index 091d277dec..3a12a498c9 100644 --- a/Open-ILS/web/opac/common/js/org_utils.js +++ b/Open-ILS/web/opac/common/js/org_utils.js @@ -128,6 +128,7 @@ function orgIsMineFromSet(meList, org) { } var orgArraySearcher = {}; +var orgArraySearcherOrder = []; var globalOrgTree; for (var i = 0; i < _l.length; i++) { var x = new aou(); @@ -135,12 +136,13 @@ for (var i = 0; i < _l.length; i++) { x.ou_type(_l[i][1]); x.parent_ou(_l[i][2]); x.name(_l[i][3]); - x.opac_visible(_l[i][4]); - x.shortname(_l[i][5]); + x.opac_visible(_l[i][4]); + x.shortname(_l[i][5]); orgArraySearcher[x.id()] = x; + orgArraySearcherOrder.push(x.id()); } -for (var i in orgArraySearcher) { - var x = orgArraySearcher[i]; +for (var i = 0; i < orgArraySearcherOrder.length; i++) { + var x = orgArraySearcher[orgArraySearcherOrder[i]]; if (x.parent_ou() == null || x.parent_ou() == '') { globalOrgTree = x; continue; -- 2.43.2