/* $Id$ */
+#ifdef HAVE_ZLIB_H
+#include <zlib.h>
+#endif
+
+#ifdef HAVE_ICAL_H
+#include <ical.h>
+#endif
+
#define SIZ 4096 /* generic buffer size */
#define TRACE fprintf(stderr, "Checkpoint: %s, %d\n", __FILE__, __LINE__)
#define SLEEPING 180 /* TCP connection timeout */
#define WEBCIT_TIMEOUT 900 /* WebCit session timeout */
#define PORT_NUM 2000 /* port number to listen on */
-#define SERVER "WebCit v3.23" /* who's in da house */
+#define SERVER "WebCit v4.00" /* who's in da house */
#define DEVELOPER_ID 0
#define CLIENT_ID 4
-#define CLIENT_VERSION 323
+#define CLIENT_VERSION 400
#define DEFAULT_HOST "localhost" /* Default Citadel server */
#define DEFAULT_PORT "504"
#define LB (1) /* Internal escape chars */
char this_page[SIZ]; /* address of current page */
char http_host[SIZ]; /* HTTP Host: header */
char *preferences;
+#ifdef HAVE_ICAL_H
+ icalcomponent **disp_cal; /* store calendar items for display */
+ long *cal_msgnum; /* store calendar msgids for display */
+ int num_cal;
+#endif
};
#define extract(dest,source,parmnum) extract_token(dest,source,parmnum,'|')
int num_tokens (char *source, char tok);
void extract_token(char *dest, char *source, int parmnum, char separator);
void remove_token(char *source, int parmnum, char separator);
-int decode_base64(char *dest, char *source, size_t length);
+int CtdlDecodeBase64(char *dest, char *source, size_t length);
char *load_mimepart(long msgnum, char *partnum);
int pattern2(char *search, char *patn);
void do_edit_vcard(long, char *, char *);
void rename_floor(void);
void do_listsub(void);
void toggle_self_service(void);
+void summary(void);
+ssize_t write(int fd, const void *buf, size_t count);
+void cal_process_attachment(char *part_source);
+void display_calendar(long msgnum);
+void display_task(long msgnum);
+void do_calendar_view(void);
+
+#ifdef HAVE_ICAL_H
+void display_edit_task(void);
+void save_task(void);
+void display_edit_event(void);
+void save_event(void);
+void display_icaltimetype_as_webform(struct icaltimetype *, char *);
+struct icaltimetype icaltime_from_webform(char *prefix);
+void display_edit_individual_event(icalcomponent *supplied_vtodo, long msgnum);
+void save_individual_event(icalcomponent *supplied_vtodo, long msgnum);
+void generate_new_uid(char *);
+#endif
+
+extern char *months[];
+extern char *days[];