]> code.citadel.org Git - citadel.git/blobdiff - webcit/messages.c
Big change to calendar view functions. We now declare
[citadel.git] / webcit / messages.c
index 879bf023f7e240bca10ccb7164798f6e5333ddc1..ce6a3dc795f7395ca06f9469569f0343a5f367f1 100644 (file)
@@ -1305,7 +1305,7 @@ void read_message(long msgnum, int printable_view, char *section) {
 
        /* HTML is fun, but we've got to strip it first */
        else if (!strcasecmp(mime_content_type, "text/html")) {
-               output_html(mime_charset, (WC->wc_view == VIEW_WIKI ? 1 : 0));
+               output_html(mime_charset, (WC->wc_view == VIEW_WIKI ? 1 : 0), msgnum);
        }
 
        /* Unknown weirdness */
@@ -1695,8 +1695,8 @@ void pullquote_message(long msgnum, int forward_attachments, int include_headers
                while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
                        int len;
                        len = strlen(buf);
-                       if (buf[len-1] == '\n') buf[--len] = 0;
-                       if (buf[len-1] == '\r') buf[--len] = 0;
+                       if ((len > 0) && (buf[len-1] == '\n')) buf[--len] = 0;
+                       if ((len > 0) && (buf[len-1] == '\r')) buf[--len] = 0;
 
 #ifdef HAVE_ICONV
                        if (ic != (iconv_t)(-1) ) {
@@ -1818,7 +1818,7 @@ void display_summarized(int num) {
        wprintf("<tr id=\"m%ld\" style=\"font-weight:%s;\" "
                "onMouseDown=\"CtdlMoveMsgMouseDown(event,%ld)\">",
                WC->summ[num].msgnum,
-               (WC->summ[num].is_new ? "bold" : "normal"),
+               ((WC->summ[num].is_new) ? "bold" : "normal"),
                WC->summ[num].msgnum
        );
 
@@ -2118,9 +2118,9 @@ void do_addrbook_view(struct addrbookent *addrbook, int num_ab) {
        
                wprintf("<td>");
 
-               wprintf("<a href=\"readfwd?startmsg=%ld&is_singlecard=1",
+               wprintf("<a href=\"readfwd?startmsg=%ld?is_singlecard=1",
                        addrbook[i].ab_msgnum);
-               wprintf("?maxmsgs=1&is_summary=0&alpha=%s\">", bstr("alpha"));
+               wprintf("?maxmsgs=1?is_summary=0?alpha=%s\">", bstr("alpha"));
                vcard_n_prettyize(addrbook[i].ab_name);
                escputs(addrbook[i].ab_name);
                wprintf("</a></td>\n");
@@ -2445,6 +2445,7 @@ void readloop(char *oper)
        int is_addressbook = 0;
        int is_singlecard = 0;
        int is_calendar = 0;
+       struct calview calv;
        int is_tasks = 0;
        int is_notes = 0;
        int is_bbview = 0;
@@ -2567,6 +2568,7 @@ void readloop(char *oper)
                is_calendar = 1;
                strcpy(cmd, "MSGS ALL|||1");
                maxmsgs = 32767;
+               parse_calendar_view_request(&calv);
        }
        if (WCC->wc_default_view == VIEW_TASKS) {               /**< tasks */
                is_tasks = 1;
@@ -2646,9 +2648,9 @@ void readloop(char *oper)
                        "<table cellspacing=0 style=\"width:100%%\">"
                        "<tr>"
                );
-               wprintf("<th width=%d%%>%s <a href=\"readfwd?startmsg=1&maxmsgs=9999999&is_summary=1&sortby=%s\"><img border=\"0\" src=\"%s\" /></a> </th>\n"
-                       "<th width=%d%%>%s <a href=\"readfwd?startmsg=1&maxmsgs=9999999&is_summary=1&sortby=%s\"><img border=\"0\" src=\"%s\" /></a> </th>\n"
-                       "<th width=%d%%>%s <a href=\"readfwd?startmsg=1&maxmsgs=9999999&is_summary=1&sortby=%s\"><img border=\"0\" src=\"%s\" /></a> \n"
+               wprintf("<th width=%d%%>%s <a href=\"readfwd?startmsg=1?maxmsgs=9999999?is_summary=1?sortby=%s\"><img border=\"0\" src=\"%s\" /></a> </th>\n"
+                       "<th width=%d%%>%s <a href=\"readfwd?startmsg=1?maxmsgs=9999999?is_summary=1?sortby=%s\"><img border=\"0\" src=\"%s\" /></a> </th>\n"
+                       "<th width=%d%%>%s <a href=\"readfwd?startmsg=1?maxmsgs=9999999?is_summary=1?sortby=%s\"><img border=\"0\" src=\"%s\" /></a> \n"
                        "&nbsp;"
                        "<input type=\"submit\" name=\"delete_button\" id=\"delbutton\" "
                        " onClick=\"CtdlDeleteSelectedMessages(event)\" "
@@ -2791,7 +2793,7 @@ void readloop(char *oper)
                                addrbook[num_ab-1].ab_msgnum = WCC->msgarr[a];
                        }
                        else if (is_calendar) {
-                               display_calendar(WCC->msgarr[a], WCC->summ[a].is_new);
+                               load_calendar_item(WCC->msgarr[a], WCC->summ[a].is_new, &calv);
                        }
                        else if (is_tasks) {
                                display_task(WCC->msgarr[a], WCC->summ[a].is_new);
@@ -2947,7 +2949,7 @@ DONE:
        }
 
        if (is_calendar) {
-               do_calendar_view();     /** Render the calendar */
+               render_calendar_view(&calv);
        }
 
        if (is_addressbook) {
@@ -3203,6 +3205,7 @@ void post_message(void)
                             ChrPtr(Wikipage),
                             ChrPtr(my_email_addr),
                             ChrPtr(references));
+               FreeStrBuf(&references);
 
                lprintf(9, "%s\n", CmdBuf);
                serv_puts(ChrPtr(CmdBuf));