diff --git a/plugins/kolab_addressbook/config.inc.php.dist b/plugins/kolab_addressbook/config.inc.php.dist index 02745c84..0a0decfc 100644 --- a/plugins/kolab_addressbook/config.inc.php.dist +++ b/plugins/kolab_addressbook/config.inc.php.dist @@ -11,4 +11,12 @@ */ $rcmail_config['kolab_addressbook_prio'] = 0; +// Base URL to build fully qualified URIs to access calendars via CALDAV +// The following replacement variables are supported: +// %h - Current HTTP host +// %u - Current webmail user name +// %n - Folder name +// %i - Folder UUID +// $rcmail_config['kolab_addressbook_carddav_url'] = 'http://%h/iRony/addressbooks/%u/%i'; + ?> diff --git a/plugins/kolab_addressbook/kolab_addressbook.js b/plugins/kolab_addressbook/kolab_addressbook.js index b024fab9..58248806 100644 --- a/plugins/kolab_addressbook/kolab_addressbook.js +++ b/plugins/kolab_addressbook/kolab_addressbook.js @@ -18,6 +18,7 @@ rcube_webmail.prototype.set_book_actions = function() this.enable_command('book-create', true); this.enable_command('book-edit', 'book-delete', source && sources[source] && sources[source].kolab && sources[source].editable); + this.enable_command('book-showurl', source && sources[source] && sources[source].carddavurl); }; rcube_webmail.prototype.book_create = function() @@ -38,6 +39,29 @@ rcube_webmail.prototype.book_delete = function() } }; +rcube_webmail.prototype.book_showurl = function() +{ + var source = this.env.source ? this.env.address_sources[this.env.source] : null; + if (source && source.carddavurl) { + $('div.showurldialog:ui-dialog').dialog('close'); + + var $dialog = $('
').addClass('showurldialog').append('

'+rcmail.gettext('carddavurldescription', 'kolab_addressbook')+'

'), + textbox = $('