From: Mike Rylander Date: Tue, 15 May 2018 21:21:00 +0000 (-0400) Subject: LP#1770478: Offline org unit tree can break X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=0a8b5aea097110b74164876b13b342a524fcfc99;p=evergreen%2Fmasslnc.git LP#1770478: Offline org unit tree can break A thinko in the org tree reconstruction for offline mode caused the tree to be broken in some situations, when the orgs were not ordered strictly by ID in the list stored in the browser's IndexedDB storage. This commit removes that requirement, and allows trees of any ID and storage ordering to be reconstituted. Signed-off-by: Mike Rylander Signed-off-by: Jeff Davis Signed-off-by: Jason Stephenson --- diff --git a/Open-ILS/web/js/ui/default/staff/services/lovefield.js b/Open-ILS/web/js/ui/default/staff/services/lovefield.js index 174a420269..d0cd9c12ee 100644 --- a/Open-ILS/web/js/ui/default/staff/services/lovefield.js +++ b/Open-ILS/web/js/ui/default/staff/services/lovefield.js @@ -402,15 +402,17 @@ angular.module('egCoreMod') angular.forEach(list, function (item) { item.children([]); // just clear it out if there's junk in there - if (item[parent_field]()) { - item[parent_field]( hash[''+item[parent_field]()] ); - } - item.children( list.filter(function (kid) { return kid[parent_field]() == item[pkey](); }) ); }); + angular.forEach(list, function (item) { + if (item[parent_field]()) { + item[parent_field]( hash[''+item[parent_field]()] ); + } + }); + egCore.env.absorbTree(top, type, true) return $q.when(true) });