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.36 -r1.37 --- openacs-4/packages/calendar/www/cal-item-new.tcl 30 Aug 2008 19:51:23 -0000 1.36 +++ openacs-4/packages/calendar/www/cal-item-new.tcl 2 Sep 2008 21:02:27 -0000 1.37 @@ -103,10 +103,11 @@ } } else { ad_form -extend -name cal_item -form { - {edit_all_p:text(radio) - {label "[_ calendar.Apply_to_all]"} - {options {{"[_ calendar.Yes]" 1} - {"[_ calendar.No]" 0} }} + {edit_what:text(radio) + {label "[_ calendar.Apply_Changes_to]"} + {options {{"[_ calendar.This_Event]" this} + {"[_ calendar.All_Past_and_Future_Events]" all} + {"[_ calendar.This_and_All_Future_Events]" future}}} } } } @@ -218,10 +219,10 @@ # this is a usability issue, since it prevents unexpected # behavior. According to carlb, this is how palm os works # and that sounds like a reasonable interface to emulate - # set edit_all_p $repeat_p + # set edit_what $repeat_p if { !$repeat_p } { - element set_properties cal_item edit_all_p -widget hidden - element set_value cal_item edit_all_p 0 + element set_properties cal_item edit_what -widget hidden + element set_value cal_item edit_what 0 } # To support green calendar # set date [template::util::date::from_ansi $ansi_start_date] @@ -285,9 +286,24 @@ # set up the datetimes set start_date [calendar::to_sql_datetime -date $date -time $start_time -time_p $time_p] set end_date [calendar::to_sql_datetime -date $date -time $end_time -time_p $time_p] - - - + set edit_all_p 0 + set edit_past_events_p 0 + if {[info exists edit_what]} { + switch $edit_what { + this { + set edit_all_p 0 + set edit_past_events_p 0 + } + all { + set edit_all_p 1 + set edit_past_events_p 1 + } + future { + set edit_all_p 1 + set edit_past_events_p 0 + } + } + } # Do the edit calendar::item::edit \ -cal_item_id $cal_item_id \ @@ -297,12 +313,13 @@ -description $description \ -item_type_id $item_type_id \ -edit_all_p $edit_all_p \ + -edit_past_events_p $edit_past_events_p \ -calendar_id $calendar_id - + if { [string compare $return_url "./"] } { ad_returnredirect $return_url } else { - ad_returnredirect [export_vars -base cal-item-view { cal_item_id }] + ad_returnredirect [export_vars -base cal-item-view { cal_item_id }] } ad_script_abort }