X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Flib%2FRT%2FCondition%2FOwnerChange.pm;h=407d5a5aebf0f9db513e1586b2e5a5d18d93b616;hp=e17f589e450599acc88ca1ffa9a304298796d653;hb=e9e0cf0989259b94d9758eceff448666a2e5a5cc;hpb=945721f48f74d5cfffef7c7cf3a3d6bc2521f5dd diff --git a/rt/lib/RT/Condition/OwnerChange.pm b/rt/lib/RT/Condition/OwnerChange.pm index e17f589e4..407d5a5ae 100644 --- a/rt/lib/RT/Condition/OwnerChange.pm +++ b/rt/lib/RT/Condition/OwnerChange.pm @@ -1,91 +1,68 @@ -# BEGIN LICENSE BLOCK -# -# Copyright (c) 1996-2003 Jesse Vincent -# -# (Except where explictly superceded by other copyright notices) -# +# BEGIN BPS TAGGED BLOCK {{{ +# +# COPYRIGHT: +# +# This software is Copyright (c) 1996-2014 Best Practical Solutions, LLC +# +# +# (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. -# -# Unless otherwise specified, all modifications, corrections or -# extensions to this work which alter its source code become the -# property of Best Practical Solutions, LLC when submitted for -# inclusion in the work. -# -# -# END LICENSE BLOCK - - +# +# 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., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301 or visit their web page on the internet at +# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. +# +# +# CONTRIBUTION SUBMISSION POLICY: +# +# (The following paragraph is not intended to limit the rights granted +# to you to modify and distribute this software under the terms of +# the GNU General Public License and is only of importance to you if +# you choose to contribute your changes and enhancements to the +# community by submitting them to Best Practical Solutions, LLC.) +# +# By intentionally submitting any modifications, corrections or +# derivatives to this work, or any other work intended for use with +# Request Tracker, to Best Practical Solutions, LLC, you confirm that +# you are the copyright holder for those contributions and you grant +# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, +# royalty-free, perpetual, license to use, copy, create derivative +# works based on those contributions, and sublicense and distribute +# those contributions and any derivatives thereof. +# +# END BPS TAGGED BLOCK }}} package RT::Condition::OwnerChange; -require RT::Condition::Generic; - +use base 'RT::Condition'; use strict; -use vars qw/@ISA/; -@ISA = qw(RT::Condition::Generic); +use warnings; =head2 IsApplicable If we're changing the owner return true, otherwise return false -=begin testing - -my $q = RT::Queue->new($RT::SystemUser); -$q->Create(Name =>'ownerChangeTest'); - -ok($q->Id, "Created a scriptest queue"); - -my $s1 = RT::Scrip->new($RT::SystemUser); -my ($val, $msg) =$s1->Create( Queue => $q->Id, - ScripAction => 'User Defined', - ScripCondition => 'On Owner Change', - CustomIsApplicableCode => '', - CustomPrepareCode => 'return 1', - CustomCommitCode => ' - $RT::Logger->crit("Before, prio is ".$self->TicketObj->Priority); - $self->TicketObj->SetPriority($self->TicketObj->Priority+1); - $RT::Logger->crit("After, prio is ".$self->TicketObj->Priority); - return(1); - ', - Template => 'Blank' - ); -ok($val,$msg); - -my $ticket = RT::Ticket->new($RT::SystemUser); -my ($tv,$ttv,$tm) = $ticket->Create(Queue => $q->Id, - Subject => "hair on fire", - InitialPriority => '20' - ); -ok($tv, $tm); -ok($ticket->SetOwner('root')); -is ($ticket->Priority , '21', "Ticket priority is set right"); -ok($ticket->Steal); -is ($ticket->Priority , '22', "Ticket priority is set right"); -ok($ticket->Untake); -is ($ticket->Priority , '23', "Ticket priority is set right"); -ok($ticket->Take); -is ($ticket->Priority , '24', "Ticket priority is set right"); - - - - - -=end testing =cut sub IsApplicable { my $self = shift; - if ($self->TransactionObj->Field eq 'Owner') { + if ( ( $self->TransactionObj->Field || '' ) eq 'Owner' ) { return(1); } else { @@ -93,10 +70,7 @@ sub IsApplicable { } } -eval "require RT::Condition::OwnerChange_Vendor"; -die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/OwnerChange_Vendor.pm}); -eval "require RT::Condition::OwnerChange_Local"; -die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/OwnerChange_Local.pm}); +RT::Base->_ImportOverlays(); 1;