Handles the HTML display of calendar items.
[Calendaring background]


Functions

void calendar_month_view_display_events (time_t thetime)
 Display one day of a whole month view of a calendar.
void calendar_month_view_brief_events (time_t thetime, const char *daycolor)
 Display one day of a whole month view of a calendar.
void calendar_month_view (int year, int month, int day)
 view one month. pretty view
void calendar_brief_month_view (int year, int month, int day)
 view one month. brief view
void calendar_week_view (int year, int month, int day)
 view one week this should view just one week, but it's not here yet.
void calendar_day_view_display_events (int year, int month, int day, int hour)
 display one day Display events for a particular hour of a particular day. (Specify hour < 0 to show "all day" events)
void calendar_day_view (int year, int month, int day)
 view one day
void calendar_summary_view (void)
 Display today's events.
void free_calendar_buffer (void)
 clean up ical memory
void do_calendar_view (void)
 do the whole calendar page view any part of the calender. decide which way, etc.
time_t get_task_due_date (icalcomponent *vtodo)
 get task due date Helper function for do_tasks_view().
int task_due_cmp (const void *task1, const void *task2)
 Compare the due dates of two tasks (this is for sorting).
void do_tasks_view (void)
 do the whole task view stuff

Function Documentation

void calendar_month_view_display_events ( time_t  thetime  ) 

Display one day of a whole month view of a calendar.

Parameters:
thetime the month we want to see

Only show start/end times if we're actually looking at the VEVENT component. Otherwise it shows bogus dates for e.g. timezones

Definition at line 36 of file calendar_view.c.

References bstr(), escputs(), fmt_date(), wc_strftime(), and wprintf().

Referenced by calendar_month_view().

void calendar_month_view_brief_events ( time_t  thetime,
const char *  daycolor 
)

Display one day of a whole month view of a calendar.

Parameters:
thetime the month we want to see

Todo:
epoch &! daymask

Todo:
: allso ammitime format

Definition at line 193 of file calendar_view.c.

References bstr(), escputs(), get_preference(), wc_strftime(), and wprintf().

Referenced by calendar_brief_month_view().

void calendar_month_view ( int  year,
int  month,
int  day 
)

view one month. pretty view

Parameters:
year the year
month the month
day the actual day we want to see

Determine what day to start. First, back up to the 1st of the month...

Determine previous and next months ... for links

Now back up until we're on a Sunday

Outer table (to get the background color)

Inner table (the real one)

Now do 35 days

Before displaying Sunday, start a new row

put the data here, stupid

After displaying Saturday, end the row

ahead 24 hours

end of inner table

end of outer table

Initialize the bubble tooltips.

Yes, this is as stupid as it looks. Instead of just making the call to btt_enableTooltips() straight away, we have to create a timer event and let it initialize as an event after 1 millisecond. This is to work around a bug in Internet Explorer that causes it to crash if we manipulate the innerHTML of various DOM nodes while the page is still being rendered. See http://www.shaftek.org/blog/archives/000212.html for more information.

Definition at line 300 of file calendar_view.c.

References calendar_month_view_display_events(), wc_strftime(), and wprintf().

Referenced by do_calendar_view().

void calendar_brief_month_view ( int  year,
int  month,
int  day 
)

view one month. brief view

Parameters:
year the year
month the month
day the actual day we want to see

Determine what day to start. First, back up to the 1st of the month...

Determine previous and next months ... for links

Now back up until we're on a Sunday

Outer table (to get the background color)

Inner table (the real one)

Now do 35 days

Before displaying Sunday, start a new CELL

Day Header

put the data of one day here, stupid

After displaying Saturday, end the row

ahead 24 hours

end of inner table

end of outer table

Definition at line 444 of file calendar_view.c.

References calendar_month_view_brief_events(), wc_strftime(), and wprintf().

Referenced by do_calendar_view().

void calendar_week_view ( int  year,
int  month,
int  day 
)

view one week this should view just one week, but it's not here yet.

Todo:
ny implemented
Parameters:
year the year
month the month
day the day which we want to see the week around

Definition at line 572 of file calendar_view.c.

References wprintf().

Referenced by do_calendar_view().

void calendar_day_view_display_events ( int  year,
int  month,
int  day,
int  hour 
)

display one day Display events for a particular hour of a particular day. (Specify hour < 0 to show "all day" events)

Parameters:
year the year
month the month
day the day
hour the hour we want to start displaying?????

Definition at line 586 of file calendar_view.c.

References escputs(), and wprintf().

Referenced by calendar_day_view().

void calendar_day_view ( int  year,
int  month,
int  day 
)

view one day

Parameters:
year the year
month the month
day the day we want to display

Figure out the dates for "yesterday" and "tomorrow" links

Outer table (to get the background color)

Inner table (the real one)

Innermost table (contains hours etc.)

Display events before 8:00 (hour=-1 is all-day events)

Now the middle of the day...

Display events after 5:00...

Begin todays-date-with-left-and-right-arrows

Left arrow

Today's date

Right arrow

End todays-date-with-left-and-right-arrows

Todo:
In the future we might want to put a month-o-matic here

end stuff-on-the-right

end of inner table

end of outer table

Definition at line 666 of file calendar_view.c.

References calendar_day_view_display_events(), get_preference(), wc_strftime(), and wprintf().

Referenced by do_calendar_view().

void free_calendar_buffer ( void   ) 

clean up ical memory

Todo:
this could get troubel with future ical versions

Definition at line 888 of file calendar_view.c.

Referenced by calendar_summary_view(), do_calendar_view(), and do_tasks_view().

void do_calendar_view ( void   ) 

do the whole calendar page view any part of the calender. decide which way, etc.

In case no date was specified, go with today

Now see if a date was specified

How would you like that cooked?

Display the selected view

Free the calendar stuff

Definition at line 904 of file calendar_view.c.

References bstr(), calendar_brief_month_view(), calendar_day_view(), calendar_month_view(), calendar_week_view(), and free_calendar_buffer().

time_t get_task_due_date ( icalcomponent *  vtodo  ) 

get task due date Helper function for do_tasks_view().

Parameters:
vtodo a task to get the due date
Returns:
the date/time due.

If we're looking at a fully encapsulated VCALENDAR rather than a VTODO component, recurse into the data structure until we get a VTODO.

Definition at line 958 of file calendar_view.c.

Referenced by do_tasks_view(), and task_due_cmp().

int task_due_cmp ( const void *  task1,
const void *  task2 
)

Compare the due dates of two tasks (this is for sorting).

Parameters:
task1 first task to compare
task2 second task to compare

Definition at line 993 of file calendar_view.c.

References get_task_due_date().

Referenced by do_tasks_view().

void do_tasks_view ( void   ) 

do the whole task view stuff

Sort them if necessary

Free the list

Definition at line 1011 of file calendar_view.c.

References escputs(), fmt_date(), free_calendar_buffer(), get_task_due_date(), task_due_cmp(), urlescputs(), and wprintf().


Generated on Wed Jun 20 23:13:12 2007 for webcit by  doxygen 1.5.2