Readloop remove special cases
[citadel.git] / webcit / calendar_view.c
index 89f15392cae8773a9d01cbe6efd99ee9e38630b5..c8820b22c6333092e972889fc79f4bfaae8b7e6f 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * Handles the HTML display of calendar items.
  *
- * Copyright (c) 1996-2010 by the citadel.org team
+ * Copyright (c) 1996-2011 by the citadel.org team
  *
  * This program is open source software.  You can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -188,7 +188,7 @@ void calendar_month_view_display_events(int year, int month, int day)
        time_t tt;
 
        if (GetCount(WCC->disp_cal_items) == 0) {
-               wc_printf("<br><br><br>\n");
+               wc_printf("<br>\n");
                return;
        }
 
@@ -259,6 +259,14 @@ void calendar_month_view_display_events(int year, int month, int day)
                 * If we determined that this event occurs today, then display it.
                 */
                if (show_event) {
+
+                       /* time_t logtt = icaltime_as_timet(t);
+                       syslog(LOG_DEBUG, "Match on %04d-%02d-%02d for event %x%s on %s",
+                               year, month, day,
+                               (int)Cal, ((all_day_event) ? " (all day)" : ""),
+                               ctime(&logtt)
+                       ); */
+
                        p = icalcomponent_get_first_property(Cal->cal, ICAL_SUMMARY_PROPERTY);
                        if (p == NULL) {
                                p = icalproperty_new_summary(_("Untitled Event"));
@@ -416,7 +424,6 @@ void calendar_month_view_brief_events(time_t thetime, const char *daycolor) {
        icalproperty *e;
        struct icaltimetype t;
        disp_cal *Cal;
-       int month, day, year;
        int all_day_event = 0;
        char *timeformat;
        int time_format;
@@ -427,9 +434,6 @@ void calendar_month_view_brief_events(time_t thetime, const char *daycolor) {
        else timeformat="%I:%M %p";
 
        localtime_r(&thetime, &today_tm);
-       month = today_tm.tm_mon + 1;
-       day = today_tm.tm_mday;
-       year = today_tm.tm_year + 1900;
 
        Pos = GetNewHashPos(WCC->disp_cal_items, 0);
        while (GetNextHashPos(WCC->disp_cal_items, Pos, &hklen, &HashKey, &vCal)) {
@@ -578,7 +582,7 @@ void calendar_month_view(int year, int month, int day) {
        localtime_r(&previous_month, &tm);
        wc_printf("<a href=\"readfwd?calview=month?year=%d?month=%d?day=1\">",
                (int)(tm.tm_year)+1900, tm.tm_mon + 1);
-       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/prevdate_32x.gif\" border=\"0\"></a>\n", _("previous"));
+       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/webcit_icons/essen/32x32/back.png\" border=\"0\"></a>\n", _("previous"));
 
        wc_strftime(colheader_label, sizeof colheader_label, "%B", &starting_tm);
        wc_printf("&nbsp;&nbsp;"
@@ -590,7 +594,7 @@ void calendar_month_view(int year, int month, int day) {
        localtime_r(&next_month, &tm);
        wc_printf("<a href=\"readfwd?calview=month?year=%d?month=%d?day=1\">",
                (int)(tm.tm_year)+1900, tm.tm_mon + 1);
-       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/nextdate_32x.gif\" border=\"0\"></A>\n", _("next"));
+       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/webcit_icons/essen/32x32/forward.png\" border=\"0\"></A>\n", _("next"));
 
        wc_printf("</td></tr></table>\n");
 
@@ -714,7 +718,7 @@ void calendar_brief_month_view(int year, int month, int day) {
        localtime_r(&previous_month, &tm);
        wc_printf("<a href=\"readfwd?calview=month?year=%d?month=%d?day=1\">",
                (int)(tm.tm_year)+1900, tm.tm_mon + 1);
-       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/prevdate_32x.gif\" border=\"0\"></a>\n", _("previous"));
+       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/webcit_icons/essen/32x32/back.png\" border=\"0\"></a>\n", _("previous"));
 
        wc_strftime(month_label, sizeof month_label, "%B", &tm);
        wc_printf("&nbsp;&nbsp;"
@@ -726,7 +730,7 @@ void calendar_brief_month_view(int year, int month, int day) {
        localtime_r(&next_month, &tm);
        wc_printf("<a href=\"readfwd?calview=month?year=%d?month=%d?day=1\">",
                (int)(tm.tm_year)+1900, tm.tm_mon + 1);
-       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/nextdate_32x.gif\" border=\"0\"></a>\n", _("next"));
+       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/webcit_icons/essen/32x32/forward.png\" border=\"0\"></a>\n", _("next"));
 
        wc_printf("</td></tr></table>\n");
 
@@ -1175,18 +1179,14 @@ void calendar_day_view(int year, int month, int day) {
        if (hourlabel > (timeline - 2)) hourlabel = timeline - 2;
 
        for (hour = 0; hour < daystart; ++hour) {       /* could do HEIGHT=xx */
-               wc_printf("<dt class=\"extrahour\"      "
-                       "style=\"               "
-                       "position: absolute;    "
-                       "top: %dpx; left: 0px;  "
-                       "height: %dpx;          "
-                       "font-size: %dpx;       "
-                       "\" >                   "
+               wc_printf("<dt class=\"extrahour\">"
                        "<a href=\"display_edit_event?msgnum=0"
                        "?calview=day?year=%d?month=%d?day=%d?hour=%d?minute=0\">",
+/* TODO: what have these been used for?
                        (hour * extratimeline ),
                        extratimeline,
                        extrahourlabel,
+*/
                        year, month, day, hour
                        );
 
@@ -1206,18 +1206,14 @@ void calendar_day_view(int year, int month, int day) {
        gap = daystart * extratimeline;
 
         for (hour = daystart; hour <= dayend; ++hour) {       /* could do HEIGHT=xx */
-                wc_printf("<dt class=\"hour\"     "
-                        "style=\"               "
-                        "position: absolute;    "
-                        "top: %ldpx; left: 0px; "
-                        "height: %dpx;          "
-                       "font-size: %dpx;       "
-                        "\" >                   "
+                wc_printf("<dt class=\"hour\">"
                         "<a href=\"display_edit_event?msgnum=0?calview=day"
                         "?year=%d?month=%d?day=%d?hour=%d?minute=0\">",
+/*TODO: what have these been used for?
                         gap + ((hour - daystart) * timeline ),
                        timeline,
                        hourlabel,
+*/
                         year, month, day, hour
                        );
 
@@ -1237,18 +1233,14 @@ void calendar_day_view(int year, int month, int day) {
        gap = gap + ((dayend - daystart + 1) * timeline);
 
         for (hour = (dayend + 1); hour < 24; ++hour) {       /* could do HEIGHT=xx */
-                wc_printf("<dt class=\"extrahour\"     "
-                        "style=\"               "
-                        "position: absolute;    "
-                        "top: %ldpx; left: 0px; "
-                        "height: %dpx;          "
-                       "font-size: %dpx;       "
-                        "\" >                   "
+                wc_printf("<dt class=\"extrahour\">"
                         "<a href=\"display_edit_event?msgnum=0?calview=day"
                         "?year=%d?month=%d?day=%d?hour=%d?minute=0\">",
+/*TODO: what have these been used for?
                         gap + ((hour - dayend - 1) * extratimeline ),
                        extratimeline,
                        extrahourlabel,
+*/
                         year, month, day, hour
                 );
 
@@ -1294,7 +1286,7 @@ void calendar_day_view(int year, int month, int day) {
        wc_printf("<td align=\"center\">");
        wc_printf("<a href=\"readfwd?calview=day?year=%d?month=%d?day=%d\">",
                yesterday.year, yesterday.month, yesterday.day);
-       wc_printf("<img alt=\"previous\" align=\"middle\" src=\"static/prevdate_32x.gif\" border=\"0\"></a>");
+       wc_printf("<img alt=\"previous\" align=\"middle\" src=\"static/webcit_icons/essen/32x32/back.png\" border=\"0\"></a>");
        wc_printf("</td>");
 
        wc_strftime(d_str, sizeof d_str,
@@ -1312,7 +1304,7 @@ void calendar_day_view(int year, int month, int day) {
        wc_printf("<td align=\"center\">");
        wc_printf("<a href=\"readfwd?calview=day?year=%d?month=%d?day=%d\">",
                tomorrow.year, tomorrow.month, tomorrow.day);
-       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/nextdate_32x.gif\""
+       wc_printf("<img alt=\"%s\" align=\"middle\" src=\"static/webcit_icons/essen/32x32/forward.png\""
                " border=\"0\"></a>\n", _("next"));
        wc_printf("</td>");
 
@@ -1393,7 +1385,7 @@ int calendar_summary_view(void) {
                                                wc_printf("<a href=\"display_edit_task"
                                                        "?msgnum=%ld"
                                                        "?return_to_summary=1"
-                                                       "?gotofirst=",
+                                                       "?go=",
                                                        Cal->cal_msgnum
                                                );
                                                escputs(ChrPtr(WCC->CurRoom.name));
@@ -1406,7 +1398,7 @@ int calendar_summary_view(void) {
                                                        "?year=%d"
                                                        "?month=%d"
                                                        "?day=%d"
-                                                       "?gotofirst=",
+                                                       "?go=",
                                                        Cal->cal_msgnum,
                                                        today_tm.tm_year + 1900,
                                                        today_tm.tm_mon + 1,
@@ -1437,7 +1429,9 @@ int calendar_GetParamsGetServerCall(SharedMessageStatus *Stat,
                                    void **ViewSpecific,
                                    long oper,
                                    char *cmd,
-                                   long len)
+                                   long len,
+                                   char *filter,
+                                   long flen)
 {
        wcsession *WCC = WC;
        calview *c;
@@ -1545,3 +1539,10 @@ int calendar_RenderView_or_Tail(SharedMessageStatus *Stat,
        DeleteHash(&WC->disp_cal_items);
        return 0;
 }
+
+void 
+InitModule_CALENDAR_VIEW
+(void)
+{
+       WebcitAddUrlHandler(HKEY("mini_calendar"), "", 0, ajax_mini_calendar, AJAX);
+}