X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=lib%2FGruntmaster%2FData%2FResult%2FUser.pm;h=c5547c1f776c3b179e54f292600ce7edf26289ad;hb=1de10923aedb415f33631532c45b3589b1fc9f48;hp=9013946092d7225fe00fe9865795c4dc8f9e9afb;hpb=9bb399215eed61555c05f025aedf6dc53f4e977d;p=gruntmaster-data.git diff --git a/lib/Gruntmaster/Data/Result/User.pm b/lib/Gruntmaster/Data/Result/User.pm index 9013946..c5547c1 100644 --- a/lib/Gruntmaster/Data/Result/User.pm +++ b/lib/Gruntmaster/Data/Result/User.pm @@ -113,6 +113,21 @@ __PACKAGE__->set_primary_key("id"); =head1 RELATIONS +=head2 contest_statuses + +Type: has_many + +Related object: L + +=cut + +__PACKAGE__->has_many( + "contest_statuses", + "Gruntmaster::Data::Result::ContestStatus", + { "foreign.owner" => "self.id" }, + { cascade_copy => 0, cascade_delete => 0 }, +); + =head2 contests Type: has_many @@ -158,6 +173,21 @@ __PACKAGE__->has_many( { cascade_copy => 0, cascade_delete => 0 }, ); +=head2 problem_statuses + +Type: has_many + +Related object: L + +=cut + +__PACKAGE__->has_many( + "problem_statuses", + "Gruntmaster::Data::Result::ProblemStatus", + { "foreign.owner" => "self.id" }, + { cascade_copy => 0, cascade_delete => 0 }, +); + =head2 problems Type: has_many @@ -174,15 +204,40 @@ __PACKAGE__->has_many( ); -# Created by DBIx::Class::Schema::Loader v0.07039 @ 2014-05-16 15:23:08 -# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Cho4zmn58Mytf2jHvgP+4g +# Created by DBIx::Class::Schema::Loader v0.07042 @ 2014-12-11 23:51:27 +# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:JcVHC/n8J+NgJge9LkckYA +use Authen::Passphrase; +use Authen::Passphrase::BlowfishCrypt; + +sub check_passphrase { + my ($self, $pw) = @_; + Authen::Passphrase->from_rfc2307($self->passphrase)->match($pw) +} + +sub set_passphrase { + my ($self, $pw) = @_; + $self->update({passphrase => Authen::Passphrase::BlowfishCrypt->new( + cost => 10, + passphrase => $pw, + salt_random => 1, + )->as_rfc2307}); +} -# You can replace this text with custom code or comments, and it will be preserved on regeneration 1; __END__ +=head1 METHODS + +=head2 check_passphrase(I<$passphrase>) + +Returns true if I<$passphrase> is the correct passphrase, false otherwise. + +=head2 set_passphrase(I<$passphrase>) + +Changes the passphrase to I<$passphrase>. + =head1 AUTHOR Marius Gavrilescu Emarius@ieval.roE