Index: openacs-4/contrib/packages/project-manager/www/task-add-edit.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/project-manager/www/Attic/task-add-edit.tcl,v
diff -u -r1.27.2.14 -r1.27.2.15
--- openacs-4/contrib/packages/project-manager/www/task-add-edit.tcl 26 Oct 2004 01:21:11 -0000 1.27.2.14
+++ openacs-4/contrib/packages/project-manager/www/task-add-edit.tcl 3 Nov 2004 20:37:12 -0000 1.27.2.15
@@ -24,7 +24,7 @@
@param new_tasks if we are creating new tasks, how many to create
} {
{task_item_id:integer,multiple ""}
- {project_item_id:integer,notnull}
+ {project_item_id:integer ""}
{process_id:integer ""}
{process_task_id:integer,multiple ""}
{return_url ""}
@@ -65,6 +65,36 @@
set using_process_p f
}
+# --------------------------------------------------------------------
+# if we are editing tasks, each task has its own project. We also want
+# to look up all the old information to store it for later. We use
+# this for comparison, to see what has changed.
+# --------------------------------------------------------------------
+
+if {[string is true $edit_p]} {
+
+ # get old values
+ pm::task::get \
+ -tasks_item_id $task_item_id \
+ -one_line_array task_one_line \
+ -description_array task_description \
+ -description_mime_type_array task_description_mime_type \
+ -estimated_hours_work_array task_estimated_hours_work \
+ -estimated_hours_work_min_array task_estimated_hours_work_min \
+ -estimated_hours_work_max_array task_estimated_hours_work_max \
+ -dependency_array task_dependency \
+ -percent_complete_array task_percent_complete \
+ -end_date_day_array task_end_date_day \
+ -end_date_month_array task_end_date_month \
+ -end_date_year_array task_end_date_year \
+ -project_item_id_array task_project_item_id
+
+} elseif {[empty_string_p $project_item_id]} {
+
+ ad_return_error "Project missing" "For new tasks, a project must be passed in"
+ ad_script_abort
+}
+
# ---------------------------------------------------------------
# permissions and title setup, etc
# ---------------------------------------------------------------
@@ -110,7 +140,8 @@
depends \
assignee_html \
dependency_html \
- logger_variable_html
+ logger_variable_html \
+ project_html
if {[string is true $edit_p]} {
@@ -119,31 +150,6 @@
# EDITING
# -------
- set project_options [pm::project::select_list_of_open \
- -selected $project_item_id]
-
- # find out the default logger variable for this project
- set logger_project [pm::project::get_logger_project \
- -project_item_id $project_item_id]
- set logger_variable_id [logger::project::get_primary_variable \
- -project_id $logger_project]
-
- # get old values
- pm::task::get \
- -tasks_item_id $task_item_id \
- -one_line_array task_one_line \
- -description_array task_description \
- -description_mime_type_array task_description_mime_type \
- -estimated_hours_work_array task_estimated_hours_work \
- -estimated_hours_work_min_array task_estimated_hours_work_min \
- -estimated_hours_work_max_array task_estimated_hours_work_max \
- -dependency_array task_dependency \
- -percent_complete_array task_percent_complete \
- -end_date_day_array task_end_date_day \
- -end_date_month_array task_end_date_month \
- -end_date_year_array task_end_date_year \
- -project_item_id_array task_project_item_id
-
set number 1
set total_number [llength $task_item_id]
@@ -157,6 +163,17 @@
foreach task $task_item_id {
+ set this_project $task_project_item_id($task)
+
+ set project_options [pm::project::select_list_of_open \
+ -selected $this_project]
+
+ # find out the default logger variable for this project
+ set logger_project [pm::project::get_logger_project \
+ -project_item_id $this_project]
+ set logger_variable_id [logger::project::get_primary_variable \
+ -project_id $logger_project]
+
set end_date_html [pm::task::date_html \
-selected_day $task_end_date_day($task) \
-selected_month $task_end_date_month($task) \
@@ -169,7 +186,7 @@
set dependency_options_full [pm::task::options_list_html \
-edit_p $edit_p \
-task_item_id $task \
- -project_item_id $project_item_id \
+ -project_item_id $this_project \
-dependency_task_id $task_dependency($task) \
-dependency_task_ids "$deps" \
-number $total_number \
@@ -180,6 +197,11 @@
-current_variable_id $logger_variable_id \
-select_name logger_variable.$number]
+ set project_html "$project_term:
+ "
+
template::multirow append tasks \
$task \
"" \
@@ -194,10 +216,9 @@
$task_dependency($task) \
$assignee_html \
$dependency_options_full \
- $variable_widget
+ $variable_widget \
+ $project_html
-
-
incr number
}
@@ -266,6 +287,8 @@
-number $new_tasks \
-current_number $number]
+ set project_html ""
+
# make sure deps are working.
template::multirow append tasks \
@@ -282,7 +305,8 @@
$process_dependency($pt) \
$assignee_html \
$dependency_options_full \
- ""
+ "" \
+ $project_html
incr number
}
@@ -306,6 +330,8 @@
-number $new_tasks \
-current_number $i]
+ set project_html ""
+
# sorry this isn't internationalized. The choice is to cludge
# around dates, or to cludge around ad_forms poor support for
# multiple dates.
@@ -324,7 +350,8 @@
"" \
$assignee_html \
$dependency_options_full \
- ""
+ "" \
+ $project_html
}
}