Index: openacs-4/packages/project-manager/project-manager.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/project-manager/project-manager.info,v diff -u -r1.9 -r1.10 --- openacs-4/packages/project-manager/project-manager.info 21 Jun 2005 21:31:02 -0000 1.9 +++ openacs-4/packages/project-manager/project-manager.info 21 Jun 2005 22:19:02 -0000 1.10 @@ -7,14 +7,14 @@ f f - + Jade Rubick Project management tool for OpenACS 2005-01-13 Integrated Bakery Resources Track tasks, estimates and actual progress for a project. See the <a href="http://openacs.org/projects/dotwrk/project_management/">project page</a> for more information. - + Index: openacs-4/packages/project-manager/sql/postgresql/project-manager-functions-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/project-manager/sql/postgresql/project-manager-functions-create.sql,v diff -u -r1.6 -r1.7 --- openacs-4/packages/project-manager/sql/postgresql/project-manager-functions-create.sql 21 Jun 2005 21:31:02 -0000 1.6 +++ openacs-4/packages/project-manager/sql/postgresql/project-manager-functions-create.sql 21 Jun 2005 22:19:02 -0000 1.7 @@ -436,11 +436,10 @@ -- If it is not associated with a project, then it is placed in the root -- project repository folder. -select define_function_args('pm_task__new_task_item', 'project_id, task_id, title, description, html_p, end_date, percent_complete, estimated_hours_work, estimated_hours_work_min, estimated_hours_work_max, status_id, process_instance_id, dform, creation_date, creation_user, creation_ip, package_id, priority'); +select define_function_args('pm_task__new_task_item', 'project_id, title, description, html_p, end_date, percent_complete, estimated_hours_work, estimated_hours_work_min, estimated_hours_work_max, status_id, process_instance_id, dform, creation_date, creation_user, creation_ip, package_id, priority, task_id'); create or replace function pm_task__new_task_item ( integer, -- project_id - integer, -- task_id varchar, -- title varchar, -- description varchar, -- html_p @@ -456,28 +455,29 @@ integer, -- creation_user varchar, -- creation_ip integer, -- package_id - integer -- priority + integer, -- priority + integer -- task_id ) returns integer as ' declare p_project_id alias for $1; - p_task_id alias for $2; - p_title alias for $3; - p_description alias for $4; - p_mime_type alias for $5; - p_end_date alias for $6; - p_percent_complete alias for $7; - p_estimated_hours_work alias for $8; - p_estimated_hours_work_min alias for $9; - p_estimated_hours_work_max alias for $10; - p_status_id alias for $11; - p_process_instance_id alias for $12; - p_dform alias for $13; - p_creation_date alias for $14; - p_creation_user alias for $15; - p_creation_ip alias for $16; - p_package_id alias for $17; - p_priority alias for $18; + p_title alias for $2; + p_description alias for $3; + p_mime_type alias for $4; + p_end_date alias for $5; + p_percent_complete alias for $6; + p_estimated_hours_work alias for $7; + p_estimated_hours_work_min alias for $8; + p_estimated_hours_work_max alias for $9; + p_status_id alias for $10; + p_process_instance_id alias for $11; + p_dform alias for $12; + p_creation_date alias for $13; + p_creation_user alias for $14; + p_creation_ip alias for $15; + p_package_id alias for $16; + p_priority alias for $17; + p_task_id alias for $18; v_item_id cr_items.item_id%TYPE; v_revision_id cr_revisions.revision_id%TYPE; @@ -486,9 +486,9 @@ -- We want to put the task under the project item -- create the task_number - + v_item_id := content_item__new ( - p_task_id::varchar -- name + p_task_id::varchar, -- name p_project_id, -- parent_id p_task_id, -- item_id null, -- locale @@ -592,7 +592,6 @@ v_revision_id := pm_task__new_task_item ( p_project_id, -- project_id - v_task_id, -- task_item_id p_title, -- title p_description, -- description p_mime_type, -- mime_type @@ -608,7 +607,8 @@ p_creation_user, -- creation_user p_creation_ip, -- creation_ip p_package_id, -- package_id - p_priority -- priority + p_priority, -- priority + v_task_id -- task_item_id ); return v_revision_id; Index: openacs-4/packages/project-manager/sql/postgresql/upgrade/upgrade-3.0d6-3.0d7.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/project-manager/sql/postgresql/upgrade/Attic/upgrade-3.0d6-3.0d7.sql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/project-manager/sql/postgresql/upgrade/upgrade-3.0d6-3.0d7.sql 21 Jun 2005 22:19:02 -0000 1.1 @@ -0,0 +1,177 @@ +select define_function_args('pm_task__new_task_item', 'project_id, title, description, html_p, end_date, percent_complete, estimated_hours_work, estimated_hours_work_min, estimated_hours_work_max, status_id, process_instance_id, dform, creation_date, creation_user, creation_ip, package_id, priority, task_id'); + +create or replace function pm_task__new_task_item ( + integer, -- project_id + varchar, -- title + varchar, -- description + varchar, -- html_p + timestamptz, -- end_date + numeric, -- percent_complete + numeric, -- estimated_hours_work + numeric, -- estimated_hours_work_min + numeric, -- estimated_hours_work_max, + integer, -- status_id + integer, -- process_instance_id + varchar, -- dform + timestamptz, -- creation_date + integer, -- creation_user + varchar, -- creation_ip + integer, -- package_id + integer, -- priority + integer -- task_id +) returns integer +as ' +declare + p_project_id alias for $1; + p_title alias for $2; + p_description alias for $3; + p_mime_type alias for $4; + p_end_date alias for $5; + p_percent_complete alias for $6; + p_estimated_hours_work alias for $7; + p_estimated_hours_work_min alias for $8; + p_estimated_hours_work_max alias for $9; + p_status_id alias for $10; + p_process_instance_id alias for $11; + p_dform alias for $12; + p_creation_date alias for $13; + p_creation_user alias for $14; + p_creation_ip alias for $15; + p_package_id alias for $16; + p_priority alias for $17; + p_task_id alias for $18; + + v_item_id cr_items.item_id%TYPE; + v_revision_id cr_revisions.revision_id%TYPE; + v_task_number integer; +begin + -- We want to put the task under the project item + + -- create the task_number + + v_item_id := content_item__new ( + p_task_id::varchar, -- name + p_project_id, -- parent_id + p_task_id, -- item_id + null, -- locale + now(), -- creation_date + p_creation_user, -- creation_user + p_package_id, -- context_id + p_creation_ip, -- creation_ip + ''pm_task'', -- item_subtype + ''pm_task'', -- content_type + p_title, -- title + p_description, -- description + p_mime_type, -- mime_type + null, -- nls_language + null, -- data + p_package_id -- package_id + ); + + v_revision_id := content_revision__new ( + p_title, -- title + p_description, -- description + now(), -- publish_date + p_mime_type, -- mime_type + NULL, -- nls_language + NULL, -- data + v_item_id, -- item_id + NULL, -- revision_id + now(), -- creation_date + p_creation_user, -- creation_user + p_creation_ip, -- creation_ip + p_package_id -- package_id + ); + + PERFORM content_item__set_live_revision (v_revision_id); + + insert into pm_tasks ( + task_id, task_number, status, process_instance) + values ( + v_item_id, v_task_number, p_status_id, p_process_instance_id); + + insert into pm_tasks_revisions ( + task_revision_id, end_date, percent_complete, estimated_hours_work, estimated_hours_work_min, estimated_hours_work_max, actual_hours_worked, priority, dform) + values ( + v_revision_id, p_end_date, p_percent_complete, p_estimated_hours_work, p_estimated_hours_work_min, p_estimated_hours_work_max, ''0'', p_priority, p_dform); + + update acs_objects set context_id = p_project_id where object_id = v_item_id; + + PERFORM acs_permission__grant_permission( + v_revision_id, + p_creation_user, + ''admin'' + ); + + return v_revision_id; +end;' language 'plpgsql'; + +select define_function_args('pm_task__new_task_item', 'project_id, title, description, html_p, end_date, percent_complete, estimated_hours_work, estimated_hours_work_min, estimated_hours_work_max, status_id, process_instance_id, dform, creation_date, creation_user, creation_ip, package_id, priority'); + +create or replace function pm_task__new_task_item ( + integer, -- project_id + varchar, -- title + varchar, -- description + varchar, -- html_p + timestamptz, -- end_date + numeric, -- percent_complete + numeric, -- estimated_hours_work + numeric, -- estimated_hours_work_min + numeric, -- estimated_hours_work_max, + integer, -- status_id + integer, -- process_instance_id + varchar, -- dform + timestamptz, -- creation_date + integer, -- creation_user + varchar, -- creation_ip + integer, -- package_id + integer -- priority +) returns integer +as ' +declare + p_project_id alias for $1; + p_title alias for $2; + p_description alias for $3; + p_mime_type alias for $4; + p_end_date alias for $5; + p_percent_complete alias for $6; + p_estimated_hours_work alias for $7; + p_estimated_hours_work_min alias for $8; + p_estimated_hours_work_max alias for $9; + p_status_id alias for $10; + p_process_instance_id alias for $11; + p_dform alias for $12; + p_creation_date alias for $13; + p_creation_user alias for $14; + p_creation_ip alias for $15; + p_package_id alias for $16; + p_priority alias for $17; + + v_task_id cr_items.item_id%TYPE; + v_revision_id cr_revisions.revision_id%TYPE; +begin + select acs_object_id_seq.nextval into v_task_id from dual; + + v_revision_id := pm_task__new_task_item ( + p_project_id, -- project_id + p_title, -- title + p_description, -- description + p_mime_type, -- mime_type + p_end_date, -- end_date + p_percent_complete, -- percent_complete + p_estimated_hours_work, -- estimated_hours_work + p_estimated_hours_work_min, -- estimated_hours_work_min + p_estimated_hours_work_max, -- estimated_hours_work_max + p_status_id, -- status_id + p_process_instance_id, -- process_instance_id + p_dform, -- dfom + p_creation_date, -- creation_date + p_creation_user, -- creation_user + p_creation_ip, -- creation_ip + p_package_id, -- package_id + p_priority, -- priority + v_task_id -- task_item_id + ); + + return v_revision_id; +end;' language 'plpgsql'; Index: openacs-4/packages/project-manager/tcl/task-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/project-manager/tcl/task-procs-postgresql.xql,v diff -u -r1.4 -r1.5 --- openacs-4/packages/project-manager/tcl/task-procs-postgresql.xql 21 Jun 2005 21:31:02 -0000 1.4 +++ openacs-4/packages/project-manager/tcl/task-procs-postgresql.xql 21 Jun 2005 22:19:03 -0000 1.5 @@ -202,7 +202,6 @@ select pm_task__new_task_item ( :project_id, - :task_id, :title, :description, :mime_type, @@ -218,7 +217,8 @@ :creation_user, :creation_ip, :package_id, - :priority) + :priority, + :task_id)