From c3da5cf1caa244937d280e0f406927103beef148 Mon Sep 17 00:00:00 2001 From: mark Date: Fri, 9 Dec 2011 18:50:54 +0000 Subject: [PATCH] combine ticket notification scrips, #15353 --- FS/FS/TicketSystem.pm | 8 ++++++- rt/etc/initialdata | 59 ++++++++++++++++++++++++++++++++++++++------------- 2 files changed, 51 insertions(+), 16 deletions(-) diff --git a/FS/FS/TicketSystem.pm b/FS/FS/TicketSystem.pm index aae44f3f5..c1553f17a 100644 --- a/FS/FS/TicketSystem.pm +++ b/FS/FS/TicketSystem.pm @@ -136,7 +136,8 @@ sub _upgrade_data { # Load from RT data file our (@Groups, @Users, @ACL, @Queues, @ScripActions, @ScripConditions, - @Templates, @CustomFields, @Scrips, @Attributes, @Initial, @Final); + @Templates, @CustomFields, @Scrips, @Attributes, @Initial, @Final, + %Delete_Scrips); my $datafile = '%%%RT_PATH%%%/etc/initialdata'; eval { require $datafile }; if ( $@ ) { @@ -211,6 +212,11 @@ sub _upgrade_data { my ($val, $msg) = $item->Delete; warn "error deleting scrip: $msg\n" if !$val; } + elsif ( exists $Delete_Scrips{$c}{$a}{$t} and $item->Creator == 1 ) { + warn "Deleting obsolete scrip $c $a [$t]\n"; + my ($val, $msg) = $item->Delete; + warn "error deleting scrip: $msg\n" if !$val; + } else { $scrip{$c}{$a}{$t} = $item->id; } diff --git a/rt/etc/initialdata b/rt/etc/initialdata index 7b3f6a6bf..edf93fe43 100644 --- a/rt/etc/initialdata +++ b/rt/etc/initialdata @@ -63,11 +63,13 @@ ExecModule => 'NotifyAsComment', Argument => 'Requestor,Cc' }, - { Name => 'Notify Requestors and Ccs', # loc - Description => 'Send mail to requestors and Ccs', # loc - ExecModule => 'Notify', - Argument => 'Requestor,Cc' }, +# deprecated +# { Name => 'Notify Requestors and Ccs', # loc +# Description => 'Send mail to requestors and Ccs', # loc +# ExecModule => 'Notify', +# Argument => 'Requestor,Cc' }, +# not yet deprecated { Name => 'Notify Owner, Requestors, Ccs and AdminCcs as Comment', # loc Description => 'Send mail to owner and all watchers as a "comment"', # loc ExecModule => 'NotifyAsComment', @@ -80,10 +82,12 @@ Description => 'Sends mail to explicitly listed Ccs and Bccs', # loc ExecModule => 'NotifyAsComment', Argument => 'OtherRecipients' }, - { Name => 'Notify Other Recipients', # loc - Description => 'Sends mail to explicitly listed Ccs and Bccs', # loc - ExecModule => 'Notify', - Argument => 'OtherRecipients' }, +# deprecated +# { Name => 'Notify Other Recipients', # loc +# Description => 'Sends mail to explicitly listed Ccs and Bccs', # loc +# ExecModule => 'Notify', +# Argument => 'OtherRecipients' }, + { Name => 'User Defined', # loc Description => 'Perform a user-defined action', # loc ExecModule => 'UserDefined', }, @@ -114,6 +118,12 @@ ExecModule => 'ScheduledResolve', Argument => '', }, +# combine these into a single action so they can see each other in the headers + { Name => 'Notify Requestors, Ccs, and Other Recipients', + Description => 'Send mail to requestors, watchers, and explicit Ccs', + ExecModule => 'Notify', + Argument => 'Requestor,Cc,OtherRecipients', + }, ); @ScripConditions = ( @@ -550,14 +560,18 @@ Hour: { $SubscriptionObj->SubValue('Hour') } ScripCondition => 'On Correspond', ScripAction => 'Notify AdminCcs', Template => 'Admin Correspondence' }, - { Description => 'On Correspond Notify Requestors and Ccs', +# { Description => 'On Correspond Notify Requestors and Ccs', +# ScripCondition => 'On Correspond', +# ScripAction => 'Notify Requestors And Ccs', +# Template => 'Correspondence' }, +# { Description => 'On Correspond Notify Other Recipients', +# ScripCondition => 'On Correspond', +# ScripAction => 'Notify Other Recipients', +# Template => 'Correspondence' }, + { Description => 'On Correspond Notify Requestors, Ccs, and Other Recipients', ScripCondition => 'On Correspond', - ScripAction => 'Notify Requestors And Ccs', - Template => 'Correspondence' }, - { Description => 'On Correspond Notify Other Recipients', - ScripCondition => 'On Correspond', - ScripAction => 'Notify Other Recipients', - Template => 'Correspondence' }, + ScripAction => 'Notify Requestors, Ccs, and Other Recipients', + Template => 'Correspondence', }, { Description => 'On Comment Notify AdminCcs as Comment', ScripCondition => 'On Comment', ScripAction => 'Notify AdminCcs As Comment', @@ -646,3 +660,18 @@ Hour: { $SubscriptionObj->SubValue('Hour') } }, }, ); + +# freeside upgrade +# Obsolete/erroneous scrips +# If +# $Delete_Scrips{conditionname}{actionname}{templatename} +# exists, and the scrip was created by the system user, it +# will be deleted on upgrade. Lowercase all the names here. + +%Delete_Scrips = ( + 'on correspond' => { + 'notify requestors and ccs' => { 'correspondence' => 1 }, + 'notify other recipients' => { 'correspondence' => 1 }, + } +); + -- 2.11.0