AnyReminderTransaction
Jump to navigation
Jump to search
Overview
This modification allows to associate scrips to the creation of a reminder.
Tested only on 3.6.3
How to set up AnyReminderTransaction in RT3:
1. Save the following code to /path/to/rt3/local/lib/RT/Condition/AnyReminderTransaction.pm
# BEGIN BPS TAGGED BLOCK {{{ # # COPYRIGHT: # # Copyright (c) 2007 Revolution Linux, Inc # <mjeanson@revolutionlinux.com> # # (Except where explicitly superseded by other copyright notices) # # # LICENSE: # # This work is made available to you under the terms of Version 2 of # the GNU General Public License. A copy of that license should have # been provided with this software, but in any event can be snarfed # from www.gnu.org. # # This work is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # END BPS TAGGED BLOCK }}} package RT::Condition::AnyReminderTransaction; require RT::Condition::Generic; use strict; use vars qw/@ISA/; @ISA = qw(RT::Condition::Generic); =head2 IsApplicable If the ticket object type is "reminder" return true, otherwise return false =cut sub IsApplicable { my $self = shift; if ($self->TicketObj->Type eq 'reminder') { return(1); } else { return(undef); } } eval "require RT::Condition::AnyReminderTransaction_Vendor"; die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/AnyReminderTransaction_Vendor.pm}); eval "require RT::Condition::AnyReminderTransaction_Local"; die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/AnyReminderTransaction_Local.pm}); 1;
2. Save the following code in a datafile named AnyReminderTransaction.insert on your server:
@ScripConditions = ( { Name => 'On Reminder Create', # loc Description => 'When a reminder is created', # loc ApplicableTransTypes => 'Create', ExecModule => 'AnyReminderTransaction', }, );
3. Run the RT3 Setup Database tool specifying to insert the datafile just saved. This will create the ScripConditions in RT's database.
/path/to/rt3/sbin/rt-setup-database --action insert --datafile /path/to/AnyReminderTransaction.insert