added CAPTCHA to DataForm

This commit is contained in:
Doug Bell 2008-04-27 21:28:18 +00:00
parent db5a948c6b
commit 614da0d2ab
7 changed files with 247 additions and 90 deletions

View file

@ -100,11 +100,16 @@ Returns a boolean indicating whether the string typed matched the image.
=cut
sub getValue {
my $self = shift;
my $value = $self->SUPER::getValue(@_);
my $challenge = $self->session->scratch->get("captcha_".$self->get("name"));
$self->session->scratch->delete("captcha_".$self->get("name"));
return (lc($value) eq lc($challenge));
my $self = shift;
my $value = $self->SUPER::getValue(@_);
my $challenge = $self->session->scratch->get("captcha_".$self->get("name"));
$self->session->scratch->delete("captcha_".$self->get("name"));
my $passed = lc $value eq lc $challenge;
$self->session->errorHandler->info(
"Checking CAPTCHA '" . $self->get("name") . "': " . ( $passed ? "PASSED!" : "FAILED!" )
. " Got: '" . $value . "', Wanted: '" . $challenge . "'"
);
return $passed;
}
#-------------------------------------------------------------------