#
# COPYRIGHT:
#
-# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC
+# This software is Copyright (c) 1996-2015 Best Practical Solutions, LLC
# <sales@bestpractical.com>
#
# (Except where explicitly superseded by other copyright notices)
use Scalar::Util ();
use strict;
+use warnings;
use vars qw(@EXPORT);
@EXPORT=qw(loc CurrentUser);
=cut
-# {{{ sub CurrentUser
=head2 CurrentUser
$self->{'original_user'} = $self->{'user'};
my $current_user = $_[0];
if ( ref $current_user eq 'RT::User' ) {
- $self->{'user'} = new RT::CurrentUser;
+ $self->{'user'} = RT::CurrentUser->new;
$self->{'user'}->Load( $current_user->id );
} else {
$self->{'user'} = $current_user;
if ref $self->{'user'} && $self->{'user'} == $self;
}
- unless ( ref $self->{'user'} && $self->{'user'}->isa('RT::CurrentUser') ) {
- my $msg = "$self was created without a CurrentUser."
- ." Any RT object which is subclass of RT::Base must be created"
- ." with a RT::CurrentUser or a RT::User object as the first argument.";
- $msg .= "\n". Carp::longmess() if @_;
-
- $RT::Logger->error( $msg );
- return $self->{'user'} = undef;
- }
-
return ( $self->{'user'} );
}
-# }}}
sub OriginalUser {
my $self = shift;
}
}
-eval "require RT::Base_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Base_Vendor.pm});
-eval "require RT::Base_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Base_Local.pm});
+sub _ImportOverlays {
+ my $class = shift;
+ my ($package,undef,undef) = caller();
+ $package =~ s|::|/|g;
+ for my $type (qw(Overlay Vendor Local)) {
+ my $filename = $package."_".$type.".pm";
+ eval { require $filename };
+ die $@ if ($@ && $@ !~ m{^Can't locate $filename});
+ }
+}
+__PACKAGE__->_ImportOverlays();
1;