2 * Copyright (c) 1996-2012 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.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
19 #ifndef __CALENDAR_H__
20 #define __CALENDAR_H__
22 * calview contains data passed back and forth between the message fetching loop
23 * and the calendar view renderer.
33 typedef struct _calview {
42 typedef void (*IcalCallbackFunc)(icalcomponent *, long, char*, int, calview *);
44 void display_individual_cal(icalcomponent *cal, long msgnum, char *from, int unread, calview *calv);
45 void load_ical_object(long msgnum, int unread,
46 icalcomponent_kind which_kind,
47 IcalCallbackFunc CallBack,
52 int calendar_LoadMsgFromServer(SharedMessageStatus *Stat,
57 int calendar_RenderView_or_Tail(SharedMessageStatus *Stat,
61 int calendar_GetParamsGetServerCall(SharedMessageStatus *Stat,
69 int calendar_Cleanup(void **ViewSpecific);
70 int __calendar_Cleanup(void **ViewSpecific);
72 void render_calendar_view(calview *c);
73 void display_edit_individual_event(icalcomponent *supplied_vtodo, long msgnum, char *from,
74 int unread, calview *calv);
75 void save_individual_event(icalcomponent *supplied_vtodo, long msgnum, char *from,
76 int unread, calview *calv);
77 void ical_dezonify(icalcomponent *cal);
79 int tasks_LoadMsgFromServer(SharedMessageStatus *Stat,
85 void display_edit_task(void);
86 void display_edit_event(void);
88 icaltimezone *get_default_icaltimezone(void);
89 void display_icaltimetype_as_webform(struct icaltimetype *, char *, int);
90 void icaltime_from_webform(struct icaltimetype *result, char *prefix);
91 void icaltime_from_webform_dateonly(struct icaltimetype *result, char *prefix);
92 void partstat_as_string(char *buf, icalproperty *attendee);
93 icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp);
94 void check_attendee_availability(icalcomponent *supplied_vevent);
95 int ical_ctdl_is_overlap(
96 struct icaltimetype t1start,
97 struct icaltimetype t1end,
98 struct icaltimetype t2start,
99 struct icaltimetype t2end