# WolKal3000 Ein Wordpress-Plugin, das auf das Grüne Wordpress-Theme Urwahl3000 aufsetzt und eine Integration beliebig vieler öffentlicher ICS-Kalender ermöglicht. Version: 0.3.9 ## Warnung Das hier ist noch in einem frühen Entwicklungsstadium aber durch die Begrenzung auf eine (vertrauenswürdige!) Quelle, sollte sich möglicher Schaden in Grenzen halten. ## Motivation Für eine solche Integration gibt es eine Reihe von Motivatoren: * Termine werden in Regel bereits in einem Kalender gepflegt. Die Arbeit diese auch noch manuell in das CMS zu übernehmen entfällt. * Der Umgang mit Terminen im Quellsystem (z.B. der Wolke) ist u.U. leichter handzuhaben als im CMS * So schön Urwahl3000 ist - der auf wpCalendar basierende kal3000 Kalender unterstützt keine Serientermine. Mit diesem Plugin ist das kein Problem mehr, da es Serientermine im Google Kalender automatisch als Serie von Einzelterminen anlegt. ## Eigenschaften * Administration in Wordpress über die Admin-Oberfläche. * Einbinden beliebig vieler ICS-Kalender. * Zuordnung dieser ICS-Kalender zu bereits angelegten Terminkategorien, beispielsweise KV Allgemein, AG Klima etc.. * Multi-Site fähig ## Voraussetzungen / Installation 1. Um eine auf Urwahl3000 und Wordpress basierende KV- oder OV-Seite betreiben zu können, braucht man zunächst eine irgendwo gehostete aktuelle Wordpress-Umgebung. Dazu wird auf die Dokumentation von Urwahl3000 verwiesen. 2. Als nächstes holt man sich das Plugin unter https://git.verdigado.com/NB-Public/WolKal3000/releases und installiert es über die WP-Oberfläche wie gewohnt. Hinweis: WolKal3000 nutzt für das Parsen von ICAL-Files und -Feeds das PHP-Modul icalparser (https://github.com/OzzyCzech/icalparser). Bei einem Clone des Repositories sollte daher rekursiv inkl. Submodules gecloned werden, alternativ muss icalparserer manuell im WolKal3000-Plugin-Verzeichnis installiert werden. ## Konfiguration 1. In der Konfiguration (wolkal3000-config.php) sind die globalen Konfigurationsvariablen WOLKAL_PREFIX und WOLKAL_SUFFIX ggf. anzupassen. Für die Grüne Wolke der Netzbegrünung sind die Default Werte ausreichend: define ('WOLKAL_PREFIX', 'https://wolke.netzbegruenung.de/remote.php/dav/public-calendars/'); define ('WOLKAL_SUFFIX', '?export'); 2. in WP legt man Terminkategorien an, z.B. eine pro Kampagne oder Verband aus dem die Nachrichten kommen. 3. Im Admin-Teil des Plugins unter "Einstellungen / WolKal3000" erscheinen die angelegten Terminkategorien. Jeder Kategorie weist man dann einen öffentlichen (keine Authentifizierung möglich!) Kalender in Form der 16-stelligen öffentlichen Kalender Freigabe-ID zu, beispielsweise "SEZ0123456789ABC". 4. Im Admin-Teil kann man das Zeitintervall einstellen, mit dem die Kalender synchronisiert werden. Standardeinstellung ist 60 Minuten. Bitte beachten, dass der Wordpress-Scheduler die Zeitintervalle nur ungefähr und abhängig von der Seitenaktivität einhält. 5. Im Admin-Teil kann man das Geocoding aktivieren. Derzeit ist nur ein experimenteller Weg über OpenStreetMap verfügbar. 6. Speichern und fertig. Unter "Debugging" finden sich zwei weitere Einstellungen: 1. zum einen kann man ein Debug-Logging aktivieren, mit dem das Plugin Einträge in ${APACHE_LOG_DIR}/error.log schreibt. NONE schreibt nichts, CRIT (critical) am wenigsten, INFO (alles) am meisten. 2. Die zweite Einstellung löscht den Geocoding-Cache bei jedem Plugin-Neustart, um das Geocoding für jede Lokation neu zu erzwingen, beispielsweise wenn man die Geocoding-Methode geändert hat. ## Benutzung Um die Termine in WP anzuzeigen, gibt es zwei Wege: * Das Termine-Widget in der rechten Spalte zeigt immer alle Termine an. * Darüber hinaus kann man beispielsweise pro OV eine Unterseite mit dem Titel "OV Termine" anlegen, in der folgender Shortcode steht: `[wpcalendar kat=TERMINKATEGORIE]`. Auf dieser Seite werden dann nur die Termine des dazugehörigen OV angezeigt. Mit "Aktivieren" beginnt das Plugin sofort mit der Synchronisation. ## Proxy-Konfiguration Das Plugin benötigt den Zugriff nach "draußen", um ICAL-Feeds zu holen oder auf OpenStreetMap zuzugreifen. Wenn Du mit Deinem Wordpress-Server hinter einer Firewall bist, musst Du möglicherweise über einen Proxy nach draußen gehen. In Wordpress werden Proxy-Einstellungen in /usr/share/wordpress/wp-config.php bzw. auf Ubuntu / Debian in /etc/wordpress/config-SIT E.php festgelegt. Zur Dokumentation bitte hier entlang. ## Support Bitte ein Ticket (issue) auf https://git.verdigado.com/NB-Public/WolKal3000/issues ## Bekannte Fehler siehe Support ## Internationalization Since this plugin is only relevant for people using the Urwahl3000 theme, and this includes only members of Bündnis 90 / Die Grünen, the user interface of the plugin will only be available in German. Should a demand for other languages arise, feel free to contact me - contributions welcome! :-)