Index: openacs-4/contrib/packages/simulation/tcl/template-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/simulation/tcl/Attic/template-procs.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/contrib/packages/simulation/tcl/template-procs.tcl 18 Nov 2003 15:59:12 -0000 1.3 +++ openacs-4/contrib/packages/simulation/tcl/template-procs.tcl 28 Nov 2003 11:12:39 -0000 1.4 @@ -122,6 +122,20 @@ db_1row select_template {} -column_array row } +ad_proc -public simulation::template::get_workflow_id_from_action { + {-action_id:required} +} { + Given an action_id, return the workflow_id + + @param action_id ID of action in workflow +} { + return [db_string select_workflow_id { + select wa.workflow_id + from workflow_actions wa + where wa.action_id = :action_id + }] +} + ad_proc -public simulation::template::delete { {-workflow_id:required} } { Index: openacs-4/contrib/packages/simulation/www/simbuild/task-edit.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/simulation/www/simbuild/Attic/task-edit.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/contrib/packages/simulation/www/simbuild/task-edit.tcl 14 Nov 2003 09:48:54 -0000 1.2 +++ openacs-4/contrib/packages/simulation/www/simbuild/task-edit.tcl 28 Nov 2003 11:12:19 -0000 1.3 @@ -21,20 +21,20 @@ # ###################################################################### -if { [info exists workflow_id] } { - workflow::get -workflow_id $workflow_id -array sim_template_array -} else { - set workflow_id "" +# if we got task_id instead of workflow_id, figure out workflow_id +if { ![info exists workflow_id] } { + set workflow_id [simulation::template::get_workflow_id_from_action -action_id $action_id] } +simulation::template::get -workflow_id $workflow_id -array sim_template_array set package_key [ad_conn package_key] set package_id [ad_conn package_id] if { ![ad_form_new_p -key action_id] } { workflow::action::fsm::get -action_id $action_id -array task_array - set page_title "Edit Task $task_array(pretty_name)" } else { + set page_title "Add Task to $sim_template_array(pretty_name)" } set context [list [list "." "SimBuild"] [list "template-edit?workflow_id=$workflow_id" "$sim_template_array(pretty_name)"] $page_title] Index: openacs-4/packages/simulation/tcl/template-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/simulation/tcl/template-procs.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/packages/simulation/tcl/template-procs.tcl 18 Nov 2003 15:59:12 -0000 1.3 +++ openacs-4/packages/simulation/tcl/template-procs.tcl 28 Nov 2003 11:12:39 -0000 1.4 @@ -122,6 +122,20 @@ db_1row select_template {} -column_array row } +ad_proc -public simulation::template::get_workflow_id_from_action { + {-action_id:required} +} { + Given an action_id, return the workflow_id + + @param action_id ID of action in workflow +} { + return [db_string select_workflow_id { + select wa.workflow_id + from workflow_actions wa + where wa.action_id = :action_id + }] +} + ad_proc -public simulation::template::delete { {-workflow_id:required} } { Index: openacs-4/packages/simulation/www/simbuild/task-edit.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/simulation/www/simbuild/task-edit.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/simulation/www/simbuild/task-edit.tcl 14 Nov 2003 09:48:54 -0000 1.2 +++ openacs-4/packages/simulation/www/simbuild/task-edit.tcl 28 Nov 2003 11:12:19 -0000 1.3 @@ -21,20 +21,20 @@ # ###################################################################### -if { [info exists workflow_id] } { - workflow::get -workflow_id $workflow_id -array sim_template_array -} else { - set workflow_id "" +# if we got task_id instead of workflow_id, figure out workflow_id +if { ![info exists workflow_id] } { + set workflow_id [simulation::template::get_workflow_id_from_action -action_id $action_id] } +simulation::template::get -workflow_id $workflow_id -array sim_template_array set package_key [ad_conn package_key] set package_id [ad_conn package_id] if { ![ad_form_new_p -key action_id] } { workflow::action::fsm::get -action_id $action_id -array task_array - set page_title "Edit Task $task_array(pretty_name)" } else { + set page_title "Add Task to $sim_template_array(pretty_name)" } set context [list [list "." "SimBuild"] [list "template-edit?workflow_id=$workflow_id" "$sim_template_array(pretty_name)"] $page_title]