Functions | |
void | display_individual_cal (icalcomponent *cal, long msgnum) |
get items, keep them. If we're reading calendar items, just store them for now. We have to sort and re-output them later when we draw the calendar. | |
void | display_edit_individual_task (icalcomponent *supplied_vtodo, long msgnum) |
void | save_individual_task (icalcomponent *supplied_vtodo, long msgnum) |
void | display_using_handler (long msgnum, char *mimetype, icalcomponent_kind which_kind, void(*callback)(icalcomponent *, long)) |
generic item handler Code common to all display handlers. Given a message number and a MIME type, we load the message and hunt for that MIME type. If found, we load the relevant part, deserialize it into a libical component, filter it for the requested object type, and feed it to the specified handler. | |
void | display_calendar (long msgnum) |
display whole calendar | |
void | display_task (long msgnum) |
display whole taksview | |
void | display_edit_task (void) |
display the editor component for a task | |
void | save_task (void) |
save an edited task | |
void | display_edit_event (void) |
display the editor component for an event | |
void | save_event (void) |
save an edited event | |
void | do_freebusy (char *req) |
freebusy display (for client software) |
void display_individual_cal | ( | icalcomponent * | cal, | |
long | msgnum | |||
) |
get items, keep them. If we're reading calendar items, just store them for now. We have to sort and re-output them later when we draw the calendar.
cal | Our calendar to process | |
msgnum | number of the mesage in our db |
Definition at line 452 of file calendar.c.
Referenced by display_calendar(), and display_task().
void display_edit_individual_task | ( | icalcomponent * | supplied_vtodo, | |
long | msgnum | |||
) |
If we're looking at a fully encapsulated VCALENDAR rather than a VTODO component, attempt to use the first relevant VTODO subcomponent. If there is none, the NULL returned by icalcomponent_get_first_component() will tell the next iteration of this function to create a new one.
Definition at line 471 of file calendar.c.
References display_icaltimetype_as_webform(), escputs(), output_headers(), wDumpContent(), and wprintf().
Referenced by display_edit_task().
void save_individual_task | ( | icalcomponent * | supplied_vtodo, | |
long | msgnum | |||
) |
If we're looking at a fully encapsulated VCALENDAR rather than a VTODO component, attempt to use the first relevant VTODO subcomponent. If there is none, the NULL returned by icalcomponent_get_first_component() will tell the next iteration of this function to create a new one.
Replace values in the component with ones from the form
Give this task a UID if it doesn't have one.
Increment the sequence ID
Encapsulate event into full VCALENDAR component. Clone it first, for two reasons: one, it's easier to just free the whole thing when we're done instead of unbundling, but more importantly, we can't encapsulate something that may already be encapsulated somewhere else.
Probably not necessary; the server will see the UID of the object and delete the old one anyway, but just in case...
If the user clicked 'Delete' then explicitly delete the message.
Go back to the task list
Definition at line 600 of file calendar.c.
References bstr(), generate_uuid(), ical_encapsulate_subcomponent(), icaltime_from_webform(), lprintf(), readloop(), serv_getln(), serv_printf(), and serv_puts().
Referenced by save_task().
void display_using_handler | ( | long | msgnum, | |
char * | mimetype, | |||
icalcomponent_kind | which_kind, | |||
void(*)(icalcomponent *, long) | callback | |||
) |
generic item handler Code common to all display handlers. Given a message number and a MIME type, we load the message and hunt for that MIME type. If found, we load the relevant part, deserialize it into a libical component, filter it for the requested object type, and feed it to the specified handler.
mimetype | mimetyp of our object | |
which_kind | sort of ical type | |
msgnum | number of the mesage in our db | |
callback | a funcion |
Simple components of desired type
Subcomponents of desired type
Definition at line 763 of file calendar.c.
References extract_int(), extract_token(), ical_dezonify(), load_mimepart(), serv_getln(), and serv_puts().
Referenced by display_calendar(), display_edit_event(), display_edit_task(), display_task(), save_event(), and save_task().
void display_calendar | ( | long | msgnum | ) |
display whole calendar
msgnum | number of the mesage in our db |
Definition at line 832 of file calendar.c.
References display_individual_cal(), and display_using_handler().
Referenced by calendar_section().
void display_task | ( | long | msgnum | ) |
display whole taksview
msgnum | number of the mesage in our db |
Definition at line 842 of file calendar.c.
References display_individual_cal(), and display_using_handler().
Referenced by tasks_section().
void display_edit_task | ( | void | ) |
display the editor component for a task
Force change the room if we have to
existing task
new task
Definition at line 851 of file calendar.c.
References bstr(), display_edit_individual_task(), display_using_handler(), and gotoroom().
Referenced by display_enter(), and session_loop().
void do_freebusy | ( | char * | req | ) |
freebusy display (for client software)
req | dunno. ????? |
Definition at line 934 of file calendar.c.
References extract_token(), http_transmit_thing(), lprintf(), output_headers(), read_server_text(), serv_getln(), serv_printf(), unescape_input(), who(), and wprintf().
Referenced by session_loop().