diff options
Diffstat (limited to 'inc/iCalFeed.php')
| -rw-r--r-- | inc/iCalFeed.php | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/inc/iCalFeed.php b/inc/iCalFeed.php new file mode 100644 index 0000000..fc30e15 --- /dev/null +++ b/inc/iCalFeed.php @@ -0,0 +1,39 @@ +<?php +require_once __DIR__ . '/../vendor/autoload.php'; + +use Eluceo\iCal\Component\Calendar; +use Eluceo\iCal\Component\Event; + +function iCalFeed() { + + $vCalendar = new Calendar(APP_BASE); + $vCalendar->setName(APP_NAME); + $vCalendar->setTimezone('Europe/Berlin'); + + $tc = new Zeitumstellung(); + + for ( $i=0; $i<3; $i++ ) { + + $vEvent = new Event(); + $vEvent + ->setDtStart(new \DateTime($tc->dateText)) + ->setDtEnd(new \DateTime($tc->dateText)) + ->setNoTime(true) + ->setSummary('Zeitumstellung') + ->setUrl( APP_URL ) + ->setDescription($tc->description) + ->setDescriptionHTML($tc->descriptionHTML); + + $vCalendar->addComponent($vEvent); + + $tc = $tc->next(); + } + + header('Content-Type: text/calendar; charset=utf-8'); + + if ( isset($_REQUEST['download']) && '0' != $_REQUEST['download'] ) { + header('Content-Disposition: attachment; filename="zeitumstellung.ics"'); + } + + echo $vCalendar->render(); +} |
