Commit 36185205 authored by Frank Bergmann's avatar Frank Bergmann

- adding functionality to associate generic objects

parent 555f34b7
...@@ -621,7 +621,7 @@ SELECT im_category_hierarchy_new(30011, 30000); ...@@ -621,7 +621,7 @@ SELECT im_category_hierarchy_new(30011, 30000);
SELECT im_category_new(30012, 'Customer review', 'Intranet Ticket Status'); SELECT im_category_new(30012, 'Customer review', 'Intranet Ticket Status');
SELECT im_category_hierarchy_new(30012, 30000); SELECT im_category_hierarchy_new(30012, 30000);
-
SELECT im_category_new(30014, 'Quoting', 'Intranet Ticket Status'); SELECT im_category_new(30014, 'Quoting', 'Intranet Ticket Status');
SELECT im_category_hierarchy_new(30014, 30000); SELECT im_category_hierarchy_new(30014, 30000);
...@@ -640,6 +640,10 @@ SELECT im_category_hierarchy_new(30022, 30000); ...@@ -640,6 +640,10 @@ SELECT im_category_hierarchy_new(30022, 30000);
SELECT im_category_new(30024, 'Invoicing', 'Intranet Ticket Status'); SELECT im_category_new(30024, 'Invoicing', 'Intranet Ticket Status');
SELECT im_category_hierarchy_new(30024, 30000); SELECT im_category_hierarchy_new(30024, 30000);
SELECT im_category_new(30026, 'Waiting for Other', 'Intranet Ticket Status');
SELECT im_category_hierarchy_new(30026, 30000);
-- --
-- Closed States -- Closed States
-- --
...@@ -738,6 +742,10 @@ where category_id = 30520; ...@@ -738,6 +742,10 @@ where category_id = 30520;
SELECT im_category_new(30530, 'Re-Open', 'Intranet Ticket Action'); SELECT im_category_new(30530, 'Re-Open', 'Intranet Ticket Action');
SELECT im_category_new(30540, 'Associate', 'Intranet Ticket Action');
----------------------------------------------------------- -----------------------------------------------------------
-- Create views for shortcut -- Create views for shortcut
......
...@@ -100,6 +100,11 @@ switch $action_id { ...@@ -100,6 +100,11 @@ switch $action_id {
[lang::message::lookup "" intranet-helpdesk.Re_opened_by_user "Re-opened by %user_name%"] [lang::message::lookup "" intranet-helpdesk.Re_opened_by_user "Re-opened by %user_name%"]
} }
} }
30540 {
# Associated
if {"" == $tid} { ad_returnredirect $return_url }
ad_returnredirect [export_vars -base "/intranet-helpdesk/associate" {tid}]
}
30590 { 30590 {
# Delete # Delete
foreach ticket_id $tid { foreach ticket_id $tid {
......
...@@ -27,10 +27,26 @@ set current_user_id [ad_maybe_redirect_for_registration] ...@@ -27,10 +27,26 @@ set current_user_id [ad_maybe_redirect_for_registration]
set bulk_action_list {} set bulk_action_list {}
lappend bulk_actions_list "[lang::message::lookup "" intranet-helpdesk.Delete "Delete"]" "ticket-ticket-rel-del" "[lang::message::lookup "" intranet-helpdesk.Remove_checked_items "Remove Checked Items"]" lappend bulk_actions_list "[lang::message::lookup "" intranet-helpdesk.Delete "Delete"]" "ticket-ticket-rel-del" "[lang::message::lookup "" intranet-helpdesk.Remove_checked_items "Remove Checked Items"]"
set assoc_msg [lang::message::lookup {} intranet-helpdesk.Assoc_to_new_incident_ticket {Associate with a new incident ticket}]
set actions [list $assoc_msg "/intranet-helpdesk/ticket-select?ticket_id=$ticket_id" ""]
set actions [list] set actions [list]
set ttt {
set user_msg [lang::message::lookup {} intranet-helpdesk.Associate_with_User {Associate with User}]
lappend actions $user_msg [export_vars -base "/intranet-helpdesk/associate" {object_id {object_type user}}] ""
set release_project_msg [lang::message::lookup {} intranet-helpdesk.Associate_with_Release_Project {Associate with Release Project}]
lappend actions $release_project_msg [export_vars -base "/intranet-helpdesk/associate" {object_id {object_type release_project}}] ""
set conf_item_msg [lang::message::lookup {} intranet-helpdesk.Associate_with_Conf_Item {Associate with Conf Item}]
lappend actions $conf_item_msg [export_vars -base "/intranet-helpdesk/associate" {object_id {object_type conf_item}}] ""
set ticket_msg [lang::message::lookup {} intranet-helpdesk.Associate_with_Another_Ticket {Associate with another Ticket}]
lappend actions $ticket_msg [export_vars -base "/intranet-helpdesk/associate" {object_id {object_type conf_item}}] ""
}
set assoc_msg [lang::message::lookup {} intranet-helpdesk.New_Association {Associated with new Object}]
lappend actions $assoc_msg [export_vars -base "/intranet-helpdesk/associate" {{object_id $ticket_id}}] ""
list::create \ list::create \
-name tickets \ -name tickets \
-multirow tickets_multirow \ -multirow tickets_multirow \
...@@ -50,57 +66,66 @@ list::create \ ...@@ -50,57 +66,66 @@ list::create \
@tickets_multirow.ticket_chk;noquote@ @tickets_multirow.ticket_chk;noquote@
} }
} }
direction_pretty { rel_name {
label "[lang::message::lookup {} intranet-helpdesk.Dir { }]" label "[lang::message::lookup {} intranet-helpdesk.Relationship_Type {Relationship}]"
} }
project_nr { direction_pretty {
label "[lang::message::lookup {} intranet-helpdesk.Ticket_Nr {Nr}]" label "[lang::message::lookup {} intranet-helpdesk.Direction { }]"
link_url_eval {[export_vars -base "/intranet-helpdesk/new" {ticket_id}]}
} }
project_name { object_type_pretty {
label "[lang::message::lookup {} intranet-helpdesk.Ticket_Name {Ticket Name}]" label "[lang::message::lookup {} intranet-helpdesk.Object_Type {Type}]"
link_url_eval {[export_vars -base "/intranet-helpdesk/new" {ticket_id}]}
} }
ticket_type { object_name {
label "[lang::message::lookup {} intranet-helpdesk.Type {Type}]" label "[lang::message::lookup {} intranet-helpdesk.Object_Name {Object Name}]"
link_url_eval {$object_url}
} }
} }
set tickets_sql " set object_rel_sql "
select select
t.*, o.object_id,
im_category_from_id(t.ticket_type_id) as ticket_type, acs_object__name(o.object_id) as object_name,
p.*, o.object_type as object_type,
ot.pretty_name as object_type_pretty,
otu.url as object_url_base,
r.rel_id, r.rel_id,
r.rel_type as rel_type,
rt.pretty_name as rel_type_pretty,
CASE WHEN r.object_id_one = :ticket_id THEN 'incoming' CASE WHEN r.object_id_one = :ticket_id THEN 'incoming'
WHEN r.object_id_two = :ticket_id THEN 'outgoing' WHEN r.object_id_two = :ticket_id THEN 'outgoing'
ELSE '' ELSE ''
END as direction END as direction
from from
im_tickets t, acs_rels r,
im_projects p, acs_object_types rt,
acs_rels r acs_objects o,
acs_object_types ot
LEFT OUTER JOIN (select * from im_biz_object_urls where url_type = 'view') otu ON otu.object_type = ot.object_type
where where
t.ticket_id = p.project_id and r.rel_type = rt.object_type and
o.object_type = ot.object_type and
( (
r.object_id_one = :ticket_id and r.object_id_one = :ticket_id and
r.object_id_two = t.ticket_id r.object_id_two = o.object_id
OR OR
r.object_id_one = t.ticket_id and r.object_id_one = o.object_id and
r.object_id_two = :ticket_id r.object_id_two = :ticket_id
) )
order by order by
direction direction
" "
db_multirow -extend { ticket_chk ticket_url direction_pretty } tickets_multirow tickets $tickets_sql { db_multirow -extend { ticket_chk object_url direction_pretty rel_name } tickets_multirow object_rels $object_rel_sql {
set ticket_url "" set object_url "$object_url_base$object_id"
set ticket_chk "<input type=\"checkbox\" set ticket_chk "<input type=\"checkbox\"
name=\"rel_id\" name=\"rel_id\"
value=\"$rel_id\" value=\"$rel_id\"
id=\"tickets_list,$rel_id\"> id=\"tickets_list,$rel_id\">
" "
set rel_name [lang::message::lookup "" intranet-helpdesk.Rel_$rel_type $rel_type_pretty]
switch $direction { switch $direction {
incoming { set direction_pretty " -> " } incoming { set direction_pretty " -> " }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment