/usr/share/perl5/HTML/FormHandler/Foo.pm is in libhtml-formhandler-perl 0.40067-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | package HTML::FormHandler::Foo;
# ABSTRACT: Experiment in loading form from config file
$HTML::FormHandler::Foo::VERSION = '0.40067';
use Moose;
extends 'HTML::FormHandler';
with 'HTML::FormHandler::Render::WithTT';
use Config::Any;
has 'form_error_message' => ( isa => 'Str', is => 'rw' );
has 'javascript_src' => ( isa => 'Str', is => 'rw' );
has 'javascript' => ( isa => 'Str', is => 'rw' );
sub before_build {
my $self = shift;
$self->add_tt_include_path('share/templates/foo');
$self->process_config_file;
$self->process_config;
}
sub build_tt_template { 'form.tt' }
has 'config_file' => ( isa => 'Str', is => 'rw' );
has 'config' => ( isa => 'HashRef', is => 'rw' );
sub submitted_and_valid { shift->validated }
sub process_config_file {
my $self = shift;
return unless $self->config_file;
unless ( -e $self->config_file ) {
die "form config file " . $self->config_file . " . does not exist";
}
my $config = Config::Any->load_files({
files => [$self->config_file],
use_ext => 1,
driver_args => { General => { -UTF8 => 1 }, },
});
$config = $config->[0]->{$self->config_file};
$self->config($config);
}
sub process_config {
my $self = shift;
my $config = $self->config;
while ( my ( $key, $value ) = each %{$config} ) {
confess "invalid attribute '$key' in form config"
unless $self->can($key);
$self->$key($value);
}
}
__PACKAGE__->meta->make_immutable;
use namespace::autoclean;
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
HTML::FormHandler::Foo - Experiment in loading form from config file
=head1 VERSION
version 0.40067
=head1 AUTHOR
FormHandler Contributors - see HTML::FormHandler
=head1 COPYRIGHT 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.
=cut
|