Index: openacs-4/packages/calendar-includelet/tcl/calendar-includelet-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/calendar-includelet/tcl/calendar-includelet-procs.tcl,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/calendar-includelet/tcl/calendar-includelet-procs.tcl 10 Sep 2008 21:54:30 -0000 1.1 @@ -0,0 +1,24 @@ + +ad_proc calendar_includelet::get_private_calendar_id { + -user_id:required + -package_id:required +} { + Return the user's private calendar id and create one if none exists. + + The calendar package doesn't scope calendars by which package it belongs to. This + includelet wants to scope a user's private calendar by package, to separate subsite + contexts by default. + + @param user_id The id of the user we're interested in + @param package_id The package id of the relevant instance of the calendar package +} { + if { ![set calendar_id [calendar::have_private_p -return_id 1 -party_id $user_id]] } { + set calendar_id [calendar::new \ + -owner_id [ad_conn user_id] \ + -private_p "t" \ + -calendar_name Personal \ + -package_id $package_id] + } + return $calendar_id +} + Index: openacs-4/packages/calendar-includelet/tcl/calendar-includelet-procs.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/calendar-includelet/tcl/calendar-includelet-procs.xql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/calendar-includelet/tcl/calendar-includelet-procs.xql 10 Sep 2008 21:54:30 -0000 1.1 @@ -0,0 +1,14 @@ + + + + + + select calendar_id + from calendars + where owner_id = :user_id + and package_id = :package_id + and private_p = 't' + + + +