====== AgenDAV ====== {{:raspberrypi:agendav_big.png?300|}} AgenDAV ist eine open source CalDAV Web-Application, geschrieben in PHP und AJAX interface. ===== Installation ===== Die Installation gestaltet sich noch etwas schwierig. Das AgenDAV-Handbuch schlägt folgende Vorgehensweise vor: ==== Prerequisites ==== AgenDAV 1.2.6.2 requires the following software to be installed: * A [[CalDAV]] server (developed mainly with DAViCal * A web server * PHP >= 5.3.0 * PHP mbstring extension * PHP cURL extension * MySQL > 5.1 or PostgreSQL >= 8.1 ==== Downloading AgenDAV and uncompressing ==== AgenDAV 1.2.6.2 can be obtained at AgenDAV official webpage, but you can use GitHub to download latest version. Have a look at http://github.com/adobo/agendav. Uncompress it using tar: $ tar xzf adobo-agendav-...tar.gz $ cd adobo-agendav-.../ ==== Datenbank ==== AgenDAV requires a database to store some information. Supported RDBMs are MySQL and PostgreSQL. First of all you have to create a user and a database for that user. Second, you’ll have to create initial AgenDAV tables using provided SQL files inside ''sql/'' directory. Last step is applying database upgrades to initial database tables. === PostgreSQL === Use the special postgres system user to manage your installation. You can add a new user and a new database the following way: # su postgres $ psql postgres=# CREATE USER agendav WITH PASSWORD 'somepassword'; postgres=# CREATE DATABASE agendav ENCODING 'UTF8'; postgres=# GRANT ALL PRIVILEGES ON DATABASE agendav TO agendav; postgres=# \q $ exit Then you have to edit the file pg_hba.conf, which is usually located at /var/lib/pgsql/. Add the following line before other definitions: # TYPE DATABASE USER CIDR-ADDRESS METHOD local agendav agendav trust After that just restart PostgreSQL and load the initial schema: $ psql -U agendav agendav < sql/pgsql.schema.sql === Apply latest database schema === Initial database structure created with *.sql files provides only a base structure for AgenDAV. It has to be modified to apply latest release changes. To do this, follow instructions on Database upgrade. ==== Configuring Apache web server ==== Apache has to be configured to point to web/public directory, using its own VirtualHost or just an Alias. Example using a dedicated virtualhost: ServerAdmin admin@email.host DocumentRoot /path/to/agendav/web/public ServerName agendav.host ErrorLog logs/agendav_error_log CustomLog logs/agendav_access_log common Example using the Alias directive: Alias /agendav /path/to/agendav/web/public Note Make sure that you have the following PHP settings __disabled__: magic_quotes_gpc magic_quotes_runtime