From 5fd5be61765cf863e4c1a04eaa862f14df168ea1 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Wed, 16 Oct 2013 16:32:08 +0200 Subject: [PATCH] Sort folders by hierarchy level first --- plugins/libkolab/lib/kolab_storage.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/libkolab/lib/kolab_storage.php b/plugins/libkolab/lib/kolab_storage.php index 2ebb64d8..3d719220 100644 --- a/plugins/libkolab/lib/kolab_storage.php +++ b/plugins/libkolab/lib/kolab_storage.php @@ -683,11 +683,13 @@ class kolab_storage */ public static function sort_folders($folders) { + $delimiter = self::$imap->get_hierarchy_delimiter(); $nsnames = array('personal' => array(), 'shared' => array(), 'other' => array()); foreach ($folders as $folder) { $folders[$folder->name] = $folder; $ns = $folder->get_namespace(); - $nsnames[$ns][$folder->name] = strtolower(html_entity_decode(self::object_name($folder->name, $ns), ENT_COMPAT, RCUBE_CHARSET)); // decode » + $level = count(explode($delimiter, $folder->name)); + $nsnames[$ns][$folder->name] = sprintf('%02d-%s', $level, strtolower(html_entity_decode(self::object_name($folder->name, $ns), ENT_COMPAT, RCUBE_CHARSET))); // decode » } $names = array();