Index: openacs-4/contrib/obsolete-packages/acs-workflow/www/task-assignees.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/obsolete-packages/acs-workflow/www/task-assignees.tcl,v diff -u -r1.1 -r1.2 --- openacs-4/contrib/obsolete-packages/acs-workflow/www/task-assignees.tcl 13 Mar 2001 22:59:27 -0000 1.1 +++ openacs-4/contrib/obsolete-packages/acs-workflow/www/task-assignees.tcl 19 Nov 2001 18:27:40 -0000 1.2 @@ -2,46 +2,45 @@ Remove one or more assignees for a task. } { task_id:integer - {return_url "task?[export_url_vars task_id]"} + {return_url ""} } -properties { context_bar task:onerow assignees:multirow effective_assignees:multirow + done_action_url done_export_vars } array set task [wf_task_info $task_id] -# if the user is assigned, they can always view the task. -# if they aren't assigned and there is an access_privilege, we check it -if { ! $task(this_user_is_assigned_p) && ![empty_string_p $task(access_privilege)]} { - ad_require_permission $task(object_id) $task(access_privilege) -} - - set party_id [ad_conn user_id] -set orig_return_url $return_url -set return_url "task-assignees?[export_url_vars task_id return_url]" -set task(add_assignee_url) "assignee-add?[export_url_vars task_id return_url]" -set task(assign_yourself_url) "assignee-add-2?[export_url_vars task_id party_id return_url]" +set sub_return_url "[ns_conn url]?[export_vars -url {task_id return_url}]" +set task(add_assignee_url) "assignee-add?[export_vars -url {task_id {return_url $sub_return_url}}]" +set task(assign_yourself_url) "assignee-add-2?[export_vars -url {task_id party_id {return_url $sub_return_url}}]" -set context_bar [ad_context_bar [list "case?case_id=$task(case_id)" "$task(object_name) case"] [list "task?[export_url_vars task_id]" "$task(task_name)"] "Assignees"] +set context_bar [ad_context_bar [list "case?[export_vars -url {{case_id $task(case_id)}}]" "$task(object_name) case"] [list "task?[export_vars -url {task_id}]" "$task(task_name)"] "Assignees"] db_multirow assignees assignees { select p.party_id, acs_object.name(p.party_id) as name, p.email, - '' as remove_url + '' as remove_url, + o.object_type from wf_task_assignments ta, - parties p + parties p, + acs_objects o where ta.task_id = :task_id and p.party_id = ta.party_id + and o.object_id = p.party_id } { - set remove_url "assignee-remove-2?[export_url_vars task_id party_id return_url]" + set remove_url "assignee-remove-2?[export_vars -url {task_id party_id {return_url $sub_return_url}}]" + if { [string equal $object_type "user"] } { + set url "/shared/community-member?[export_vars -url {{user_id $party_id}}]" + } } - +set __i 0 db_multirow effective_assignees effective_assignees { select distinct u.user_id, acs_object.name(u.user_id) as name, @@ -54,10 +53,17 @@ and m.party_id = ta.party_id and p.party_id = m.member_id and u.user_id = p.party_id +} { + incr __i + set effective_assignees:${__i}(url) "/shared/community-member?[export_vars -url {user_id}]" } -set return_url $orig_return_url -set done_export_vars [export_form_vars task_id return_url] +if { [empty_string_p $return_url] } { + set return_url "task?[export_vars -url {task_id}]" +} +set done_export_vars [export_vars -form [wf_split_query_url_to_arg_spec $return_url]] +set done_action_url [lindex [split $return_url "?"] 0] ad_return_template +