Voor een online kalender heb ik een export functie geschreven die de kalender naar een ics formaat omzet. Deze kan ik downloaden en toevoegen aan outlook. Ook werkt deze functie lekker met google calendar.
Via de link http://www.google.com/cal...R_DE_URL_NAAR_ICS_BESTAND voeg ik het bestand toe. Het bestand is hierin een door php gegenereerd ics bestand. Deze ziet er zo uit:
hierbij worden de variabelen $file_name en $cal_events van te voren aangemaakt en wordt dit bestand geinclude om het juiste resultaat te krijgen. Het probleem alleen is dat als ik deze calendar exporteer naar google dan krijgt deze geen mooie naam. daarvoor in de plaats wordt het iets als g543jhf3fk53@import.calendar.google.com. Als ik er een ICS van maak en deze via dezelfde manier importeer ( dus rechstreeks naar een ics bestand: ( render?cid=blabla.ics )) dan krijgt deze wel de juiste naam. Hoe kan ik dit in php regelen?
Via de link http://www.google.com/cal...R_DE_URL_NAAR_ICS_BESTAND voeg ik het bestand toe. Het bestand is hierin een door php gegenereerd ics bestand. Deze ziet er zo uit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| <?php header("Content-Type: text/Calendar"); header("Content-Disposition: attachment; filename=" . urlencode( $file_name ) . ".ics"); print "BEGIN:VCALENDAR\n"; print "VERSION:2.0\n"; print "X-WR-CALNAME:My Calendar"; print "PRODID:-//My Calendar//" . $file_name . "//EN"; print "CALSCALE:GREGORIAN\n"; print "METHOD:PUBLISH\n"; foreach($cal_events AS $cal_event) { $dtstart = str_replace( "-", "", $cal_event->evdate ); $dtstart .= "T"; $dtstart .= str_replace( ":", "", $cal_event->evtime ); $dtstart .= "Z"; if( $cal_event->evenddate ) { $dtend = str_replace( "-", "", $cal_event->evenddate ); $dtend .= "T"; $dtend .= str_replace( ":", "", $cal_event->evendtime ); $dtend .= "Z"; } print "BEGIN:VEVENT\n"; print "SUMMARY:" . $cal_event->title_en . "\n"; print "DESCRIPTION;ENCODING=QUOTED-PRINTABLE:" . $cal_event->descr_en . "\n"; print "UID:" . $cal_event->id . "\n"; print "CLASS:PUBLIC\n"; print "DTSTART:" . $dtstart . "\n"; print "DTEND:" . $dtend . "\n"; print "END:VEVENT\n"; } print "END:VCALENDAR\n"; ?> |
hierbij worden de variabelen $file_name en $cal_events van te voren aangemaakt en wordt dit bestand geinclude om het juiste resultaat te krijgen. Het probleem alleen is dat als ik deze calendar exporteer naar google dan krijgt deze geen mooie naam. daarvoor in de plaats wordt het iets als g543jhf3fk53@import.calendar.google.com. Als ik er een ICS van maak en deze via dezelfde manier importeer ( dus rechstreeks naar een ics bestand: ( render?cid=blabla.ics )) dan krijgt deze wel de juiste naam. Hoe kan ik dit in php regelen?
AMD Phenom II X6 1090T | 2x 4GB Kingston | Geforce GTX 560TI | Creative I-Trigue L3450