X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=lib%2FPlack%2FApp%2FGruntmaster%2FAuth.pm;fp=lib%2FPlack%2FApp%2FGruntmaster%2FAuth.pm;h=40ff41bb2eab86f8035b5b2a9ba7ec5adea517b0;hb=8d7256911fcd2f44fc446f03acb39dd08e90024d;hp=0000000000000000000000000000000000000000;hpb=be1da3f93234c402d5679e6028ae8a2bb915185a;p=plack-app-gruntmaster.git diff --git a/lib/Plack/App/Gruntmaster/Auth.pm b/lib/Plack/App/Gruntmaster/Auth.pm new file mode 100644 index 0000000..40ff41b --- /dev/null +++ b/lib/Plack/App/Gruntmaster/Auth.pm @@ -0,0 +1,24 @@ +package Plack::App::Gruntmaster::Auth; + +use 5.014000; +use strict; +our $VERSION = '5999.000_001'; + +use parent qw/Plack::Middleware::Auth::Complex/; + +sub call_register { + my ($self, $req) = @_; + return $self->bad_request('Parameter too long') if grep { length > 100 } $req->parameters->values; + + $self->SUPER::call_register($req); +} + +sub create_user { + my ($self, $parms) = @_; + my %parms = $parms->flatten; + my $sth = $self->{dbh}->prepare_cached('INSERT INTO users (id, name, email, phone, town, university, country, level, passphrase) VALUES (?,?,?,?,?,?,?,?,?)'); + $sth->execute(@parms{qw/username name email phone town university country level/}, $self->hash_passphrase($parms{password})); +} + +1; +__END__