Index: openacs-4/packages/acs-templating/tcl/tag-init.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/tcl/tag-init.tcl,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-templating/tcl/tag-init.tcl 25 May 2004 15:22:48 -0000 1.22 +++ openacs-4/packages/acs-templating/tcl/tag-init.tcl 31 Jan 2005 21:03:19 -0000 1.23 @@ -669,9 +669,9 @@ for { set i 0 } { $i < $size } { incr i } { set [ns_set key $params $i] [ns_set value $params $i] # substitute array variables - regsub {@([a-zA-z0-9_]+)\.([a-zA-z0-9_]+)@} [set [ns_set key $params $i]] {${\1(\2)}} [ns_set key $params $i] + regsub {@([a-zA-Z0-9_]+)\.([a-zA-Z0-9_.]+)@} [set [ns_set key $params $i]] {${\1(\2)}} [ns_set key $params $i] # substitute regular variables - regsub {@([a-zA-z0-9_:]+)@} [set [ns_set key $params $i]] {${\1}} [ns_set key $params $i] + regsub {@([a-zA-Z0-9_:]+)@} [set [ns_set key $params $i]] {${\1}} [ns_set key $params $i] } # And this needs to be executed at page execution time due to interactions with the Index: openacs-4/packages/acs-templating/tcl/tag-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/tcl/tag-procs.tcl,v diff -u -r1.9 -r1.10 --- openacs-4/packages/acs-templating/tcl/tag-procs.tcl 28 Aug 2003 09:41:45 -0000 1.9 +++ openacs-4/packages/acs-templating/tcl/tag-procs.tcl 31 Jan 2005 21:03:19 -0000 1.10 @@ -161,18 +161,18 @@ append condition "\[empty_string_p $arg1\]" } else { # substitute array variables - regsub {^"@([a-zA-z0-9_]+)\.([a-zA-z0-9_]+)@"$} $arg1 {\1(\2)} arg1 + regsub {^"@([a-zA-Z0-9_]+)\.([a-zA-Z0-9_.]+)@"$} $arg1 {\1(\2)} arg1 # substitute regular variables - regsub {^"@([a-zA-z0-9_:]+)@"$} $arg1 {\1} arg1 + regsub {^"@([a-zA-Z0-9_:]+)@"$} $arg1 {\1} arg1 append condition "\[template::util::is_nil $arg1\]" } set next $i } defined { # substitute variable references - regsub {^"@([a-zA-z0-9_]+)\.([a-zA-z0-9_]+)@"$} $arg1 {\1(\2)} arg1 - regsub {^"@([a-zA-z0-9_:]+)@"$} $arg1 {\1} arg1 + regsub {^"@([a-zA-Z0-9_]+)\.([a-zA-Z0-9_.]+)@"$} $arg1 {\1(\2)} arg1 + regsub {^"@([a-zA-Z0-9_:]+)@"$} $arg1 {\1} arg1 append condition "\[info exists $arg1\]" set next $i } Index: openacs-4/packages/acs-templating/tcl/util-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/tcl/util-procs.tcl,v diff -u -r1.19 -r1.20 --- openacs-4/packages/acs-templating/tcl/util-procs.tcl 26 Jul 2004 12:32:31 -0000 1.19 +++ openacs-4/packages/acs-templating/tcl/util-procs.tcl 31 Jan 2005 21:03:19 -0000 1.20 @@ -659,7 +659,7 @@ regsub -all "($name).($column_name)" $running_code "$name:${i}($column_name)" running_code } - regsub -all {@([A-z0-9_:\(\)]+)@} $running_code {${\1}} running_code + regsub -all {@([a-zA-Z0-9_:\(\)]+)@} $running_code {${\1}} running_code uplevel { eval $running_code Index: openacs-4/packages/acs-templating/www/admin/test/include.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/www/admin/test/include.tcl,v diff -u -r1.1 -r1.2 --- openacs-4/packages/acs-templating/www/admin/test/include.tcl 13 Mar 2001 22:59:27 -0000 1.1 +++ openacs-4/packages/acs-templating/www/admin/test/include.tcl 31 Jan 2005 21:03:19 -0000 1.2 @@ -2,7 +2,7 @@ set car [lindex $l 0] set cdr [lrange $l 1 end] - regsub -all {%([a-zA-z0-9.:_]+)%} $car {@\1@} condition + regsub -all {%([a-zA-Z0-9.:_]+)%} $car {@\1@} condition foreach {name rules} { true {"TRUE " "" FALSE not } false { TRUE not "FALSE " "" and %AND% or and %AND% or}