48 lines
885 B
Perl
48 lines
885 B
Perl
package WebGUI::User::SpecialState;
|
|
|
|
use strict;
|
|
use warnings;
|
|
use Carp;
|
|
|
|
use base 'WebGUI::User';
|
|
|
|
sub create {
|
|
my $class = shift;
|
|
my $session = shift;
|
|
|
|
my $self = $class->SUPER::create( $session, @_ );
|
|
$self->disable;
|
|
$self->username( $self->getId );
|
|
|
|
# WebGUI::User->create always returns an object of class WebGUI::User, so we must instanciate again.
|
|
return $class->new( $session, $self->getId );
|
|
}
|
|
|
|
sub addSpecialState {
|
|
my $self = shift;
|
|
my $state = shift || croak 'state is required';
|
|
my $id = shift;
|
|
|
|
return;
|
|
}
|
|
|
|
sub isAdHocUser {
|
|
my $class = shift;
|
|
my $user = shift;
|
|
|
|
return
|
|
$user->username eq $user->getId
|
|
&& !$user->isEnabled;
|
|
}
|
|
|
|
|
|
sub removeSpecialState {
|
|
my $self = shift;
|
|
my $state = shift || croak 'state is required';
|
|
my $id = shift;
|
|
|
|
return;
|
|
}
|
|
|
|
1;
|
|
|