Index: openacs-4/packages/acs-templating/tcl/head-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/tcl/head-procs.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-templating/tcl/head-procs.tcl 30 Nov 2007 18:16:43 -0000 1.3 +++ openacs-4/packages/acs-templating/tcl/head-procs.tcl 6 Dec 2007 18:50:13 -0000 1.4 @@ -302,7 +302,10 @@ if {$identifier eq "anonymous"} { lappend body_handlers($event,anonymous) $script } else { - set body_handers($event,$identifier) $script + # Even a one event handler needs to be added in a list + # since all handlers, anonymous and specific are treated as a + # list in blank-master.tcl + set body_handlers($event,$identifier) [list $script] } } Index: openacs-4/www/blank-master.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/www/blank-master.tcl,v diff -u -r1.34 -r1.35 --- openacs-4/www/blank-master.tcl 6 Dec 2007 18:33:20 -0000 1.34 +++ openacs-4/www/blank-master.tcl 6 Dec 2007 18:50:13 -0000 1.35 @@ -175,7 +175,9 @@ if { [regexp {^([^.]*)\.(.*)$} $focus match form_name element_name] } { template::add_body_handler \ -event onload \ - -script "acs_Focus('${form_name}', '${element_name}');" + -script "acs_Focus('${form_name}', '${element_name}');" \ + -identifier "focus" + } } @@ -186,9 +188,10 @@ foreach name $names { set event [lindex [split $name ","] 0] - +ns_log notice "event $event name $name JS !!!$body_handlers($name)!!!" foreach javascript $body_handlers($name) { lappend body_handlers($event) "[string trimright $javascript "; "];" + ns_log notice "adding [string trimright $javascript "; "];" } unset body_handlers($name)