The OpenACS calendar package is a web-based calendar package. In its current form it provides a UI for storing events that have a time or that last a day, and it offers a list view, a day, week, and month view.
Calendar uses a lot of custom permissions. Most of them are unused and will be removed eventually. It will then use a Unix-like set of read, write, create, admin permissions.
A calendar has a name and an owner and belongs to a package, it also is an acs_object. This goes into the table calendars. A calendar is created via the usual constructor - a "new" function" - and destroyed via the usual destructor - a "delete" function.
The calendar package currently uses its own little category system: calendar item types can be created per package, they are stored in the table cal_item_types
The table cal_party_prefs allows storing customization information per calendar and per user. It is completely unused and I couldn't find any traces of it ever having been used. A similar table will be used in a future version of calendar to store user options though.
tcl/apm-callback-procs.tcl Calendar Package APM callbacks library Procedures that deal with installing, instantiating, mounting. tcl/cal-item-procs.tcl Utility functions for Calendar Applications tcl/calendar-callback-procs.tcl Callbacks for the search package. tcl/calendar-compatibility-procs.tcl These procs are there to ensure backwards compatibility for possible API breakages. tcl/calendar-install-procs.tcl Calendar install callbacks tcl/calendar-outlook-procs.tcl Utility functions for syncing Calendar with Outlook taken from SloanSpace v1, hacked for OpenACS by Ben. tcl/calendar-procs.tcl Utility functions for Calendar Applications tcl/calendar-sc-procs.tcl Calendar service contract bindings
calendar::adjust_date calendar::apm::package_after_upgrade Upgrade script for the calendar package calendar::assign_permissions given a calendar_id, party_id and a permission this proc will assign the permission to the party the legal permissions are public, private, calendar_read, calendar_write, calendar_delete if the revoke is set, then the given permission will be removed for the party calendar::attachments_enabled_p calendar::calendar_list calendar::compare_day_items_by_current_hour Compare a day item by the current hour (field 0). calendar::create create a new calendar private_p is default to true since the default calendar is a private calendar calendar::delete Delete a calendar calendar::do_notifications calendar::from_sql_datetime calendar::fts::datasource returns a datasource for a calendar event to be indexed by the full text search engine. calendar::fts::url returns a url for an event to the search package calendar::get Get calendar info calendar::get_item_types return the item types calendar::get_month_multirow_information calendar::have_private_p Check to see if the user has a private calendar. calendar::install::package_install package install callback calendar::install::package_uninstall package uninstall callback calendar::install::package_upgrade Package before-upgrade callback calendar::item::add_recurrence Adds a recurrence for a calendar item calendar::item::assign_permission update the permission of the specific cal_item if revoke is set to revoke, then we revoke all permissions calendar::item::dates_valid_p A sanity check that the start time is before the end time. calendar::item::delete Delete the calendar item calendar::item::delete_recurrence delete a recurrence calendar::item::edit Edit the item calendar::item::edit_recurrence edit a recurrence calendar::item::get Get the data for a calendar item calendar::item::new calendar::item_type_delete calendar::item_type_new creates a new item type calendar::make_datetime given a date, and a time, construct the proper date string to be imported into oracle. calendar::name Return a calendar's name calendar::new calendar::notification::get_url Returns a full URL to the object_id calendar::outlook::cal_outlook_gmt_sql formats the hours to subtract or add to make the date_time be in gmt calendar::outlook::format_item the cal_item_id is obvious. calendar::outlook::ics_timestamp_format the timestamp must be in the format YYYY-MM-DD HH24:MI:SS calendar::personal_p Returns true (1) if this is the user's personal calendar, false (0) otherwise. calendar::rename rename a calendar calendar::sc::register_acs_event_fts_impl calendar::sc::register_cal_item_fts_impl calendar::sc::register_implementations Register the cal_item content type fts contract calendar::sc::unregister_implementations calendar::to_sql_datetime This takes two date chunks, one for date one for time, and combines them correctly. calendar_assign_permissions calendar_create calendar_have_private_p calendar_item_add_recurrence Adds a recurrence for a calendar item calendar_make_datetime given a date, and a time, construct the proper date string to be imported into oracle. callback::merge::MergePackageUser::impl::calendar Merge the calendars of two users. callback::merge::MergeShowUserInfo::impl::calendar Shows the calendar tables user info
Calle Aprestadora 19, 12o-2a
08902 Hospitalet de Llobregat (Barcelona)
Spain
Tel Europe: +34 609 953 751
Tel US: +1 415 200 2465
Mail: info@project-open.com