Index: openacs-4/packages/tasks/www/process-add-edit.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/tasks/www/process-add-edit.tcl,v diff -u -r1.1 -r1.2 --- openacs-4/packages/tasks/www/process-add-edit.tcl 27 Jul 2005 13:44:59 -0000 1.1 +++ openacs-4/packages/tasks/www/process-add-edit.tcl 25 Sep 2005 23:49:23 -0000 1.2 @@ -8,33 +8,19 @@ @return context_bar Context bar. @return title Page title. - } { - process_id:integer,optional - {one_line ""} - {description ""} - {number_of_tasks:integer ""} - + assignee_id:integer,optional } -properties { - context_bar:onevalue title:onevalue - } - -# --------------------------------------------------------------- # -# the unique identifier for this package set package_id [ad_conn package_id] set user_id [ad_maybe_redirect_for_registration] -# terminology and parameters -set project_term [parameter::get -parameter "ProjectName" -default "Project"] -set project_term_lower [parameter::get -parameter "projectname" -default "project"] - if { ![ad_form_new_p -key process_id] } { - set process [db_string process_get { select one_line from pm_process where process_id = :process_id}] + set process [db_string process_get { select title from t_processes where process_id = :process_id}] set title "Edit: $process" set context [list [list "processes" Processes] [list [export_vars -base "process" -url {process_id}] $process] "Edit"] # permissions @@ -49,39 +35,60 @@ ad_form -name add_edit -form { process_id:key + assignee_id:text(hidden),optional + workflow_id:text(hidden),optional - {one_line:text + {title:text {label "Process"} - {value $one_line} - {html {size 40}} + {html {size 80}} } {description:text(textarea),optional {label "Description"} - {value $description} {html { rows 5 cols 40 wrap soft}}} -} -select_query_name process_query -on_submit { +} -select_query_name process_query -new_data { - set party_id [ad_conn user_id] - set creation_date [db_string get_today { }] + db_transaction { + set workflow_id [workflow::new \ + -short_name "tasks_process_$process_id" \ + -pretty_name "tasks process $process_id" \ + -package_key tasks] -} -new_data { - set process_id [db_nextval pm_process_seq] + set state_id [workflow::state::fsm::new \ + -workflow_id $workflow_id \ + -short_name new \ + -pretty_name New] - db_dml new_process { *SQL* } + workflow::action::fsm::new \ + -workflow_id $workflow_id \ + -short_name new \ + -pretty_name New \ + -new_state_id $state_id \ + -callbacks "tasks.Tasks_Action_SideEffect" \ + -initial_action_p t - ad_returnredirect -message "Process added. Now add a process task." [export_vars -base process-task -url { process_id}] + set process_id [tasks::process::new \ + -process_id $process_id \ + -title $title \ + -description $description \ + -mime_type "text/plain" \ + -workflow_id $workflow_id] + } + + ad_returnredirect -message "Process added. Now add a process task." [export_vars -base process-task -url {process_id assignee_id}] ad_script_abort } -edit_data { - db_dml edit_process { *SQL* } + tasks::process::edit \ + -process_id $process_id \ + -title $title \ + -description $description \ + -mime_type "text/plain" } -after_submit { - ad_returnredirect -message "Process changes saved." [export_vars -base process -url {process_id}] + ad_returnredirect -message "Process changes saved." [export_vars -base process -url {process_id assignee_id}] ad_script_abort } - -