2 * Copyright (c) 1996-2013 by the citadel.org team
4 * This program is open source software. You can redistribute it and/or
5 * modify it under the terms of the GNU General Public License, version 3.
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
13 #ifndef __CALENDAR_H__
14 #define __CALENDAR_H__
16 * calview contains data passed back and forth between the message fetching loop
17 * and the calendar view renderer.
27 typedef struct _calview {
36 typedef void (*IcalCallbackFunc)(icalcomponent *, long, char*, int, calview *);
38 void display_individual_cal(icalcomponent *cal, long msgnum, char *from, int unread, calview *calv);
39 void load_ical_object(long msgnum, int unread,
40 icalcomponent_kind which_kind,
41 IcalCallbackFunc CallBack,
46 int calendar_LoadMsgFromServer(SharedMessageStatus *Stat,
51 int calendar_RenderView_or_Tail(SharedMessageStatus *Stat,
55 int calendar_GetParamsGetServerCall(SharedMessageStatus *Stat,
63 int calendar_Cleanup(void **ViewSpecific);
64 int __calendar_Cleanup(void **ViewSpecific);
66 void render_calendar_view(calview *c);
67 void display_edit_individual_event(icalcomponent *supplied_vtodo, long msgnum, char *from,
68 int unread, calview *calv);
69 void save_individual_event(icalcomponent *supplied_vtodo, long msgnum, char *from,
70 int unread, calview *calv);
71 void ical_dezonify(icalcomponent *cal);
73 int tasks_LoadMsgFromServer(SharedMessageStatus *Stat,
79 void display_edit_task(void);
80 void display_edit_event(void);
82 icaltimezone *get_default_icaltimezone(void);
83 void display_icaltimetype_as_webform(struct icaltimetype *, char *, int);
84 void icaltime_from_webform(struct icaltimetype *result, char *prefix);
85 void icaltime_from_webform_dateonly(struct icaltimetype *result, char *prefix);
86 void partstat_as_string(char *buf, icalproperty *attendee);
87 icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp);
88 void check_attendee_availability(icalcomponent *supplied_vevent);
89 int ical_ctdl_is_overlap(
90 struct icaltimetype t1start,
91 struct icaltimetype t1end,
92 struct icaltimetype t2start,
93 struct icaltimetype t2end