6a10e885493f689babb554ddb07ab99e232617f0
[scpubgit/stemmatology.git] / lib / Text / Tradition / UserStore.pm
1 package Text::Tradition::UserStore;
2
3 use strict;
4 use warnings;
5
6 use Moose;
7 use KiokuX::User::Util qw(crypt_password);
8
9 use Text::Tradition::User;
10 use Text::Tradition::Directory;
11
12 has 'directory' => ( is => 'rw', isa => 'KiokuX::Model');
13
14 sub add_user {
15     my ($self, $username, $password) = @_;
16
17     my $user = Text::Tradition::User->new(
18         id => $username,
19         password => crypt_password($password),
20     );
21
22     my $scope = $self->directory->new_scope;
23     $self->directory->store($user->kiokudb_object_id, $user);
24
25     return $user;
26 }
27
28 sub find_user {
29     my ($self, $username) = @_;
30
31     return $self->directory->lookup($self->user_prefix . $username);
32     
33 }
34
35 1;