From aae0f725bc6a1ab0ed6faf56d114efb2d73ff6fb Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Thu, 20 Sep 2012 09:32:02 +0200 Subject: [PATCH] Make get_default_folder() work multiple annotations --- plugins/kolab_folders/kolab_folders.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/plugins/kolab_folders/kolab_folders.php b/plugins/kolab_folders/kolab_folders.php index 899620fc..297c858d 100644 --- a/plugins/kolab_folders/kolab_folders.php +++ b/plugins/kolab_folders/kolab_folders.php @@ -388,9 +388,8 @@ class kolab_folders extends rcube_plugin $namespace = $storage->get_namespace(); // get all folders of specified type - $folderdata = array_map('implode', $folderdata); + $folderdata = array_map(array($this, 'folder_select_metadata'), $folderdata); $folderdata = array_intersect($folderdata, array($type)); - unset($folders[0]); foreach ($folderdata as $folder => $data) { // check if folder is in personal namespace @@ -411,6 +410,14 @@ class kolab_folders extends rcube_plugin return null; } + /** + * Callback for array_map to select the correct annotation value + */ + private function folder_select_metadata($types) + { + return $types[kolab_storage::CTYPE_KEY_PRIVATE] ?: $types[kolab_storage::CTYPE_KEY]; + } + /** * Returns CSS class name for specified folder type *