• Publicity: Public Only All

ical-procs.tcl

Utility functions for ical data

This file defines the following Objects and Classes: ::xo::ical::VCALITEM[i], ::xo::ical::VTODO[i], ::xo::ical::VEVENT[i]

Location:
packages/xotcl-core/tcl/ical-procs.tcl
Created:
July 20, 2005 Incomplete backport from :calendar extensions
Author:
neumann@wu-wien.ac.at

Procedures in this file

Detailed information

Class ::xo::ical::VCALITEM (public)

 ::nx::Class ::xo::ical::VCALITEM[i]

VCALITEM is the superclass of a VTODO and a VEVENT, intended as an abstract class.

Partial Call Graph (max 5 caller/called nodes):
%3 calendar::item::add_recurrence calendar::item::add_recurrence (public) xo::db::tcl_date xo::db::tcl_date (public) Class ::xo::ical::VCALITEM Class ::xo::ical::VCALITEM Class ::xo::ical::VCALITEM->calendar::item::add_recurrence Class ::xo::ical::VCALITEM->xo::db::tcl_date

Testcases:
No testcase defined.

Class ::xo::ical::VEVENT (public)

 ::nx::Class ::xo::ical::VEVENT[i]

VEVENT optional fields, must not occur more than once class / *created / *description / *dtstart / *geo / *last-mod / *location / organizer / *priority / *dtstamp / seq / *status / *summary / transp / *uid / *url / recurid / dtend or duration may appear, but dtend and duration are mutual exclusive *dtend / duration / optional fields, may occur more than once attach / attendee / categories / comment / contact / exdate / exrule / rstatus / related / resources / rdate / rrule / x-prop

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.

Class ::xo::ical::VTODO (public)

 ::nx::Class ::xo::ical::VTODO[i]

VTODO optional fields, must not occur more than once class / *completed / *created / *description / *dtstamp / *dtstart / *geo / *last-mod / *location / organizer / *percent-complete / *priority / recurid / seq / *status / *summary / *uid / *url / optional, but mutual exclusive *due / duration / optional fields, may occur more than once attach / attendee / categories / comment / contact / exdate / exrule / rstatus / related / resources / rdate / rrule / x-prop

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.

xo::ical::VCALITEM method add_recurrence (public)

 <instance of xo::ical::VCALITEM[i]> add_recurrence \
    [ -cal_item_id cal_item_id ]

Call calendar::item::add_recurrence with the options calculated by "parse RRULE"

Switches:
-cal_item_id
(optional)

Partial Call Graph (max 5 caller/called nodes):
%3 calendar::item::add_recurrence calendar::item::add_recurrence (public) xo::ical::VCALITEM instproc add_recurrence xo::ical::VCALITEM instproc add_recurrence xo::ical::VCALITEM instproc add_recurrence->calendar::item::add_recurrence

Testcases:
No testcase defined.

xo::ical::VCALITEM method as_ical (public)

 <instance of xo::ical::VCALITEM[i]> as_ical

Output a VCALITEM (VTODO or VEVENT) "object" in ical notation.

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.

xo::ical::VCALITEM method edit_recurrence (public)

 <instance of xo::ical::VCALITEM[i]> edit_recurrence \
    [ -cal_item_id cal_item_id ] [ -recurrence_id recurrence_id ]

We might or might not have a recurrence on the old entry. In case we have one, the old one might have started earlier, so we try to terminate it.

Switches:
-cal_item_id
(optional)
-recurrence_id
(optional)

Partial Call Graph (max 5 caller/called nodes):
%3 calendar::item::add_recurrence calendar::item::add_recurrence (public) xo::ical::VCALITEM instproc edit_recurrence xo::ical::VCALITEM instproc edit_recurrence xo::ical::VCALITEM instproc edit_recurrence->calendar::item::add_recurrence

Testcases:
No testcase defined.

xo::ical::VCALITEM method get (public)

 <instance of xo::ical::VCALITEM[i]> get property [ default ]

Return a certain property of an ical items. In case, the item has no such property, return the default value.

Parameters:
property
default (optional)

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.

xo::ical::VCALITEM method ical_body (public)

 <instance of xo::ical::VCALITEM[i]> ical_body

The method ical_body returns the ical-formatted content of the variables. All variables of VEVENTs and VTODOs are listed below, since the names are distinct, and no methods are used. So far there is no handling for the repetition fields (which might occur more than once). An option would be to handle these as lists. All date/time stamps are provided either by the ANSI date (from postgres) or by a date which can be processed via clock scan

Partial Call Graph (max 5 caller/called nodes):
%3 xo::db::tcl_date xo::db::tcl_date (public) xo::ical::VCALITEM instproc ical_body xo::ical::VCALITEM instproc ical_body xo::ical::VCALITEM instproc ical_body->xo::db::tcl_date

Testcases:
No testcase defined.

xo::ical::VCALITEM method parse RRULE (public)

 <instance of xo::ical::VCALITEM[i]> parse RRULE recurrule

parse recurrence rule provided in cal syntax. This method assumes that the instance variable dtstart is already set, before this method is called.

Parameters:
recurrule

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.

xo::ical::VEVENT method finish (public)

 <instance of xo::ical::VEVENT[i]> finish parse_error

In case, there was no :dtend given, set it either to the value of :dtstart, or :dtstart + :duration

Parameters:
parse_error

Partial Call Graph (max 5 caller/called nodes):
%3

Testcases:
No testcase defined.
[ show source ]