Jeder kennt das Problem: Zu viele Termine! Als ob das nicht reichen würde, stehen die auch noch in den unterschiedlichsten Kalendern! In der Arbeit verwendet man Exchange, zu Hause vielleicht noch einen eigenen privaten und zu guter letzt wird einem der Stundenplan von der FH auch noch so aufgedrängt.
Was macht man nun? Man versucht sich alles in einem Kalender synchron zu halten. Mit vielen E-Mail Clients ist es ganz einfach: ICal Datei anklicken, Kalender abonnieren, fertig! (Tipp: Bei Outlook muss man statt https:// auf webcal:// ändern, sonst geht da auch nix)
Leider funktioniert Google Kalender nicht mit der ICal Datei der Fachhochschule Technikum Wien.
Warum? Weil Google Kalender keine HTTP Authentifizierung unterstützt und man sich für seinen privaten Kalender leider einloggen muss.
Es funktioniert allerdings trotzdem, mit einem kleinen Trick. Was ihr dazu benötigt ist ein PHP fähiger Webserver. Den bekommt ihr auch bei vielen Anbietern gratis, falls ihr noch keinen habt. Einfach ein wenig googlen. (Ich habe vor meinem jetzigen noch funpic.de benutzt und war sehr zufrieden. Das ist allerdings schon Jahre her
)
So nun weiter:
Ihr müsst eine neue PHP Datei erstellen. Das ist einfach eine normale Textdatei (*.txt) die ihr auf .php umbenennt. Als Inhalt schreibt ihr folgendes (macht einfach copy+paste):
<?php
$url = "xyz";
$lines = file($url);
foreach ($lines as $line_num => $line) {
$line = str_replace("PRODID:FH Technikum Wien","PRODID:FH Technikum Wien\nX-WR-TIMEZONE:Europe/Vienna",$line);
echo $line;
}
?>
Statt dem xyz in der 2. Zeile müsst ihr eine veränderte Version der ICal URL angeben. Ich erkläre es hier an meinem Beispiel: meine ICAL URL lautet
https://cis.technikum-wien.at/cis/private/lvplan/stpl_kalender.php?type=student&pers_uid=tm09m002&ort_kurzbz=&stg_kz=301&sem=2&ver=B&grp=%20&gruppe_kurzbz=&begin=1265324400&ende=1278280800&format=ical&version=2&target=ical
Nun fügt ihr zwischen dem https:// und dem cis.technium-wien.at euren Usernamen und euer Passwort ein und zwar so, dass ihr username:passwort@ schreibt. In meinem Beispiel (natürlich nicht mit meinem echten Passwort) sieht das dann so aus:
https://tm09m002:MeinGenialesPasswort@cis.technikum-wien.at/cis/private/lvplan/stpl_kalender.php?type=student&pers_uid=tm09m002&ort_kurzbz=&stg_kz=301&sem=2&ver=B&grp=%20&gruppe_kurzbz=&begin=1265324400&ende=1278280800&format=ical&version=2&target=ical
Damit seid ihr auch schon fast fertig. Ihr speichert die PHP Datei ab. Der Name der Datei ist irrelevant, nennt sie allerdings einfachhalber “fhcalendar.php” Diese “fhcalendar.php” ladet Ihr nun auf euren Webspace hoch. Hier nehme ich nun als Beispiel meinen Webspace. Ich lade sie also unter http://www.neysor.net/fhcalendar.php hoch.
Wichtig: Keine Angst, euer Passwort ist über diese URL nicht lesbar, allerdings euer Kalender! Deswegen, solltet ihr die Adresse geheimhalten, falls ihr nicht wollt, dass man euren Kalender lesen kann. (und deshalb werdet ihr unter der URL auch nicht meinen Kalender finden
)
Diese URL gebt ihr nun im Menü bei Google Kalendar an (Hinzufügen->Über URL hinzufügen) und schon habt ihr den FH Kalender immer synchron. Das ganze müsst ihr jedes Semester wiederholen (bzw. die URL anpassen), da sich die Adresse der ICal Datei pro Semester ändert.
Jetzt zur kurzen Erklärung was passiert:
Die fhcalender.php liest einfach die ICal Datei aus und gibt sie genau so wieder. Durch das username:passwort@ erledigt die PHP Datei den Login für euch.
Die zusätzliche Funktion “string_replace” fügt nur das Attribut der Zeitzone hinzu. Google Kalender stellt sonst alle Termine eine Stunde vor, weil er denkt, dass die Ical Datei in Zeitzone +0 ist und nicht +1 wie in eurem Kalender.
Comment