=pod =encoding utf8 =head1 NAME Mojolicious::Plugin::Qaptcha - jQuery QapTcha Plugin for Mojolicious =head1 SYNOPSIS # Mojolicious $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', }); # Mojolicious::Lite 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 %= qaptcha_include %= content; @@ index.html.ep %= layout 'default';


and in your controller # Mojolicious::Lite any '/' => sub { my $self = shift; do_something if $self->qaptcha_is_unlocked; $self->render('index'); }; # Mojolicious sub index { my $self = shift; do_something if $self->qaptcha_is_unlocked; $self->render('index'); } =head1 DESCRIPTION L is a L plugin. 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 inherits all methods from L and implements the following new ones. =head2 register $plugin->register(Mojolicious->new, $options_hash); Register plugin in L application. =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. =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 L =head1 AUTHOR Holger Rupprecht - C =head1 SEE ALSO L, L, 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