Added filetype validation for upload

This commit is contained in:
Tom Bloor 2017-04-20 13:58:45 +01:00
parent 7f18aa7173
commit e9f4888a8c
2 changed files with 12 additions and 17 deletions

View file

@ -4,6 +4,7 @@ use Mojo::Base 'Mojolicious::Plugin';
use Email::Valid;
use Geo::UK::Postcode;
use Scalar::Util qw/ looks_like_number /;
use File::Basename;
sub register {
my ( $plugin, $app, $conf ) = @_;
@ -37,6 +38,13 @@ sub register {
my ( $validation, $name, $value, $check ) = @_;
return $value > $check ? undef : 1;
});
$app->validator->add_check( filetype => sub {
my ( $validation, $name, $value, $filetype ) = @_;
my ( undef, undef, $extension ) = fileparse $value->filename, qr/\.[^.]*/;
$extension =~ s/^\.//;
return $app->types->type($extension) eq $filetype ? undef : 1;
});
}
1;