2013-08-06 20:23:33 +00:00
|
|
|
A calendar module for Roundcube
|
|
|
|
-------------------------------
|
|
|
|
|
|
|
|
This plugin currently supports a local database as well as a Kolab groupware
|
|
|
|
server as backends for calendar and event storage. For both drivers, some
|
|
|
|
initialization of the local database is necessary. To do so, execute the
|
|
|
|
SQL commands in drivers/<yourchoice>/SQL/<yourdatabase>.initial.sql
|
|
|
|
|
|
|
|
The client-side calendar UI relies on the "fullcalendar" project by Adam Arshaw
|
|
|
|
with extensions made for the use in Roundcube. All changes are published in
|
|
|
|
an official fork at https://github.com/roundcube/fullcalendar
|
|
|
|
|
|
|
|
For some general calendar-based operations such as alarms handling or iCal
|
|
|
|
parsing/exporting this plugins requires the `libcalendaring` plugin which
|
|
|
|
is also part of the Kolab Roundcube Plugins repository. Make sure that plugin
|
|
|
|
is installed and configured correctly.
|
|
|
|
|
|
|
|
For recurring event computation, some utility classes from the Horde project
|
|
|
|
are used. They are packaged in a slightly modified version with this plugin.
|
|
|
|
|
|
|
|
IMPORTANT
|
|
|
|
---------
|
2015-03-12 21:37:40 +00:00
|
|
|
|
2013-08-06 20:23:33 +00:00
|
|
|
The calendar module makes heavy use of PHP's DateTime as well as DateInterval
|
|
|
|
classes. The latter one requires at least PHP 5.3.0 to run.
|
2015-03-12 21:37:40 +00:00
|
|
|
|
|
|
|
|
|
|
|
REQUIREMENTS
|
|
|
|
------------
|
|
|
|
|
|
|
|
Some functions are shared with other plugins and therefore being moved to
|
|
|
|
library plugins. Thus in order to run the calendar plugin, you also need the
|
|
|
|
following plugins installed:
|
|
|
|
|
|
|
|
* libcalendaring [1]
|
|
|
|
* libkolab [1] (when using the 'kolab' driver)
|
|
|
|
|
|
|
|
|
|
|
|
INSTALLATION
|
|
|
|
------------
|
|
|
|
|
2017-04-30 18:53:23 +00:00
|
|
|
The preferred and automated way to install the calendar with all requirements
|
|
|
|
is via the Roundcube plugin repository: https://plugins.roundcube.net
|
|
|
|
|
2015-03-12 21:37:40 +00:00
|
|
|
For a manual installation of the calendar plugin (and its dependencies),
|
|
|
|
execute the following steps. This will set it up with the database backend
|
|
|
|
driver.
|
|
|
|
|
|
|
|
1. Get the source from git
|
|
|
|
|
|
|
|
$ cd /tmp
|
2015-10-19 21:33:47 +00:00
|
|
|
$ git clone https://git.kolab.org/diffusion/RPK/roundcubemail-plugins-kolab.git
|
2015-03-12 21:37:40 +00:00
|
|
|
$ cd /<path-to-roundcube>/plugins
|
|
|
|
$ cp -r /tmp/roundcubemail-plugins-kolab/plugins/calendar .
|
|
|
|
$ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libcalendaring .
|
|
|
|
|
2017-04-30 18:53:23 +00:00
|
|
|
2. Install the dependencies with Composer
|
|
|
|
|
|
|
|
(This has to be done from the Roundcube root directory)
|
|
|
|
|
|
|
|
$ cd /<path-to-roundcube>
|
|
|
|
$ php composer.phar require sabre/vobject 3.3.3
|
|
|
|
|
|
|
|
Download the composer.phar script from https://getcomposer.org
|
|
|
|
|
|
|
|
3. Create calendar plugin configuration
|
2015-03-12 21:37:40 +00:00
|
|
|
|
|
|
|
$ cd calendar/
|
|
|
|
$ cp config.inc.php.dist config.inc.php
|
|
|
|
$ edit config.inc.php
|
|
|
|
|
2017-04-30 18:53:23 +00:00
|
|
|
4. Initialize the calendar database tables
|
2015-03-12 21:37:40 +00:00
|
|
|
|
|
|
|
$ mysql roundcubemail < drivers/database/SQL/mysql.initial.sql
|
|
|
|
|
2017-04-30 18:53:23 +00:00
|
|
|
5. Enable the calendar plugin
|
2015-03-12 21:37:40 +00:00
|
|
|
|
|
|
|
$ cd ../../
|
|
|
|
$ edit config/config.inc.php
|
|
|
|
|
|
|
|
Add 'calendar' to the list of active plugins:
|
|
|
|
|
|
|
|
$config['plugins'] = array(
|
|
|
|
(...)
|
|
|
|
'calendar',
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
|
2015-10-19 21:33:47 +00:00
|
|
|
[1] https://git.kolab.org/diffusion/RPK/
|