webgui_newsletter/lib/WebGUI/User/SpecialState.pm

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;