-@ScripConditions = (
+use strict;
+use warnings;
+
+our @ScripConditions = (
{ Name => 'On Reject', # loc
Description => 'Whenever a ticket is rejected', # loc
ApplicableTransTypes => 'Status',
},
);
-@Final = (
+our @Final = (
sub {
- $RT::Logger->debug("Going to correct descriptions of notify actions in the DB");
+ RT->Logger->debug("Going to correct descriptions of notify actions in the DB");
my $actions = RT::ScripActions->new( RT->SystemUser );
$actions->Limit(
);
while ( my $action = $actions->Next ) {
my ($status, $msg) = $action->__Set( Field => 'Name', Value => 'Notify Owner, Requestors, Ccs and AdminCcs' );
- $RT::Logger->warning( "Couldn't change action name: $msg" )
+ RT->Logger->warning( "Couldn't change action name: $msg" )
unless $status;
($status, $msg) = $action->__Set( Field => 'Description', Value => 'Send mail to owner and all watchers' );
- $RT::Logger->warning( "Couldn't change action description: $msg" )
+ RT->Logger->warning( "Couldn't change action description: $msg" )
unless $status;
}
);
while ( my $action = $actions->Next ) {
my ($status, $msg) = $action->__Set( Field => 'Name', Value => 'Notify Owner, Requestors, Ccs and AdminCcs as Comment' );
- $RT::Logger->warning( "Couldn't change action name: $msg" )
+ RT->Logger->warning( "Couldn't change action name: $msg" )
unless $status;
($status, $msg) = $action->__Set( Field => 'Description', Value => 'Send mail to owner and all watchers as a "comment"' );
- $RT::Logger->warning( "Couldn't change action description: $msg" )
+ RT->Logger->warning( "Couldn't change action description: $msg" )
unless $status;
}
- $RT::Logger->debug("Corrected descriptions of notify actions in the DB.");
+ RT->Logger->debug("Corrected descriptions of notify actions in the DB.");
return 1;
},
);
-
+our (@ScripActions, @Scrips);
{
-$RT::Logger->debug("Going to add in Extract Subject Tag actions if they were missed during a previous upgrade");
+RT->Logger->debug("Going to add in Extract Subject Tag actions if they were missed during a previous upgrade");
-$actions = RT::ScripActions->new( RT->SystemUser );
+my $actions = RT::ScripActions->new( RT->SystemUser );
$actions->Limit(
FIELD => 'ExecModule',
VALUE => 'ExtractSubjectTag',
my $extract_action = $actions->First;
if ( $extract_action && $extract_action->Id ) {
- $RT::Logger->debug("You appear to already have an Extract Subject Tag action, skipping");
+ RT->Logger->debug("You appear to already have an Extract Subject Tag action, skipping");
return 1;
} else {
- $RT::Logger->debug("Didn't find an existing Extract Subject Tag action, adding it");
+ RT->Logger->debug("Didn't find an existing Extract Subject Tag action, adding it");
push @ScripActions, (
{ Name => 'Extract Subject Tag', # loc
Description => 'Extract tags from a Transaction\'s subject and add them to the Ticket\'s subject.', # loc
},
);
- $RT::Logger->debug("Adding Extract Subject Tag Scrip");
- push @Scrips, (
- { Description => "On transaction, add any tags in the transaction's subject to the ticket's subject",
- ScripCondition => 'On Transaction',
- ScripAction => 'Extract Subject Tag',
- Template => 'Blank'
- },
- );
+ RT->Logger->debug("Adding Extract Subject Tag Scrip");
+ push @Final, sub {
+ my $action = RT::ScripAction->new( RT->SystemUser );
+ $action->Load( 'Extract Subject Tag' );
+ my $condition = RT::ScripCondition->new( RT->SystemUser );
+ $condition->Load( 'On Transaction' );
+ my $template = RT::Template->new( RT->SystemUser );
+ $template->LoadByName( Name => 'Blank', Queue => 0 );
+ my $scrip = RT::Scrip->new( RT->SystemUser );
+ $scrip->RT::Record::Create(
+ Description => "On transaction, add any tags in the transaction's subject to the ticket's subject",
+ ScripCondition => $condition->id,
+ ScripAction => $action->id,
+ Template => $template->id,
+ Stage => 'TransactionCreate',
+ Queue => 0,
+ );
+ };
}
}