]> code.citadel.org Git - citadel.git/blobdiff - webcit/webcit.h
* fix dropdown
[citadel.git] / webcit / webcit.h
index 51462a1a40d96f69bc489012e523caf40f4cad40..bfed02edab22994b7421b7c87e507b738e57c138 100644 (file)
@@ -271,6 +271,8 @@ typedef struct _TemplateParam {
        long lvalue;
 } TemplateParam;
 
+/* make a template token a lookup key: */
+#define TKEY(a) Tokens->Params[a]->Start, Tokens->Params[a]->len
 typedef struct _TemplateToken {
        const StrBuf *FileName; /* Reference to print error messages; not to be freed */
        StrBuf *FlatToken;
@@ -393,6 +395,7 @@ void RegisterSortFunc(const char *name, long len,
                      CompareFunc Reverse, 
                      long ContextType);
 
+void dbg_print_longvector(long *LongVector);
 
 /*
  * \brief Values for wcs_type
@@ -533,8 +536,9 @@ enum {
  * One of these is kept for each active Citadel session.
  * HTTP transactions are bound to one at a time.
  */
+typedef struct wcsession wcsession;
 struct wcsession {
-       struct wcsession *next;                 /**< Linked list */
+       wcsession *next;                        /**< Linked list */
        int wc_session;                         /**< WebCit session ID */
        char wc_username[128];                  /**< login name of current user */
        char wc_fullname[128];                  /**< Screen name of current user */
@@ -764,6 +768,9 @@ int YESBSTR(const char *key);
 #define bstr(a) (char*) Bstr(a, sizeof(a) - 1)
 const char *BSTR(const char *key);
 const char *Bstr(const char *key, size_t keylen);
+/* if you want to ease some parts by just parametring yourself... */
+#define putbstr(a, b) PutBstr(a, sizeof(a) - 1, b)
+void PutBstr(const char *key, long keylen, StrBuf *Value);
 
 
 
@@ -813,6 +820,7 @@ typedef struct _readloopstruct {
        ConstStr name;
        readloop_servcmd cmd;
 } readloop_struct;
+void SetAccessCommand(long Oper);
 void readloop(long oper);
 int  read_message(StrBuf *Target, const char *tmpl, long tmpllen, long msgnum, int printable_view, const StrBuf *section);
 void do_addrbook_view(addrbookent *addrbook, int num_ab);
@@ -898,7 +906,6 @@ StrBuf *get_ROOM_PREFS(const char *key, size_t keylen);
 #define set_room_pref(a, b, c) set_ROOM_PREFS(a, sizeof(a) - 1, b, c)
 void set_ROOM_PREFS(const char *key, size_t keylen, StrBuf *value, int save_to_server);
 
-int is_msg_in_mset(char *mset, long msgnum);
 void display_addressbook(long msgnum, char alpha);
 void offer_start_page(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context, int ContextType);
 void convenience_page(char *titlebarcolor, char *titlebarmsg, char *messagetext);
@@ -916,8 +923,8 @@ void render_calendar_view(struct calview *c);
 void do_tasks_view(void);
 void calendar_summary_view(void);
 int load_msg_ptrs(char *servcmd, int with_headers);
-void free_attachments(struct wcsession *sess);
-void free_march_list(struct wcsession *wcf);
+void free_attachments(wcsession *sess);
+void free_march_list(wcsession *wcf);
 void display_rules_editor_inner_div(void);
 void generate_uuid(char *);
 void CtdlMakeTempFileName(char *, int);