diff --git a/plugins/calendar/calendar_base.js b/plugins/calendar/calendar_base.js index 0b352807..3cf55de4 100644 --- a/plugins/calendar/calendar_base.js +++ b/plugins/calendar/calendar_base.js @@ -265,7 +265,7 @@ rcube_calendar.fetch_event_rsvp_status = function(event) window.rcmail && rcmail.addEventListener('init', function(evt) { if (rcmail.task != 'calendar') { var cal = new rcube_calendar(rcmail.env.calendar_settings); - + rcmail.addEventListener('plugin.display_alarms', function(alarms){ cal.display_alarms(alarms); }); rcmail.addEventListener('plugin.update_event_rsvp_status', function(p){ @@ -294,6 +294,8 @@ window.rcmail && rcmail.addEventListener('init', function(evt) { rcmail.enable_command('calendar-create-from-mail', true); } } + + rcmail.register_command('plugin.calendar', function() { rcmail.switch_task('calendar'); }, true); rcmail.addEventListener('plugin.ping_url', function(p){ var action = p.action; diff --git a/plugins/calendar/lib/calendar_ui.php b/plugins/calendar/lib/calendar_ui.php index ad910fda..8021fed6 100644 --- a/plugins/calendar/lib/calendar_ui.php +++ b/plugins/calendar/lib/calendar_ui.php @@ -48,10 +48,11 @@ class calendar_ui // add taskbar button $this->cal->add_button(array( - 'name' => 'calendar', - 'class' => 'button-calendar', - 'label' => 'calendar.calendar', - 'href' => './?_task=calendar', + 'name' => 'calendar', + 'class' => 'button-calendar', + 'label' => 'calendar.calendar', + 'href' => './?_task=calendar', + 'onclick' => sprintf("%s.command('plugin.calendar');return false", JS_OBJECT_NAME), ), 'taskbar'); // load basic client script (which - unfortunately - requires fullcalendar)