table of contents
HTML::FormHandler::TraitFor::Captcha(3pm) | User Contributed Perl Documentation | HTML::FormHandler::TraitFor::Captcha(3pm) |
NAME¶
HTML::FormHandler::TraitFor::Captcha - generate and validate captchasVERSION¶
version 0.40067SYNOPSIS¶
A role to use in a form to implement a captcha field.package MyApp::Form; use HTML::FormHandler::Moose; with 'HTML::FormHandler::TraitFor::Captcha';
or
my $form = MyApp::Form->new( traits => ['HTML::FormHandler::TraitFor::Captcha'], ctx => $c );
Needs a context object set in the form's 'ctx' attribute which has a session hashref in which to store a 'captcha' hashref, such as is provided by Catalyst session plugin.
METHODS¶
get_captcha¶
Get a captcha stored in "$form->ctx->{session}"set_captcha¶
Set a captcha in "$self->ctx->{session}"captcha_image_url¶
Default is '/captcha/image'. Override in a form to change.sub captcha_image_url { '/my/image/url/' }
Example of a Catalyst action to handle the image:
sub image : Local { my ( $self, $c ) = @_; my $captcha = $c->session->{captcha}; $c->response->body($captcha->{image}); $c->response->content_type('image/'. $captcha->{type}); $c->res->headers->expires( time() ); $c->res->headers->header( 'Last-Modified' => HTTP::Date::time2str ); $c->res->headers->header( 'Pragma' => 'no-cache' ); $c->res->headers->header( 'Cache-Control' => 'no-cache' ); }
AUTHOR¶
FormHandler Contributors - see HTML::FormHandlerCOPYRIGHT AND LICENSE¶
This software is copyright (c) 2016 by Gerda Shank.This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
2016-10-21 | perl v5.24.1 |