Index: openacs-4/packages/logger/www/log.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/log.tcl,v diff -u -r1.32 -r1.33 --- openacs-4/packages/logger/www/log.tcl 28 Jul 2005 11:09:18 -0000 1.32 +++ openacs-4/packages/logger/www/log.tcl 4 Oct 2005 22:53:18 -0000 1.33 @@ -199,21 +199,54 @@ # Add form elements common to all modes # The form builder date datatype doesn't take ANSI format date strings # but wants dates in list format -ad_form -extend -name log_entry_form -form { - {value:float - {label $variable_array(name)} - {after_html $unit} - {html {size 7 maxlength 7}} - } - {description:text,optional - {label "[_ logger.Description]"} - {html {size 50}} - } - {time_stamp:date(date),to_sql(ansi),from_sql(ansi) - {label "[_ logger.Date]"} - } -} +set default_descriptions [split [parameter::get -parameter "DefaultDescriptionList"] ";"] +set options [list] +lappend options [list "" ""] +foreach desc $default_descriptions { + lappend options [list $desc $desc] +} + +if { ![llength $default_descriptions] } { + # There is no value in the list so we leave the form as it is + ad_form -extend -name log_entry_form -form { + {value:float + {label $variable_array(name)} + {after_html $unit} + {html {size 7 maxlength 7}} + } + {description:text,optional + {label "[_ logger.Description]"} + {html {size 50}} + } + {time_stamp:date(date),to_sql(ansi),from_sql(ansi) + {label "[_ logger.Date]"} + } + } +} else { + # We add the default_list for descriptions + ad_form -extend -name log_entry_form -form { + {value:float + {label $variable_array(name)} + {after_html $unit} + {html {size 7 maxlength 7}} + } + {default_description:text(select),optional + {label "[_ logger.Default_description]"} + {options $options} + {section "[_ logger.Description]"} + {value ""} + } + {description:text,optional + {label "[_ logger.Custom_description]"} + {html {size 50}} + {help_text "[_ logger.You_can_either]"} + } + {time_stamp:date(date),to_sql(ansi),from_sql(ansi) + {label "[_ logger.Date]"} + } + } +} # Additions to form if project-manager is involved. if {[exists_and_not_null pm_project_id]} { @@ -323,6 +356,17 @@ { [regexp {^-?([0-9]{1,6}|[0-9]{0,6}\.[0-9]{0,2})$} $value] } {The value may not contain more than two decimals and must be between -999999.99 and 999999.99} } +} -on_submit { + + if { [exists_and_not_null description] && [exists_and_not_null default_description] } { + ad_return_complaint 1 "[_ logger.You_can_either]" + ad_script_abort + } + + if { [exists_and_not_null default_description] } { + set description $default_description + } + } -new_request { # Get the date of the last entry set time_stamp [ad_get_client_property logger time_stamp]