=pod
=encoding utf8
=head1 NAME
Mojolicious::Plugin::Qaptcha - jQuery QapTcha Plugin for Mojolicious
=head1 SYNOPSIS
$app->plugin('Qaptcha', { inbuild_jquery => 1, inbuild_jquery_ui => 1, inbuild_jquery_ui_touch => 1, txtLock => "LOCKED", txtUnlock => "UNLOCKED", disabledSubmit => "true", autoRevert => "false", autoSubmit => "true", qaptcha_url => '/do_unlock', });
plugin 'Qaptcha', { inbuild_jquery => 1, inbuild_jquery_ui => 1, inbuild_jquery_ui_touch => 1, txtLock => "LOCKED", txtUnlock => "UNLOCKED", disabledSubmit => "true", autoRevert => "false", autoSubmit => "true", qaptcha_url => '/do_unlock', };
and in your templates
@@ layouts/default.html.ep <!DOCTYPE html>
%= qaptcha_include %= content;@@ index.html.ep %= layout 'default';
and in your controller
any '/' => sub { my $self = shift;
do_something if $self->qaptcha_is_unlocked;
$self->render('index');
};
sub index { my $self = shift;
do_something if $self->qaptcha_is_unlocked;
$self->render('index');
}
=head1 DESCRIPTION
L
It brings jQuery QapTcha functionality inside your html form in an element with class 'QapTcha'. When QapTcha is unlocked, next request has to submit form. Otherwise QapTcha will be locked back.
=head1 METHODS
L
=head2 register
$plugin->register(Mojolicious->new, $options_hash);
Register plugin in L
=head2 HELPERS
=over 4
=item qaptcha_include
Includes (optional configured) jquery and qaptcha javascript.
=item qaptcha_is_unlocked
Returns 1 if QapTcha is unlocked.
=back
=head2 OPTIONS
=over 4
=item inbuild_jquery
If set to 1 jQuery 1.8.2 is rendered into %= qaptcha_include.
=item inbuild_jquery_ui
If set to 1 jQuery UI - v1.8.2 is rendered into %= qaptcha_include.
=item inbuild_jquery_ui_touch
If set to 1 jQuery.UI.iPad plugin is rendered into %= qaptcha_include.
=item txtLock
Text to display for locked QapTcha
=item txtUnlock
Text to display for unlocked QapTcha
=item disabledSubmit
Add the "disabled" attribut to the submit button default: false
=item autoRevert
Slider returns to the init-position, when the user hasn't dragged it to end default: true
=item autoSubmit
If true, auto-submit form when the user has dragged it to the end default: false
=item qaptcha_url
Configurable route to unlock qaptcha
=back
an example is located in L<ex/qaptcha.pl|https://github.com/hrupprecht/Mojolicious-Plugin-Qaptcha/blob/master/ex/qaptcha.pl>.
=head1 INSTALLATION
To install this module, run the following commands:
perl Build.PL
./Build
./Build test
./Build install
SUPPORT AND DOCUMENTATION
After installing, you can find documentation for this module with the perldoc command.
perldoc Mojolicious::Plugin::Qaptcha
You can also look for information at:
AnnoCPAN, Annotated CPAN documentation
http://annocpan.org/dist/Mojolicious-Plugin-Qaptcha
CPAN Ratings
http://cpanratings.perl.org/d/Mojolicious-Plugin-Qaptcha
Search CPAN
http://search.cpan.org/dist/Mojolicious-Plugin-Qaptcha/
=head1 SOURCE REPOSITORY
Lhttp://github.com/hrupprecht/Mojolicious-Plugin-Qaptcha
=head1 AUTHOR
Holger Rupprecht - CHolger.Rupprecht@gmx.de
=head1 SEE ALSO
L
=head1 COPYRIGHT AND LICENSE
Copyright (C) 2013 by Holger Rupprecht
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
=cut