Index: openacs-4/packages/assessment/tcl/as-checks-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/assessment/tcl/as-checks-procs.tcl,v diff -u -r1.23 -r1.24 --- openacs-4/packages/assessment/tcl/as-checks-procs.tcl 2 Mar 2005 20:59:01 -0000 1.23 +++ openacs-4/packages/assessment/tcl/as-checks-procs.tcl 3 Mar 2005 22:46:41 -0000 1.24 @@ -230,12 +230,24 @@ if {[exists_and_not_null choice_id]} { set $varname "$choice_id" } else { - append $varname $boolean_answer - append $varname $numeric_answer - append $varname $integer_answer - append $varname $text_answer - append $varname $clob_answer - append $varname $content_answer + if { [info exists boolean_answer] } { + append $varname $boolean_answer + } + if { [info exists numeric_answer] } { + append $varname $numeric_answer + } + if { [info exists integer_answer] } { + append $varname $integer_answer + } + if { [info exists text_answer] } { + append $varname $text_answer + } + if { [info exists clob_answer] } { + append $varname $clob_answer + } + if { [info exists content_answer] } { + append $varname $content_answer + } } } else { set $varname $value @@ -287,12 +299,25 @@ if {[exists_and_not_null choice_id]} { set $varname "$choice_id" } else { - append $varname $boolean_answer - append $varname $numeric_answer - append $varname $integer_answer - append $varname $text_answer - append $varname $clob_answer - append $varname $content_answer + if { [info exists boolean_answer] } { + append $varname $boolean_answer + } + if { [info exists numeric_answer] } { + append $varname $numeric_answer + } + if { [info exists integer_answer] } { + append $varname $integer_answer + } + if { [info exists text_answer] } { + append $varname $text_answer + } + if { [info exists clob_answer] } { + append $varname $clob_answer + } + if { [info exists content_answer] } { + append $varname $content_answer + } + } } else { set $varname $value @@ -480,42 +505,9 @@ set user_id [ad_conn user_id] set checks [db_list_of_lists get_checks {}] foreach check $checks { - - set inter_item_check_id [lindex $check 0] - set action_p [lindex $check 1] - set check_sql [lindex $check 2] - set postcheck_p [lindex $check 3] - set section_id_from $new_section_id - set section_id_to [lindex $check 5] - set item_id [lindex $check 6] - set name [lindex $check 7] - set description [lindex $check 8] - - set insert_p [db_exec_plsql copy_check {}] - - # copy action map - - if { $action_p == "t"} { - set exist_p [db_0or1row get_action_map { }] - if {$exist_p == 1} { - db_dml insert_action_map {} - # copy parameters - - set parameters [db_list_of_lists parameters { }] - - foreach parameter $parameters { - set parameter_id [lindex $parameter 0] - set value [lindex $parameter 1] - set item_id [lindex $parameter 2] - - db_dml copy_parameter {} - } - - } - - } - + set inter_item_check_id [lindex $check 0] + db_dml update_checks {} } #update other checks update_checks -section_id $section_id -new_section_id $new_section_id @@ -578,36 +570,13 @@ set cond_list [split [lindex $check 1] "="] set item_id [lindex [split [lindex $cond_list 2] " "] 0] set condition [lindex [split [lindex $cond_list 1] " "] 0] - + if {$item_id == $as_item_id} { set inter_item_check_id [lindex $check 0] - set action_p [lindex $check 6] - set postcheck_p [lindex $check 8] - set section_id_from $section_id - set section_id_to [lindex $check 3] - set item_id [lindex $check 7] - set name [lindex $check 4] set check_sql [as::assessment::check::get_sql -item_id $new_item_id -condition $condition] - set description [lindex $check 5] - set insert_p [db_exec_plsql copy_check {}] - if { $action_p == "t"} { - set exist_p [db_0or1row get_action_map { }] - if {$exist_p == 1} { - - db_dml insert_action_map {} - # copy parameters - set parameters [db_list_of_lists parameters { }] - foreach parameter $parameters { - set parameter_id [lindex $parameter 0] - set value [lindex $parameter 1] - set item_id [lindex $parameter 2] - - db_dml copy_parameter {} - } - - } - } + db_dml update_checks {} + } } }