Index: openacs-4/packages/logger/logger.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/logger.info,v diff -u -r1.5 -r1.6 --- openacs-4/packages/logger/logger.info 8 May 2003 13:54:04 -0000 1.5 +++ openacs-4/packages/logger/logger.info 9 May 2003 15:07:00 -0000 1.6 @@ -7,14 +7,14 @@ f f - + Lars Pind Peter Marklund Supports time and expenses reporting. Full specification is here: http://www.collaboraid.biz/developer/logger-spec 2003-05-08 Collaboraid - + Index: openacs-4/packages/logger/tcl/ui-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/tcl/ui-procs.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/packages/logger/tcl/ui-procs.tcl 8 May 2003 13:54:59 -0000 1.6 +++ openacs-4/packages/logger/tcl/ui-procs.tcl 9 May 2003 15:07:27 -0000 1.7 @@ -84,14 +84,35 @@ @author Peter Marklund } { if { [empty_string_p $project_id] } { - return "" + return {} } - set variable_options [list] - db_foreach variable_options { + return [db_list_of_lists variable_options {}] +} + +ad_proc -public logger::ui::project_options {} { + Return a list suitable to be passed to the form builder + for the select box of the projects mapped to the + current package instance. + + @return A list with variable options on the format + [list [list variable_label1 variable_id1] [list variable_label2 variable_value2] ...] + + @author Peter Marklund +} { + set package_id [ad_conn package_id] + + set project_options [list] + db_foreach project_options { + select lp.project_id, + lp.name + from logger_projects lp, + logger_project_pkg_map lppm + where lp.project_id = lppm.project_id + and lppm.package_id = :package_id } { - lappend variable_options [list $name $variable_id] + lappend project_options [list $name $project_id] } - return $variable_options + return $project_options } Index: openacs-4/packages/logger/tcl/ui-procs.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/tcl/ui-procs.xql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/logger/tcl/ui-procs.xql 8 May 2003 13:54:59 -0000 1.1 +++ openacs-4/packages/logger/tcl/ui-procs.xql 9 May 2003 15:07:27 -0000 1.2 @@ -4,14 +4,12 @@ - select lv.variable_id, - lv.name - from logger_variables lv - where exists (select 1 - from logger_project_var_map lpvm - where lpvm.project_id = :project_id - and lpvm.variable_id = lv.variable_id - ) + select lv.name, + lv.variable_id + from logger_variables lv, + logger_project_var_map lpvm + where lpvm.variable_id = lv.variable_id + and lpvm.project_id = :project_id Index: openacs-4/packages/logger/www/index.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/index.tcl,v diff -u -r1.9 -r1.10 --- openacs-4/packages/logger/www/index.tcl 8 May 2003 13:55:50 -0000 1.9 +++ openacs-4/packages/logger/www/index.tcl 9 May 2003 15:07:48 -0000 1.10 @@ -348,6 +348,3 @@ if { $custom_p } { multirow append filters "" "Custom range" $filter_name "" "" $custom_p $date_clear_url {} {} } - - - Index: openacs-4/packages/logger/www/log.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/log.tcl,v diff -u -r1.8 -r1.9 --- openacs-4/packages/logger/www/log.tcl 9 May 2003 11:04:43 -0000 1.8 +++ openacs-4/packages/logger/www/log.tcl 9 May 2003 15:07:48 -0000 1.9 @@ -1,7 +1,7 @@ ad_page_contract { Add/edit/display a log entry. - @author Peter marklund (peter@collaboraid.biz) + @author Peter Marklund (peter@collaboraid.biz) @creation-date 2003-04-16 @cvs-id $Id$ } { @@ -150,15 +150,39 @@ { [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 0 and 999999.99} } + } -new_data { set time_stamp_ansi "[lindex $time_stamp 0]-[lindex $time_stamp 1]-[lindex $time_stamp 2]" + + # jarkko: check to see if user has already added this entry and has come + # back with her back button. If the entry exists, we give the user a complaint + # and a link to edit this particular entry. + if { [string match [db_string check_if_exists " + select 1 + from logger_entries + where entry_id = :entry_id + " -default "0"] "0"]} { logger::entry::new -entry_id $entry_id \ -project_id $project_id \ -variable_id $variable_id \ -value $value \ -time_stamp $time_stamp_ansi \ -description $description + } else { + + doc_return 200 text/html "[ad_header_with_extra_stuff "Problem with Your Input" "" ""] +

Problem with Your Input

+to [ad_system_name] + +
+ +You have already added this entry once. If you want to edit this entry, click here. + +[ad_footer] +" + } + # Present the user with an add form again for quick logging ad_returnredirect "[ad_conn url]?[export_vars {project_id variable_id}]" ad_script_abort Index: openacs-4/packages/logger/www/project-select.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/project-select.adp,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/logger/www/project-select.adp 9 May 2003 15:07:48 -0000 1.1 @@ -0,0 +1,7 @@ + +@page_title@ +@context@ + +
+ +
Index: openacs-4/packages/logger/www/project-select.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/project-select.tcl,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/logger/www/project-select.tcl 9 May 2003 15:07:48 -0000 1.1 @@ -0,0 +1,26 @@ + +ad_page_contract { + When the user clicks the Add Entry link in the navbar + he/she is taken to this page for selecting a project + before coming to the log page. + + @author Peter Marklund (peter@collaboraid.biz) + @creation-date 2003-05-09 + @cvs-id $Id: project-select.tcl,v 1.1 2003/05/09 15:07:48 lars Exp $ +} + +ad_maybe_redirect_for_registration + +set page_title "Select Project to log entries in" +set context [list $page_title] + +ad_form -name project_form -form { + {project_id:integer(select) + {label Project} + {options {[logger::ui::project_options]}} + } +} -on_submit { + + ad_returnredirect "log?[export_vars { project_id }]" + ad_script_abort +} Index: openacs-4/packages/logger/www/admin/projection.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/admin/projection.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/packages/logger/www/admin/projection.tcl 8 May 2003 13:56:04 -0000 1.3 +++ openacs-4/packages/logger/www/admin/projection.tcl 9 May 2003 15:08:03 -0000 1.4 @@ -21,6 +21,9 @@ if { ![empty_string_p $project_id] } { logger::project::get -project_id $project_id -array project_array set project_name $project_array(name) +} elseif { ![empty_string_p $projection_id] } { + db_1row select_project_info {} + # project_id, project_name } else { set project_name "" } @@ -57,6 +60,7 @@ {variable_id:integer(select) {label Variable} {options {[logger::ui::variable_options -project_id $project_id]}} + {mode display} } {value:text Index: openacs-4/packages/logger/www/admin/projection.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/admin/projection.xql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/logger/www/admin/projection.xql 8 May 2003 13:56:04 -0000 1.1 +++ openacs-4/packages/logger/www/admin/projection.xql 9 May 2003 15:08:03 -0000 1.2 @@ -2,6 +2,18 @@ + + + select p.project_id, + p.name as project_name + from logger_projects p, + logger_projections pn + where p.project_id = pn.project_id + and pn.projection_id = :projection_id + + + + select lpe.name, Index: openacs-4/packages/logger/www/lib/nav-bar.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/logger/www/lib/Attic/nav-bar.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/packages/logger/www/lib/nav-bar.tcl 8 May 2003 13:56:20 -0000 1.6 +++ openacs-4/packages/logger/www/lib/nav-bar.tcl 9 May 2003 15:08:17 -0000 1.7 @@ -22,7 +22,7 @@ lappend link_list [list [list selected_user_id $user_id]] lappend link_list "My Entries" - lappend link_list [list "${package_url}log"] + lappend link_list [list "${package_url}project-select"] lappend link_list {} lappend link_list "Add Entry" }