Calendar date format is now yyyy-mm-dd because that is the
authorArt Cancro <ajc@citadel.org>
Mon, 29 Sep 2008 16:23:07 +0000 (16:23 +0000)
committerArt Cancro <ajc@citadel.org>
Mon, 29 Sep 2008 16:23:07 +0000 (16:23 +0000)
most 'international' format I can think of.  If someone wants to
go through the trouble of figuring out the date format for every
locale and passing it through, go ahead, otherwise we'll leave it
this way.  We still need to pass the language through to the
datepicker.

webcit/calendar_tools.c
webcit/event.c
webcit/static/wclib.js

index 45fcef8d2e03b3d387e7fecd40c8ee84b2f828c3..23dd53524b8f435ce131a47aa96b29202c2f671f 100644 (file)
@@ -8,7 +8,7 @@
 #include "webserver.h"
 #include "time.h"
 
-/** Hour strings */
+/* Hour strings */
 char *hourname[] = {
        "12am", "1am", "2am", "3am", "4am", "5am", "6am",
        "7am", "8am", "9am", "10am", "11am", "12pm",
@@ -16,8 +16,7 @@ char *hourname[] = {
        "7pm", "8pm", "9pm", "10pm", "11pm"
 };
 
-/**
- * \brief display and edit date/time
+/*
  * The display_icaltimetype_as_webform() and icaltime_from_webform() functions
  * handle the display and editing of date/time properties in web pages.  The
  * first one converts an icaltimetype into valid HTML markup -- a series of form
@@ -28,15 +27,12 @@ char *hourname[] = {
  * property (for example, a start and end time) by ensuring the field names are
  * unique within the form.
  *
- * \todo NOTE: These functions assume that the icaltimetype being edited is in UTC, and
+ * NOTE: These functions assume that the icaltimetype being edited is in UTC, and
  * will convert to/from local time for editing.  "local" in this case is assumed
  * to be the time zone in which the WebCit server is running.  A future improvement
  * might be to allow the user to specify his/her timezone.
- * \param t the time we want to parse
- * \param prefix ???? \todo
  */
 
-
 void display_icaltimetype_as_webform(struct icaltimetype *t, char *prefix) {
        int i;
        time_t now;
@@ -69,7 +65,7 @@ void display_icaltimetype_as_webform(struct icaltimetype *t, char *prefix) {
        wprintf("\" id=\"");
        wprintf(prefix);
        wprintf("\" value=\"");
-       wc_strftime(timebuf, 32, "%d/%m/%Y", &tm);
+       wc_strftime(timebuf, 32, "%Y-%m-%d", &tm);
        wprintf(timebuf);
        wprintf("\">");
        wprintf("<script type=\"text/javascript\">");
@@ -110,11 +106,9 @@ void display_icaltimetype_as_webform(struct icaltimetype *t, char *prefix) {
        wprintf("</SELECT>\n");
 }
 
-/**
- *\brief Get time from form
+/*
+ * Get time from form
  * get the time back from the user and convert it into internal structs.
- * \param t our time element
- * \param prefix whats that\todo ????
  */
 void icaltime_from_webform(struct icaltimetype *t, char *prefix) {
        char datebuf[32];
@@ -132,7 +126,7 @@ void icaltime_from_webform(struct icaltimetype *t, char *prefix) {
        struct icaltimetype t2;
        
        
-       strptime((char*)BSTR(prefix), "%d/%m/%Y", &tm);
+       strptime((char*)BSTR(prefix), "%Y-%m-%d", &tm);
        sprintf(vname, "%s_hour", prefix);      hour = IBSTR(vname);
        sprintf(vname, "%s_minute", prefix);    minute = IBSTR(vname);
        tm.tm_hour = hour;
@@ -143,13 +137,10 @@ void icaltime_from_webform(struct icaltimetype *t, char *prefix) {
 }
 
 
-/**
- *\brief Get time from form
+/*
+ * Get time from form
  * get the time back from the user and convert it into internal structs.
- * \param t our time element
- * \param prefix whats that\todo ????
  */
-
 void icaltime_from_webform_dateonly(struct icaltimetype *t, char *prefix) {
        struct tm tm;
        /* Stuff tm with some zero values */
@@ -160,7 +151,7 @@ void icaltime_from_webform_dateonly(struct icaltimetype *t, char *prefix) {
        tm.tm_mon = 0;
        time_t tm_t;
        struct icaltimetype t2;         
-       strptime((char *)BSTR(prefix), "%d/%m/%Y", &tm);
+       strptime((char *)BSTR(prefix), "%Y-%m-%d", &tm);
        tm_t = mktime(&tm);
        t2 = icaltime_from_timet(tm_t, 1);
        memcpy(t, &t2, sizeof(struct icaltimetype));
@@ -168,7 +159,7 @@ void icaltime_from_webform_dateonly(struct icaltimetype *t, char *prefix) {
 
 
 /**
- * \brief Render PAPSTAT
+ * \brief Render PARTSTAT
  * Render a PARTSTAT parameter as a string (and put it in parentheses)
  * \param buf the string to put it to
  * \param attendee the attendee to textify
@@ -220,11 +211,8 @@ void partstat_as_string(char *buf, icalproperty *attendee) {
 }
 
 
-/**
- * \brief embedd
+/*
  * Utility function to encapsulate a subcomponent into a full VCALENDAR
- * \param subcomp the component to encapsulate
- * \returns the meta object ???
  */
 icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp) {
        icalcomponent *encaps;
@@ -236,7 +224,7 @@ icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp) {
                return NULL;
        }
 
-       /**
+       /*
         * If we're already looking at a full VCALENDAR component,
         * don't bother ... just return itself.
         */
@@ -244,7 +232,7 @@ icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp) {
                return subcomp;
        }
 
-       /** Encapsulate the VEVENT component into a complete VCALENDAR */
+       /* Encapsulate the VEVENT component into a complete VCALENDAR */
        encaps = icalcomponent_new(ICAL_VCALENDAR_COMPONENT);
        if (encaps == NULL) {
                lprintf(3, "%s:%d: Error - could not allocate component!\n",
@@ -252,23 +240,21 @@ icalcomponent *ical_encapsulate_subcomponent(icalcomponent *subcomp) {
                return NULL;
        }
 
-       /** Set the Product ID */
+       /* Set the Product ID */
        icalcomponent_add_property(encaps, icalproperty_new_prodid(PRODID));
 
-       /** Set the Version Number */
+       /* Set the Version Number */
        icalcomponent_add_property(encaps, icalproperty_new_version("2.0"));
 
-       /** Encapsulate the subcomponent inside */
+       /* Encapsulate the subcomponent inside */
        /* lprintf(9, "Doing the encapsulation\n"); */
        icalcomponent_add_component(encaps, subcomp);
 
-       /** Convert all timestamps to UTC so we don't have to deal with
+       /* Convert all timestamps to UTC so we don't have to deal with
         * stupid VTIMEZONE crap.
         */
        ical_dezonify(encaps);
 
-       /** Return the object we just created. */
+       /* Return the object we just created. */
        return(encaps);
 }
-
-
index cb1162e03ec5bb5246f0a0860544df95e12d7f41..6034e7087a20301913f0f6fbe12dea9140465d08 100644 (file)
@@ -450,8 +450,9 @@ void display_edit_individual_event(icalcomponent *supplied_vevent, long msgnum,
        wprintf("<select name=\"freq\" id=\"freq_selector\" size=\"1\" "
                "onChange=\"RecurrenceShowHide();\">\n");
        for (i=0; i<(sizeof frequency_units / sizeof(char *)); ++i) {
-               wprintf("<option %s value=\"%d\">%s</option>\n",
-                       ((i == recur.freq) ? "selected" : ""),
+               wprintf("<option %s%svalue=\"%d\">%s</option>\n",
+                       ((i == recur.freq) ? "selected " : ""),
+                       (((i == recur.freq) || ((i>=3)&&(i<=5))) ? "" : "disabled "),
                        i,
                        frequency_units[i]
                );
index 00d6c577ff80b79a150c92921af4d8588d6c6f31..d930c64ea126230a5d50ba82a7294ee43076cc06 100644 (file)
@@ -964,7 +964,8 @@ function attachDatePicker(relative) {
        var dpck = new DatePicker({
        relative: relative,
        language: 'en', // fix please
-       disableFutureDate: false
+       disableFutureDate: false,
+       dateFormat: [ ["yyyy", "mm", "dd"], "-"],
        });
        document.getElementById(relative).dpck = dpck; // attach a ref to it
 }