Overview

Packages

  • Kronolith
  • None

Classes

  • Kronolith
  • Kronolith_Ajax_Application
  • Kronolith_Ajax_Imple_ContactAutoCompleter
  • Kronolith_Ajax_Imple_Embed
  • Kronolith_Ajax_Imple_TagActions
  • Kronolith_Ajax_Imple_TagAutoCompleter
  • Kronolith_Api
  • Kronolith_Calendar
  • Kronolith_Calendar_External
  • Kronolith_Calendar_External_Tasks
  • Kronolith_Calendar_Holiday
  • Kronolith_Calendar_Internal
  • Kronolith_Calendar_Remote
  • Kronolith_Calendar_Resource
  • Kronolith_Calendars_Base
  • Kronolith_Calendars_Default
  • Kronolith_Calendars_Kolab
  • Kronolith_Day
  • Kronolith_Driver
  • Kronolith_Driver_Holidays
  • Kronolith_Driver_Horde
  • Kronolith_Driver_Ical
  • Kronolith_Driver_Kolab
  • Kronolith_Driver_Mock
  • Kronolith_Driver_Resource
  • Kronolith_Driver_Sql
  • Kronolith_Event
  • Kronolith_Event_Holidays
  • Kronolith_Event_Horde
  • Kronolith_Event_Ical
  • Kronolith_Event_Kolab
  • Kronolith_Event_Resource
  • Kronolith_Event_Sql
  • Kronolith_Exception
  • Kronolith_Factory_Calendars
  • Kronolith_Factory_Geo
  • Kronolith_Form_CreateCalendar
  • Kronolith_Form_CreateResource
  • Kronolith_Form_CreateResourceGroup
  • Kronolith_Form_DeleteCalendar
  • Kronolith_Form_DeleteResource
  • Kronolith_Form_DeleteResourceGroup
  • Kronolith_Form_EditCalendar
  • Kronolith_Form_EditRemoteCalendar
  • Kronolith_Form_EditResource
  • Kronolith_Form_EditResourceGroup
  • Kronolith_Form_SubscribeRemoteCalendar
  • Kronolith_Form_UnsubscribeRemoteCalendar
  • Kronolith_FreeBusy
  • Kronolith_FreeBusy_View
  • Kronolith_FreeBusy_View_Day
  • Kronolith_FreeBusy_View_Month
  • Kronolith_FreeBusy_View_Week
  • Kronolith_FreeBusy_View_Workweek
  • Kronolith_Geo_Base
  • Kronolith_Geo_Mysql
  • Kronolith_Geo_Sql
  • Kronolith_LoginTasks_SystemTask_Upgrade
  • Kronolith_LoginTasks_Task_PurgeEvents
  • Kronolith_Notification_Listener_AjaxStatus
  • Kronolith_Resource
  • Kronolith_Resource_Base
  • Kronolith_Resource_Group
  • Kronolith_Resource_Single
  • Kronolith_Storage
  • Kronolith_Storage_Kolab
  • Kronolith_Storage_Sql
  • Kronolith_Tagger
  • Kronolith_Test
  • Kronolith_View_Day
  • Kronolith_View_DeleteEvent
  • Kronolith_View_EditEvent
  • Kronolith_View_Event
  • Kronolith_View_ExportEvent
  • Kronolith_View_Month
  • Kronolith_View_Week
  • Kronolith_View_WorkWeek
  • Kronolith_View_Year
  • Overview
  • Package
  • Class
  • Tree
 1: <?php
 2: /**
 3:  * The Kronolith_View_ExportEvent:: class provides an API for exporting
 4:  * events.
 5:  *
 6:  * @author  Jan Schneider <chuck@horde.org>
 7:  * @package Kronolith
 8:  */
 9: class Kronolith_View_ExportEvent
10: {
11:     /**
12:      * @param Kronolith_Event $event
13:      */
14:     public function __construct(Kronolith_Event $event)
15:     {
16:         if (!$event) {
17:             echo '<h3>' . _("Event not found") . '</h3>';
18:             exit;
19:         }
20:         if (is_string($event)) {
21:             echo '<h3>' . $event . '</h3>';
22:             exit;
23:         }
24: 
25:         $iCal = new Horde_Icalendar('2.0');
26: 
27:         if ($event->calendarType == 'internal') {
28:             try {
29:                 $share = $GLOBALS['kronolith_shares']->getShare($event->calendar);
30:                 $iCal->setAttribute('X-WR-CALNAME', $share->get('name'));
31:             } catch (Exception $e) {
32:             }
33:         }
34: 
35:         $iCal->addComponent($event->toiCalendar($iCal));
36:         $content = $iCal->exportvCalendar();
37: 
38:         $GLOBALS['browser']->downloadHeaders(
39:             $event->getTitle() . '.ics',
40:             'text/calendar; charset=UTF-8',
41:             true, strlen($content));
42:         echo $content;
43:         exit;
44:     }
45: 
46: }
47: 
API documentation generated by ApiGen