Index: openacs-4/packages/acs-templating/tcl/data-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/tcl/data-procs.tcl,v diff -u -r1.6.2.3 -r1.6.2.4 --- openacs-4/packages/acs-templating/tcl/data-procs.tcl 21 Feb 2003 12:25:22 -0000 1.6.2.3 +++ openacs-4/packages/acs-templating/tcl/data-procs.tcl 22 Apr 2003 20:51:19 -0000 1.6.2.4 @@ -31,15 +31,29 @@ upvar 2 $message_ref message $value_ref value - set result [regexp {^(-)?[0-9]+$} $value] + set result [regexp {^[+-]?\d+$} $value] if { ! $result } { - set message "Invalid number \"$value\"" + set message "Invalid integer \"$value\"" } return $result } +ad_proc -public template::data::validate::float { value_ref message_ref } { + + upvar 2 $message_ref message $value_ref value + + # Not allowing for scientific notation. Would the databases swallow it? + set result [regexp {^([+-]?)(?=\d|\.\d)\d*(\.\d*)?$} $value] + + if { ! $result } { + set message "Invalid decimal number \"$value\"" + } + + return $result +} + ad_proc -public template::data::validate::boolean { value_ref message_ref } { Validates boolean data types @author Roberto Mello