Index: openacs-4/packages/tasks/lib/tasks.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/tasks/lib/tasks.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/tasks/lib/tasks.tcl 29 Sep 2005 13:40:22 -0000 1.4
+++ openacs-4/packages/tasks/lib/tasks.tcl 6 Oct 2005 16:41:29 -0000 1.5
@@ -27,12 +27,16 @@
set not_done_url [export_vars -url -base "${tasks_url}contact" {orderby {status_id 1} {party_id $contact_id}}]
set return_url "[ad_conn url]?[ad_conn query]"
set add_url [export_vars -base "${tasks_url}task" {return_url orderby status_id {party_id $contact_id}}]
+set bulk_actions [list "[_ tasks.Reassign]" "reassign-task" "[_ tasks.Reassign_selected]"]
set package_id [ad_conn package_id]
template::list::create \
-name tasks \
-multirow tasks \
+ -bulk_actions $bulk_actions \
+ -bulk_action_method post \
+ -bulk_action_export_vars { } \
-key task_id \
-elements {
deleted_p {
Index: openacs-4/packages/tasks/www/task.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/tasks/www/Attic/task.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/tasks/www/task.tcl 26 Sep 2005 08:20:06 -0000 1.4
+++ openacs-4/packages/tasks/www/task.tcl 6 Oct 2005 16:31:55 -0000 1.5
@@ -1,6 +1,6 @@
ad_page_contract {
- Simple add/edit form for projects
+ Simple add/edit form for tasks
@author jader@bread.com, ncarroll@ee.usyd.edu.au
@creation-date 2003-05-15
@@ -16,6 +16,7 @@
status_id:integer,optional
orderby:optional
{return_url ""}
+ {assign_party_id ""}
} -properties {
}
@@ -34,7 +35,24 @@
}
set party_id $real_party_id
}
-set all_parties [concat $party_id $other_party_ids]
+
+set user_id [ad_maybe_redirect_for_registration]
+
+# We select the users to use in the assign_party_id element
+# on the form to let the user choose who will be assigned to
+# the task, plus one blank space that willl be the current party_id
+set assign_parties_options [list [list " " $party_id]]
+append assign_parties_options " [db_list_of_lists get_all_users { }]"
+
+# If the assign_party_id is present then we are going to assign
+# the task to that party_id
+
+if { [exists_and_not_null assign_party_id] } {
+ set all_parties [concat $assign_party_id $other_party_ids]
+} else {
+ set all_parties [concat $party_id $other_party_ids]
+}
+
set names [list]
foreach party $all_parties {
lappend names [contact::link -party_id $party]
@@ -46,7 +64,6 @@
}
set package_id [ad_conn package_id]
-set user_id [ad_maybe_redirect_for_registration]
set title "[_ tasks.AddEdit]"
set context [list $title]
@@ -69,11 +86,7 @@
ad_script_abort
}
-set status_options [db_list_of_lists status_options {
- select title, status_id
- from t_task_status
- order by status_id
-}]
+set status_options [db_list_of_lists status_options { }]
set status_options [lang::util::localize $status_options]
ad_form -name add_edit \
@@ -87,8 +100,12 @@
status_id:integer(hidden),optional
party_id:integer(hidden)
other_party_ids:text(hidden),optional
- {names:text(hidden),optional {label {Add Task To}}}
-
+ {names:text(hidden),optional {label "[_ tasks.Add_task_to]"}}
+ {assign_party_id:text(select),optional
+ {label "[_ tasks.Add_task_to]"}
+ {options { $assign_parties_options}}
+ {help_text "[_ tasks.Select_the_user_to]"}
+ }
{task_prescribed:text(select),optional
{label "[_ tasks.Standard_Task]"}
{options {
@@ -109,13 +126,13 @@
{task:text(text),optional
{label "[_ tasks.Custom_Task]"}
{html { maxlength 1000 size 80 }}
- {help_text {You can either use a standard task or a custom task, but not both}}
+ {help_text "[_ tasks.You_can_either_use]"}
}
{due_date:text
{label "[_ tasks.Due]"}
{html {id date1 size 10 maxlength 10}}
- {help_text {if blank there is no due date}}
+ {help_text "[_ tasks.if_blank_there_is_no]"}
{after_html { \[y-m-d \]}}
}
@@ -126,7 +143,7 @@
{priority:integer(select),optional
{label "[_ tasks.Priority]"}
- {options {{{3 - Very Important} 3} {{2 - Important} 2} {{1 - Normal} 1} {{0 - Not Important} 0}}}
+ {options {{{3 - [_ tasks.Very_Important]} 3} {{2 - [_ tasks.Important]} 2} {{1 - [_ tasks.Normal]} 1} {{0 - [_ tasks.Not_Important]} 0}}}
}
{description:text(textarea),optional,nospell
@@ -146,13 +163,7 @@
} -edit_request {
- db_1row get_task_info {
- select t.title as task, t.description, t.comment,
- to_char(t.due_date,'YYYY-MM-DD') as due_date,
- t.priority, t.status_id as status, t.object_id
- from t_tasks t
- where t.task_id = :task_id
- }
+ db_1row get_task_info { }
set title $task
set context [list $title]
set task_prescribed_p 0
@@ -170,6 +181,7 @@
} -validate {
# {end_date {[calendar::date_valid_p -date $end_date]} {This is not a valid date. Either the date doesn't exist or it is not formatted correctly. Correct formatting is: YYYY-MM-DD or YYYYMMDD}}
} -on_submit {
+
set task_prescribed [string trim $task_prescribed]
set task [string trim $task]
if { [exists_and_not_null task_prescribed] && [exists_and_not_null task] } {
@@ -237,7 +249,7 @@
}
if { ![ad_form_new_p -key task_id] } {
- set creation_id [db_string get_it { select creation_user from acs_objects where object_id = :task_id }]
+ set creation_id [db_string get_it { }]
set creator_url [contact::url -party_id $creation_id]
set creator_name [contact::name -party_id $creation_id]
template::element::create add_edit creator \
Index: openacs-4/packages/tasks/www/task.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/tasks/www/Attic/task.xql,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/tasks/www/task.xql 6 Oct 2005 16:31:55 -0000 1.1
@@ -0,0 +1,62 @@
+
+
+
+
+
+ select
+ case
+ when
+ email is not null
+ then
+ title||' ('||email||')'
+ else
+ title
+ end,
+ user_id
+ from
+ cc_users
+ where
+ user_id <> :user_id
+ order by
+ title asc
+
+
+
+
+
+ select
+ title,
+ status_id
+ from
+ t_task_status
+ order by
+ status_id
+
+
+
+
+
+ select
+ t.title as task,
+ t.description,
+ t.comment,
+ to_char(t.due_date,'YYYY-MM-DD') as due_date,
+ t.priority, t.status_id as status, t.object_id
+ from
+ t_tasks t
+ where
+ t.task_id = :task_id
+
+
+
+
+
+ select
+ creation_user
+ from
+ acs_objects
+ where
+ object_id = :task_id
+
+
+
\ No newline at end of file