1package MojoMojo::Schema::ResultSet::Person;
2
3use strict;
4use warnings;
5use parent qw/MojoMojo::Schema::Base::ResultSet/;
6
7=head1 NAME
8
9MojoMojo::Schema::ResultSet::Person - resultset methods on users
10
11=head1 METHODS
12
13=head2 get_person
14
15Get a person by login.
16
17=cut
18
19sub get_person {
20    my ( $self, $login ) = @_;
21    return $self->search( { login => $login } )->single;
22}
23
24=head2 get_user
25
26Same as L</get_person>.
27
28=cut
29
30sub get_user {
31    my ( $self, $user ) = @_;
32    return $self->search( { login => $user } )->next();
33}
34
35=head2 user_free
36
37Check if a username is available. Returns 1 for available, 0 for in use.
38
39=cut
40
41sub user_free {
42    my ( $class, $schema, $login ) = @_;
43    $login ||= $class;
44    my $user = $class->result_source->resultset->get_user($login);
45    return ( $user ? 0 : 1 );
46}
47
48=head1 AUTHOR
49
50Marcus Ramberg <mramberg@cpan.org>
51
52=head1 LICENSE
53
54This library is free software. You can redistribute it and/or modify
55it under the same terms as Perl itself.
56
57=cut
58
591;
60