Mojolicious-Plugin-CaptchaRenderer
view release on metacpan or search on metacpan
my $builder = Module::Build->new(
module_name => 'Mojolicious::Plugin::CaptchaRenderer',
license => 'perl',
dist_author => 'Dmitry Konstantinov <konstantinov.dmitry@gmail.com>',
dist_version_from => 'lib/Mojolicious/Plugin/CaptchaRenderer.pm',
build_requires => {
'Test::More' => 0,
},
requires => {
'Mojolicious' => 0,
'Image::Magick' => 0,
'File::Spec' => 0,
'File::Temp' => 0,
},
meta_merge => {
resources => {
repository => 'git://github.com/konstantinov/Mojolicious-Plugin-CaptchaRenderer.git',
},
keywords => [ qw(mojolicious captcha) ],
},
create_makefile_pl => 'traditional',
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
name: Mojolicious-Plugin-CaptchaRenderer
provides:
Mojolicious::Plugin::CaptchaRenderer:
file: lib/Mojolicious/Plugin/CaptchaRenderer.pm
version: 0.02
requires:
File::Spec: 0
File::Temp: 0
Image::Magick: 0
Mojolicious: 0
resources:
license: http://dev.perl.org/licenses/
repository: git://github.com/konstantinov/Mojolicious-Plugin-CaptchaRenderer.git
version: 0.02
Makefile.PL view on Meta::CPAN
(
'PL_FILES' => {},
'INSTALLDIRS' => 'site',
'NAME' => 'Mojolicious::Plugin::CaptchaRenderer',
'EXE_FILES' => [],
'VERSION_FROM' => 'lib/Mojolicious/Plugin/CaptchaRenderer.pm',
'PREREQ_PM' => {
'Test::More' => 0,
'File::Temp' => 0,
'File::Spec' => 0,
'Image::Magick' => 0,
'Mojolicious' => 0
}
)
;
lib/Mojolicious/Plugin/CaptchaRenderer.pm view on Meta::CPAN
package Mojolicious::Plugin::CaptchaRenderer;
use strict;
use warnings;
use File::Temp;
use File::Spec;
use base 'Mojolicious::Plugin';
BEGIN {
die 'Module Image::Magick not properly installed' unless eval { require Image::Magick; 1 }
}
our $VERSION = 0.02;
sub register {
my ($self,$app,$conf) = @_;
$conf = {
color => 'black',
bgcolor => 'white',
size => 60,
wave_amplitude => 7,
wave_length => 80,
%$conf,
};
$app->renderer->add_helper(
captcha => sub {
my ($self,$code) = @_;
my $img = Image::Magick->new(size => '400x400', magick => 'png');
my $x; $x = $img->Read('gradient:#ffffff-#ffffff');
$x = $img->Annotate(
pointsize => $conf->{'size'},
fill => $conf->{'color'},
text => $code,
geometry => '+0+' . $conf->{'size'},
$conf->{'font'} ? (font => $conf->{'font'}) : (),
);
( run in 0.356 second using v1.01-cache-2.11-cpan-beeb90c9504 )