diff --git a/plugins/libkolab/lib/kolab_storage.php b/plugins/libkolab/lib/kolab_storage.php index c9a90e7c..65326248 100644 --- a/plugins/libkolab/lib/kolab_storage.php +++ b/plugins/libkolab/lib/kolab_storage.php @@ -1018,7 +1018,7 @@ class kolab_storage $folder->children = array(); // reset list // skip top folders or ones with a custom displayname - if (count($path) < 1 || kolab_storage::custom_displayname($folder->name)) { + if (count($path) < 1 || $folder->get_custom_displayname()) { $tree->children[] = $folder; } else { diff --git a/plugins/libkolab/lib/kolab_storage_folder_api.php b/plugins/libkolab/lib/kolab_storage_folder_api.php index 32e839cf..3aa7c45b 100644 --- a/plugins/libkolab/lib/kolab_storage_folder_api.php +++ b/plugins/libkolab/lib/kolab_storage_folder_api.php @@ -146,6 +146,20 @@ abstract class kolab_storage_folder_api * @return string Folder name */ public function get_name() + { + if ($name = $this->get_custom_displayname()) { + return $name; + } + + return kolab_storage::object_prettyname($this->name); + } + + /** + * Get the custom display name of this folder + * + * @return string Folder custom name + */ + public function get_custom_displayname() { $rcmail = rcube::get_instance(); @@ -156,12 +170,11 @@ abstract class kolab_storage_folder_api if ($name = $metadata[kolab_storage::NAME_KEY_PRIVATE]) { return $name; } + if ($name = $metadata[kolab_storage::NAME_KEY_SHARED]) { return $name; } } - - return kolab_storage::object_prettyname($this->name); } /**