Go to file
2017-09-01 11:50:35 +02:00
drivers Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
lib Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
localization Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
skins Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
calendar.php Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
calendar_base.js Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
calendar_ui.js Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
composer.json Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
config.inc.php.dist Synchronized with upstream from git.kolab.org (3.2.x) 2017-09-01 11:50:35 +02:00
LICENSE Cloned from git.kolab.org/git/roundcubemail-plugins-kolab 2013-08-06 22:23:33 +02:00
print.js Synchronized with git master from git.kolab.org (v3.2.7) 2015-03-12 22:37:40 +01:00
README Describe dependency installation with Composer 2017-04-30 20:53:23 +02:00
UPGRADING Synchronized with git master from git.kolab.org (v3.2.7) 2015-03-12 22:37:40 +01: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
---------

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.


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
------------

The preferred and automated way to install the calendar with all requirements
is via the Roundcube plugin repository: https://plugins.roundcube.net

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
  $ git clone https://git.kolab.org/diffusion/RPK/roundcubemail-plugins-kolab.git
  $ cd /<path-to-roundcube>/plugins
  $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/calendar .
  $ cp -r /tmp/roundcubemail-plugins-kolab/plugins/libcalendaring .

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

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

4. Initialize the calendar database tables

  $ mysql roundcubemail < drivers/database/SQL/mysql.initial.sql

5. Enable the calendar plugin

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

Add 'calendar' to the list of active plugins:

  $config['plugins'] = array(
    (...)
    'calendar',
  );



[1] https://git.kolab.org/diffusion/RPK/