diff --git a/module/finc/src/finc/Hierarchy/TreeDataFormatter/NoCollections.php b/module/finc/src/finc/Hierarchy/TreeDataFormatter/NoCollections.php index 5d1fbf8a3538b07a70a246d491df917b057a3d0b..f3a54bc14215f7a6d3cefff826321261fe2330d2 100644 --- a/module/finc/src/finc/Hierarchy/TreeDataFormatter/NoCollections.php +++ b/module/finc/src/finc/Hierarchy/TreeDataFormatter/NoCollections.php @@ -64,4 +64,29 @@ class NoCollections extends \VuFind\Hierarchy\TreeDataFormatter\Json } return parent::pickTitle($record, $parentID); } + + + /** + * Sort Nodes + * Convert an unsorted array of [ key, value ] pairs into a sorted array + * of values. + * + * @param array $array The array of arrays to sort + * + * @return array + */ + protected function sortNodes($array) + { + // Sort arrays based on first element + $sorter = function ($a, $b) { + return strnatcmp($a[0], $b[0]); + }; + usort($array, $sorter); + + // Collapse array to remove sort values + $mapper = function ($i) { + return $i[1]; + }; + return array_map($mapper, $array); + } }