forked from owncloud-archive/calendar
-
Notifications
You must be signed in to change notification settings - Fork 0
/
export.php
30 lines (30 loc) · 1.1 KB
/
export.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
<?php
/**
* Copyright (c) 2012 Georg Ehrke <ownclouddev at georgswebsite dot de>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
*/
OCP\User::checkLoggedIn();
OCP\App::checkAppEnabled('calendar');
$cal = isset($_GET['calid']) ? $_GET['calid'] : null;
$event = isset($_GET['eventid']) ? $_GET['eventid'] : null;
if(!is_null($cal)) {
$calendar = OC_Calendar_App::getCalendar($cal, true, true);
if(!$calendar) {
header('HTTP/1.0 403 Forbidden');
exit;
}
header('Content-Type: text/calendar');
header('Content-Disposition: inline; filename=' . str_replace(' ', '-', $calendar['displayname']) . '.ics');
echo OC_Calendar_Export::export($cal, OC_Calendar_Export::CALENDAR);
}elseif(!is_null($event)) {
$data = OC_Calendar_App::getEventObject($_GET['eventid'], true, true);
if(!$data) {
header('HTTP/1.0 403 Forbidden');
exit;
}
header('Content-Type: text/calendar');
header('Content-Disposition: inline; filename=' . str_replace(' ', '-', $data['summary']) . '.ics');
echo OC_Calendar_Export::export($event, OC_Calendar_Export::EVENT);
}