A calendar module for Roundcube


ref: https://gitlab.com/kolab-roundcube-plugins/calendar

2017-01-26 10:32:21gstlouis

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/&lt;yourchoice&gt;/SQL/&lt;yourdatabase&gt;.initial.sql

The client-side calendar UI relies on the &quot;fullcalendar&quot; 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.


The calendar module makes heavy use of PHP&#39;s DateTime as well as DateInterval
classes. The latter one requires at least PHP 5.3.0 to run.


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 &#39;kolab&#39; driver)


For a manual installation of the calendar plugin (and its dependencies),
execute the following steps. This will set it up with the database backend

1. Get the source from git

  $ cd /tmp
  $ git clone https://git.kolab.org/diffusion/RPK/roundcubemail-plugins-kolab.git
  $ cd /&lt;path-to-roundcube&gt;/plugins
  $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/calendar .
  $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libcalendaring .

2. Create calendar plugin configuration

  $ cd calendar/
  $ cp config.inc.php.dist config.inc.php
  $ edit config.inc.php

3. Initialize the calendar database tables

  $ mysql roundcubemail &lt; drivers/database/SQL/mysql.initial.sql

4. Enable the calendar plugin

  $ cd ../../
  $ edit config/config.inc.php

Add &#39;calendar&#39; to the list of active plugins:

  $config[&#39;plugins&#39;] = array(

2017-01-26 10:32:51