X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Flib%2FRT%2FRule.pm;h=3b3e8b7bf9bc5a7caf9c1059aca44c17672c9ba7;hb=3f0e44be5d3d30ca99f169da7ca5622033f704b4;hp=071f5394c7c7bce0798a818c492d9b65fab205be;hpb=0fb307c305e4bc2c9c27dc25a3308beae3a4d33c;p=freeside.git diff --git a/rt/lib/RT/Rule.pm b/rt/lib/RT/Rule.pm index 071f5394c..3b3e8b7bf 100644 --- a/rt/lib/RT/Rule.pm +++ b/rt/lib/RT/Rule.pm @@ -2,7 +2,7 @@ # # COPYRIGHT: # -# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC +# This software is Copyright (c) 1996-2015 Best Practical Solutions, LLC # # # (Except where explicitly superseded by other copyright notices) @@ -49,15 +49,24 @@ package RT::Rule; use strict; use warnings; + use base 'RT::Action'; use constant _Stage => 'TransactionCreate'; use constant _Queue => undef; + + sub Prepare { my $self = shift; - return (0) if $self->_Queue && $self->TicketObj->QueueObj->Name ne $self->_Queue; - return 1; + if ( $self->_Queue ) { + my $queue = RT::Queue->new( RT->SystemUser ); + $queue->Load( $self->TicketObj->__Value('Queue') ); + if ( $queue->Name ne $self->_Queue ) { + return (0); + } + return 1; + } } sub Commit { @@ -105,14 +114,6 @@ sub RunScripAction { } -eval "require RT::Rule_Vendor"; -if ($@ && $@ !~ qr{^Can't locate RT/Rule_Vendor.pm}) { - die $@; -}; - -eval "require RT::Rule_Local"; -if ($@ && $@ !~ qr{^Can't locate RT/Rule_Local.pm}) { - die $@; -}; +RT::Base->_ImportOverlays(); 1;