Index: openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl,v diff -u -r1.56 -r1.57 --- openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl 12 Oct 2006 07:53:20 -0000 1.56 +++ openacs-4/packages/acs-tcl/tcl/form-processing-procs.tcl 1 Nov 2006 19:12:54 -0000 1.57 @@ -738,6 +738,9 @@ template::element create $form_name __refreshing_p -datatype integer -widget hidden -value 0 + # add the hidden button element + template::element create $form_name "__submit_button_name" -datatype text -widget hidden -value "" + template::element create $form_name "__submit_button_value" -datatype text -widget hidden -value "" } if { [info exists export] } { @@ -1008,6 +1011,7 @@ # Get all the form elements. We can't call form get_values because it doesn't handle multiples # in a reasonable way. + foreach element_name $properties(element_names) { if { [info exists af_flag_list(${form_name}__$element_name)] && \ [lsearch $af_flag_list(${form_name}__$element_name) multiple] >= 0 } { @@ -1019,6 +1023,13 @@ } } + # Update the clicked button if it does not already exist + uplevel #$level { + if {![exists_and_not_null ${__submit_button_name}]} { + set ${__submit_button_name} ${__submit_button_value} + } + } + if { [info exists key_name] } { upvar #$level $key_name __key upvar #$level __key_signature __key_signature