CalDAV/iCAL Support for Roundcube Calendar
This repository was forked from roundcubemail-plugins-kolab and contains a modified version of the Roundcube calendar plugin that enables client support for CalDAV and iCAL calendar resources. We added a feature branch feature_caldav with the modified calendar plugin and we try to frequently merge the latest release tags from upstream. You can find further information and a short introduction to this plugin on our website.
Requirements
- Roundcube 1.0-RC or higher
- Optional: Kolab 3.1 or higher
Installation
-
Clone this repo and checkout the
feature_caldav
branch:$ cd /path/to/your/roundcube/ $ git clone https://gitlab.awesome-it.de/kolab/roundcube-plugins.git plugins-caldav
-
Replace the origin calendar plugin folder with the modified one:
$ mv plugins/calendar plugins/calendar.orig $ ln -s plugins-caldav/plugins/calendar plugins/calendar
-
Copy
plugins/calendar.orig/config.inc.php
to the new plugin folder and modify accordingly:$ cp plugins/calendar.orig/config.inc.php plugins/calendar/config.inc.php $ vi plugins/calendar/config.inc.php
-
The calendar setting
calendar_driver
now accepts an array with calendar drivers you want to enable:$config['calendar_driver'] = array("kolab", "caldav", "ical");
Note that the very first array value is used a default driver e.g. for creating events via email if no calendar was chosen. Further you can drop the Kolab dependency of the calendar by remocing the
kolab
driver. -
It is always a good idea to set a new crypt key to be used for encryption of you CalDAV passwords:
$config['calendar_crypt_key'] = 'some_random_characters`;
-
Update Roundcube's MySQL database:
$ mysql -h <db-host> -u <db-user> -p <db-name> < /path/to/your/roundcube/plugins-caldav/plugins/calendar/drivers/database/SQL/mysql.initial.sql # For CalDAV support $ mysql -h <db-host> -u <db-user> -p <db-name> < /path/to/your/roundcube/plugins-caldav/plugins/calendar/drivers/caldav/SQL/mysql.initial.sql # For iCAL support $ mysql -h <db-host> -u <db-user> -p <db-name> < /path/to/your/roundcube/plugins-caldav/plugins/calendar/drivers/ical/SQL/mysql.initial.sql
-
You should now be able to select one of your configured drivers when creating a new calendar.
Troubleshooting
Enabling debug mode in config.inc.php
will output additional debug information to /path/to/your/roundcube/logs/console
:
$config['calendar_caldav_debug'] = true;
$config['calendar_ical_debug'] = true;
If you find any bugs, please fill an issue in our bug tracker.
License
Calendar Modificatons
Copyright (C) 2014, Awesome Information Technology GbR info@awesome-it.de
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Kolab Plugins
See http://git.kolab.org/roundcubemail-plugins-kolab/tree/plugins/calendar/LICENSE.