Index: openacs-4/packages/calendar/www/cal-item-new.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/calendar/www/cal-item-new.tcl,v diff -u -N -r1.41.2.18 -r1.41.2.19 --- openacs-4/packages/calendar/www/cal-item-new.tcl 31 Jan 2024 10:27:02 -0000 1.41.2.18 +++ openacs-4/packages/calendar/www/cal-item-new.tcl 4 Mar 2024 15:46:02 -0000 1.41.2.19 @@ -7,7 +7,7 @@ @creation-date May 29, 2002 @cvs-id $Id$ } { - {calendar_id:object_id ""} + {calendar_id:object_type(calendar) ""} cal_item_id:object_id,optional {item_type_id:object_id ""} {date:clock(%Y-%m-%d) ""} @@ -16,6 +16,20 @@ {end_time:clock(%H:%M) ""} {view:token "day"} {return_url:localurl "./"} +} -validate { + cal_item_id_valid -requires {cal_item_id:object_id} { + # + # Note that we need to let through ids that are not objects, + # these are normally the new entries, which were not persisted + # yet. + # + if { [db_0or1row check_type { + select 1 from acs_objects where object_id = :cal_item_id + and object_type <> 'cal_item' + }] } { + ad_complain [_ acs-tcl.lt_invalid_object_type] + } + } } auth::require_login Index: openacs-4/packages/calendar/www/cal-item-view.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/calendar/www/cal-item-view.tcl,v diff -u -N -r1.27.2.5 -r1.27.2.6 --- openacs-4/packages/calendar/www/cal-item-view.tcl 31 Jan 2024 10:27:02 -0000 1.27.2.5 +++ openacs-4/packages/calendar/www/cal-item-view.tcl 4 Mar 2024 15:46:02 -0000 1.27.2.6 @@ -5,7 +5,7 @@ @creation-date April 09, 2002 @cvs-id $Id$ } { - cal_item_id:naturalnum,notnull + cal_item_id:object_type(cal_item),optional {return_url:localurl [ad_return_url]} }