diff --git a/plugins/calendar/drivers/kolab/kolab_calendar.php b/plugins/calendar/drivers/kolab/kolab_calendar.php index 3f74f0f6..c845c153 100644 --- a/plugins/calendar/drivers/kolab/kolab_calendar.php +++ b/plugins/calendar/drivers/kolab/kolab_calendar.php @@ -113,6 +113,14 @@ class kolab_calendar extends kolab_storage_folder_api return $this->name; } + /** + * + */ + public function get_title() + { + return null; + } + /** * Return color to display this calendar diff --git a/plugins/calendar/drivers/kolab/kolab_driver.php b/plugins/calendar/drivers/kolab/kolab_driver.php index c07d74a2..217fe42f 100644 --- a/plugins/calendar/drivers/kolab/kolab_driver.php +++ b/plugins/calendar/drivers/kolab/kolab_driver.php @@ -151,6 +151,7 @@ class kolab_driver extends calendar_driver 'editname' => $cal->get_foldername(), 'color' => $cal->get_color(), 'active' => $cal->is_active(), + 'title' => $cal->get_owner(), 'owner' => $cal->get_owner(), 'virtual' => false, 'readonly' => true, @@ -176,6 +177,7 @@ class kolab_driver extends calendar_driver 'name' => $fullname, 'listname' => $listname, 'editname' => $cal->get_foldername(), + 'title' => $cal->get_title(), 'color' => $cal->get_color(), 'readonly' => $cal->readonly, 'showalarms' => $cal->alarms, @@ -432,10 +434,8 @@ class kolab_driver extends calendar_driver // search for calendar folders shared by this user foreach (kolab_storage::list_user_folders($user, 'event', false) as $foldername) { - if (1 || !kolab_storage::folder_is_subscribed($foldername, true)) { - $cal = new kolab_calendar($foldername, $this->cal); - $this->calendars[$cal->id] = $cal; - } + $cal = new kolab_calendar($foldername, $this->cal); + $this->calendars[$cal->id] = $cal; } } diff --git a/plugins/calendar/drivers/kolab/kolab_user_calendar.php b/plugins/calendar/drivers/kolab/kolab_user_calendar.php index 7fd74ee8..1ab86790 100644 --- a/plugins/calendar/drivers/kolab/kolab_user_calendar.php +++ b/plugins/calendar/drivers/kolab/kolab_user_calendar.php @@ -89,6 +89,15 @@ class kolab_user_calendar extends kolab_calendar } + /** + * + */ + public function get_title() + { + return $this->userdata['mail']; + } + + /** * Getter for the name of the namespace to which the IMAP folder belongs * diff --git a/plugins/calendar/lib/calendar_ui.php b/plugins/calendar/lib/calendar_ui.php index 74ea5d74..62b19f76 100644 --- a/plugins/calendar/lib/calendar_ui.php +++ b/plugins/calendar/lib/calendar_ui.php @@ -288,8 +288,8 @@ class calendar_ui } $classes = array('calendar', 'cal-' . asciiwords($id, true)); - $title = $prop['name'] != $prop['listname'] || strlen($prop['name']) > 25 ? - html_entity_decode($prop['name'], ENT_COMPAT, RCMAIL_CHARSET) : ''; + $title = $prop['title'] ?: ($prop['name'] != $prop['listname'] || strlen($prop['name']) > 25 ? + html_entity_decode($prop['name'], ENT_COMPAT, RCMAIL_CHARSET) : ''); $is_collapsed = false; // TODO: determine this somehow? if ($prop['virtual'])