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