]> code.citadel.org Git - citadel.git/blobdiff - webcit/webcit.h
Removed monthname() and replaced with proper strftime() calls.
[citadel.git] / webcit / webcit.h
index b844ef949c1388e0860fcfcc127c3f0ee35d0b65..da0959ff2b88a4144b337717a6da8c4fd00b9534 100644 (file)
@@ -1,5 +1,9 @@
 /* $Id$ */
 
+/** we need _GNU_SOURCE for various functions arround the NLS-Stuff */
+#define _GNU_SOURCE
+
+
 #include <ctype.h>
 #include <stdlib.h>
 #ifdef HAVE_UNISTD_H
 #include <iconv.h>
 #endif
 
-#include "gettext.h"
-
-#if ENABLE_NLS
+#ifdef ENABLE_NLS
+#include <libintl.h>
 #include <locale.h>
+extern locale_t wc_locales[];
 #define _(string)      gettext(string)
 #else
 #define _(string)      (string)
@@ -371,6 +375,7 @@ struct wcsession {
        int num_cal;                              /**<  ??? todo */
 #endif                                                                                 
        struct wc_attachment *first_attachment;   /**<  ??? todo */
+       char last_chat_user[256];                 /**< ??? todo */
        char ImportantMessage[SIZ];               /**<   ??? todo */
        int ctdl_pid;                             /**< Session ID on the Citadel server */
        char httpauth_user[256];                      /**< only for GroupDAV sessions */
@@ -412,6 +417,7 @@ struct serv_info serv_info;
 extern char floorlist[128][SIZ];
 extern char *axdefs[];
 extern char *ctdlhost, *ctdlport;
+extern int http_port;
 extern char *server_cookie;
 extern int is_https;
 extern int setup_wizard;
@@ -476,10 +482,12 @@ void embed_main_menu(void);
 void serv_read(char *buf, int bytes);
 int haschar(char *, char);
 void readloop(char *oper);
+void read_message(long msgnum, int printable_view, char *section);
 void embed_message(char *msgnum_as_string);
 void print_message(char *msgnum_as_string);
 void display_headers(char *msgnum_as_string);
-void text_to_server(char *ptr, int convert_to_html);
+void text_to_server(char *ptr);
+void text_to_server_qp(char *ptr);
 void display_enter(void);
 void post_message(void);
 void confirm_delete_msg(void);
@@ -542,10 +550,11 @@ void display_menubar(int);
 void smart_goto(char *);
 void worker_entry(void);
 void session_loop(struct httprequest *);
+size_t wc_strftime(char *s, size_t max, const char *format, const struct tm *tm);
 void fmt_date(char *buf, time_t thetime, int brief);
 void fmt_time(char *buf, time_t thetime);
 void httpdate(char *buf, time_t thetime);
-time_t httpdate_to_timestamp(const char *buf);
+time_t httpdate_to_timestamp(char *buf);
 void end_webcit_session(void);
 void page_popup(void);
 void chat_recv(void);
@@ -585,7 +594,7 @@ void display_addressbook(long msgnum, char alpha);
 void offer_start_page(void);
 void convenience_page(char *titlebarcolor, char *titlebarmsg, char *messagetext);
 void change_start_page(void);
-void output_html(char *);
+void output_html(char *, int);
 void display_floorconfig(char *);
 void delete_floor(void);
 void create_floor(void);
@@ -599,6 +608,7 @@ void cal_process_attachment(char *part_source, long msgnum, char *cal_partnum);
 void display_calendar(long msgnum);
 void display_task(long msgnum);
 void display_note(long msgnum);
+void updatenote(void);
 void do_calendar_view(void);
 void do_tasks_view(void);
 void free_calendar_buffer(void);
@@ -607,6 +617,7 @@ int load_msg_ptrs(char *servcmd, int with_headers);
 void CtdlEncodeBase64(char *dest, const char *source, size_t sourcelen);
 int CtdlDecodeBase64(char *dest, const char *source, size_t length);
 void free_attachments(struct wcsession *sess);
+void free_march_list(struct wcsession *wcf);
 void set_room_policy(void);
 void display_inetconf(void);
 void save_inetconf(void);
@@ -671,8 +682,13 @@ void httplang_to_locale(char *LocaleString);
 void tabbed_dialog(int num_tabs, char *tabnames[]);
 void begin_tab(int tabnum, int num_tabs);
 void end_tab(int tabnum, int num_tabs);
+void str_wiki_index(char *s);
 void display_wiki_page(void);
 
+#ifdef HAVE_ICONV
+iconv_t ctdl_iconv_open(const char *tocode, const char *fromcode);
+#endif
+
 void embed_room_banner(char *, int);
 
 /* navbar types that can be passed to embed_room_banner */
@@ -705,18 +721,20 @@ void utf8ify_rfc822_string(char *buf);
 void begin_burst(void);
 void end_burst(void);
 
-extern char *ascmonths[];
-extern char *hourname[];
+extern char *hourname[];       /**< Names of hours (12am, 1am, etc.) */
+
 void http_datestring(char *buf, size_t n, time_t xtime);
 
-/* Views (from citadel.h) */
-#define        VIEW_BBS                0       /* Traditional Citadel BBS view */
-#define VIEW_MAILBOX           1       /* Mailbox summary */
-#define VIEW_ADDRESSBOOK       2       /* Address book view */
-#define VIEW_CALENDAR          3       /* Calendar view */
-#define VIEW_TASKS             4       /* Tasks view */
-#define VIEW_NOTES             5       /* Notes view */
-#define VIEW_WIKI              6       /* Wiki view */
+
+/** Views (from citadel.h) */
+#define        VIEW_BBS                0       /**< Traditional Citadel BBS view */
+#define VIEW_MAILBOX           1       /**< Mailbox summary */
+#define VIEW_ADDRESSBOOK       2       /**< Address book view */
+#define VIEW_CALENDAR          3       /**< Calendar view */
+#define VIEW_TASKS             4       /**< Tasks view */
+#define VIEW_NOTES             5       /**<  Notes view */
+#define VIEW_WIKI              6       /**<  Wiki view */
+#define VIEW_CALBRIEF          7       /**< Brief Calendar view */
 
 
 /* These should be empty, but we have them for testing */