2 * Copyright (c) 1996-2010 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 as
6 * published by the Free Software Foundation; either version 3 of the
7 * License, or (at your option) any later version.
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.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
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,
67 int calendar_Cleanup(void **ViewSpecific);
68 int __calendar_Cleanup(void **ViewSpecific);
70 void render_calendar_view(calview *c);
71 void display_edit_individual_event(icalcomponent *supplied_vtodo, long msgnum, char *from,
72 int unread, calview *calv);
73 void save_individual_event(icalcomponent *supplied_vtodo, long msgnum, char *from,
74 int unread, calview *calv);
75 void ical_dezonify(icalcomponent *cal);
77 int tasks_LoadMsgFromServer(SharedMessageStatus *Stat,
83 void display_edit_task(void);
84 void display_edit_event(void);
86 icaltimezone *get_default_icaltimezone(void);
87 void display_icaltimetype_as_webform(struct icaltimetype *, char *, int);
88 void icaltime_from_webform(struct icaltimetype *result, char *prefix);
89 void icaltime_from_webform_dateonly(struct icaltimetype *result, char *prefix);
90 void partstat_as_string(char *buf, icalproperty *attendee);
91 icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp);
92 void check_attendee_availability(icalcomponent *supplied_vevent);
93 int ical_ctdl_is_overlap(
94 struct icaltimetype t1start,
95 struct icaltimetype t1end,
96 struct icaltimetype t2start,
97 struct icaltimetype t2end