X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2FCurrentUser.pm;h=bcd337d2c37d039a8250f18023c4c2d830c25e7a;hp=13d34167d242f485972a80b32967458fc7c1b3da;hb=74e058c8a010ef6feb539248a550d0bb169c1e94;hpb=c0e8da2f1e89729efa1032241e4239765a296514 diff --git a/FS/FS/CurrentUser.pm b/FS/FS/CurrentUser.pm index 13d34167d..bcd337d2c 100644 --- a/FS/FS/CurrentUser.pm +++ b/FS/FS/CurrentUser.pm @@ -1,11 +1,13 @@ package FS::CurrentUser; -use vars qw($CurrentUser); +use vars qw($CurrentUser $upgrade_hack); #not at compile-time, circular dependancey causes trouble #use FS::Record qw(qsearchs); #use FS::access_user; +$upgrade_hack = 0; + =head1 NAME FS::CurrentUser - Package representing the current user @@ -19,8 +21,11 @@ FS::CurrentUser - Package representing the current user sub load_user { my( $class, $user ) = @_; #, $pass - #XXX remove me at some point - return "" if $user =~ /^fs_(queue|selfservice)$/; + if ( $upgrade_hack ) { + return $CurrentUser = new FS::CurrentUser::BootstrapUser; + } + + #return "" if $user =~ /^fs_(queue|selfservice)$/; #not the best thing in the world... eval "use FS::Record qw(qsearchs);"; @@ -31,6 +36,7 @@ sub load_user { $CurrentUser = qsearchs('access_user', { 'username' => $user, #'_password' => + 'disabled' => '', } ); die "unknown user: $user" unless $CurrentUser; # or bad password @@ -46,5 +52,16 @@ Creepy crawlies =cut +package FS::CurrentUser::BootstrapUser; + +sub new { + my $proto = shift; + my $class = ref($proto) || $proto; + my $self = {}; + bless ($self, $class); +} + +sub AUTOLOAD { 1 }; + 1;