Index: openacs-4/packages/evaluation/tcl/evaluation-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/evaluation/tcl/evaluation-procs.tcl,v diff -u -r1.31.2.1 -r1.31.2.2 --- openacs-4/packages/evaluation/tcl/evaluation-procs.tcl 31 May 2005 23:13:10 -0000 1.31.2.1 +++ openacs-4/packages/evaluation/tcl/evaluation-procs.tcl 8 Jun 2005 18:57:14 -0000 1.31.2.2 @@ -8,7 +8,7 @@ namespace eval evaluation {} namespace eval evaluation::notification {} -namespace eval evaluation::apm_callback {} +namespace eval evaluation::apm {} ##### # @@ -92,51 +92,59 @@ db_1row get_grade_id { select grade_item_id from evaluation_grades where grade_id = :grade_id } db_foreach del_rec { select task_item_id from evaluation_tasks where grade_item_id = :grade_item_id } { db_foreach evaluation_delete_student_eval { select evaluation_id from evaluation_student_evals where task_item_id = :task_item_id } { - content::revision::delete -revision_id $evaluation_id + evaluation::revision_delete -revision_id $evaluation_id } db_foreach evaluation_delete_answer { select answer_id from evaluation_answers where task_item_id = :task_item_id } { - content::revision::delete -revision_id $answer_id + evaluation::revision_delete -revision_id $answer_id } db_foreach evaluation_delete_task_sol { select solution_id from evaluation_tasks_sols where task_item_id = :task_item_id } { - content::revision::delete -revision_id $solution_id + evaluation::revision_delete -revision_id $solution_id } db_foreach evaluation_delete_grades_sheet { select grades_sheet_id from evaluation_grades_sheets where task_item_id = :task_item_id } { - content::revision::delete -revision_id $grades_sheet_id + evaluation::revision_delete -revision_id $grades_sheet_id } db_foreach evaluation_delete_task { select task_id from evaluation_tasks where task_item_id = :task_item_id } { - content::revision::delete -revision_id $task_id } + evaluation::revision_delete -revision_id $task_id } } # db_1row get_grade_id { select grade_id as grade_task_id from evaluation_grades where grade_item_id = :grade_item_id} - content::revision::delete -revision_id $grade_id + evaluation::revision_delete -revision_id $grade_id } +ad_proc -public evaluation::revision_delete { + -revision_id:required +} { + wrapper for the content::revision::delete +} { + content::item::unset_live_revision -item_id [db_string get_revision_item_id {select item_id from cr_revisions where revision_id = :revision_id}] +} + ad_proc -public evaluation::delete_task { -task_id:required } { delete all tasks } { db_1row get_task_id { select task_item_id from evaluation_tasks where task_id = :task_id } db_foreach evaluation_delete_student_eval { select evaluation_id from evaluation_student_evals where task_item_id = :task_item_id } { - content::revision::delete -revision_id $evaluation_id + evaluation::revision_delete -revision_id $evaluation_id } db_foreach evaluation_delete_answer { select answer_id from evaluation_answers where task_item_id = :task_item_id } { - content::revision::delete -revision_id $answer_id + evaluation::revision_delete -revision_id $answer_id } db_foreach evaluation_delete_task_sol { select solution_id from evaluation_tasks_sols where task_item_id = :task_item_id } { - content::revision::delete -revision_id $solution_id + evaluation::revision_delete -revision_id $solution_id } db_foreach evaluation_delete_grades_sheet { select grades_sheet_id from evaluation_grades_sheets where task_item_id = :task_item_id } { - content::revision::delete -revision_id $grades_sheet_id + evaluation::revision_delete -revision_id $grades_sheet_id } - content::revision::delete -revision_id $task_id + evaluation::revision_delete -revision_id $task_id } ad_proc -public evaluation::delete_student_eval { -evaluation_id:required } { delete all tasks } { - content::revision::delete -revision_id $evaluation_id + evaluation::revision_delete -revision_id $evaluation_id } ad_proc -public evaluation::notification::do_notification { @@ -231,7 +239,7 @@ set revision_id [db_nextval acs_object_id_seq] set revision_name "${content_type}_${revision_id}" set folder_id [content::item::get_id -item_path "${content_type}_${package_id}" -resolve_index f] - if { $new_item_p } { + if { $new_item_p && ![db_string double_click { *SQL* }] } { set item_id [content::item::new -item_id $item_id -parent_id $folder_id -content_type $content_type -name $item_name -context_id $package_id -creation_date $creation_date] } set revision_id [content::revision::new \ @@ -397,7 +405,7 @@ set item_name "${item_id}_${title}" } - if { $new_item_p } { + if { $new_item_p && ![db_string double_click { *SQL* }] } { set item_id [content::item::new -item_id $item_id \ -parent_id $folder_id \ @@ -482,7 +490,7 @@ set creation_date [db_string get_date { *SQL* }] } - if { $new_item_p } { + if { $new_item_p && ![db_string double_click { *SQL* }] } { set item_id [content::item::new -item_id $item_id \ -parent_id $folder_id \ -content_type $content_type \ @@ -564,7 +572,7 @@ if { [empty_string_p $creation_date] } { set creation_date [db_string get_date { *SQL* }] } - if { $new_item_p } { + if { $new_item_p && ![db_string double_click { *SQL* }] } { set item_id [content::item::new \ -item_id $item_id \ -parent_id $folder_id \ @@ -652,7 +660,7 @@ set creation_date [db_string get_date { *SQL* }] } - if { $new_item_p } { + if { $new_item_p && ![db_string double_click { *SQL* }] } { set item_id [content::item::new -item_id $item_id \ -parent_id $folder_id \ -content_type $content_type \ @@ -798,7 +806,7 @@ set creation_date [db_string get_date { *SQL* }] } - if { $new_item_p } { + if { $new_item_p && ![db_string double_click { *SQL* }] } { set item_id [content::item::new -item_id $item_id \ -parent_id $folder_id \ -content_type $content_type \ @@ -883,23 +891,23 @@ $csv_formatted_content" } -ad_proc -public evaluation::apm_callback::delete_one_assignment_impl {} { +ad_proc -public evaluation::apm::delete_one_assignment_impl {} { Unregister the NotificationType implementation for one_assignment_notif_type. } { acs_sc::impl::delete \ -contract_name "NotificationType" \ -impl_name one_assignment_notif_type } -ad_proc -public evaluation::apm_callback::delete_one_evaluation_impl {} { +ad_proc -public evaluation::apm::delete_one_evaluation_impl {} { Unregister the NotificationType implementation for one_evaluation_notif_type. } { acs_sc::impl::delete \ -contract_name "NotificationType" \ -impl_name one_evaluation_notif_type } -ad_proc -public evaluation::apm_callback::create_one_assignment_impl {} { +ad_proc -public evaluation::apm::create_one_assignment_impl {} { Register the service contract implementation and return the impl_id @return impl_id of the created implementation } { @@ -914,7 +922,7 @@ }] } -ad_proc -public evaluation::apm_callback::create_one_evaluation_impl {} { +ad_proc -public evaluation::apm::create_one_evaluation_impl {} { Register the service contract implementation and return the impl_id @return impl_id of the created implementation } { @@ -929,7 +937,7 @@ }] } -ad_proc -public evaluation::apm_callback::create_one_assignment_type { +ad_proc -public evaluation::apm::create_one_assignment_type { -impl_id:required } { Create the notification type for one specific assignment @@ -942,7 +950,7 @@ -description "[_ evaluation.lt_Notification_for_assi]"] } -ad_proc -public evaluation::apm_callback::create_one_evaluation_type { +ad_proc -public evaluation::apm::create_one_evaluation_type { -impl_id:required } { Create the notification type for one specific evaluation @@ -955,7 +963,7 @@ -description "[_ evaluation.lt_Notification_for_eval]"] } -ad_proc -public evaluation::apm_callback::enable_intervals_and_methods { +ad_proc -public evaluation::apm::enable_intervals_and_methods { -type_id:required } { Enable the intervals and delivery methods of a specific type