use strict;
use warnings;
-BEGIN { __PACKAGE__->mk_accessors(qw/file name/) }
+BEGIN { __PACKAGE__->mk_accessors(qw/user/) }
+
+use overload '""' => sub { shift->user->username };
sub new {
- my ( $class, $name, $file ) = @_;
+ my ( $class, $user ) = @_;
- bless {
- name => $name,
- file => $file,
- }, $class;
+ bless { user => $user }, $class;
}
sub supported_features {
return {
password => {
self_check => 1,
- }
+ },
+ session => 1
};
}
sub check_password {
my ( $self, $password ) = @_;
- return $self->file->htCheckPassword( $self->name, $password );
+ return $self->user->check_password( $password );
}
sub roles {
my $self = shift;
- split( ",", $self->info_string );
+ split( ",", $self->user->extra_info );
}
-sub info_string {
- my $self = shift;
- $self->file->fetchInfo( $self->name );
+sub for_session {
+ my $self = shift;
+ return $self;
+}
+
+sub from_session {
+ my ($class,$c,$user) = @_;
+ return $user;
}
__PACKAGE__;