Perl Diver 2.31
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

Template::Filters

Name Template::Filters
Version 2.87
Located at /usr/lib64/perl5/vendor_perl
File /usr/lib64/perl5/vendor_perl/Template/Filters.pm
Is Core No
Search CPAN for this module Template::Filters
Documentation Template::Filters
Module Details Template::Filters

NAME

Template::Filters - Post-processing filters for template blocks


SYNOPSIS

    use Template::Filters;
    $filters = Template::Filters->new(\%config);
    ($filter, $error) = $filters->fetch($name, \@args, $context);
    if ($filter) {
        print &$filter("some text");
    }
    else {
        print "Could not fetch $name filter: $error\n";
    }


DESCRIPTION

The Template::Filters module implements a provider for creating subroutines that implement the standard filters. Additional custom filters may be provided via the FILTERS configuration option.


METHODS

new(\%params)

Constructor method which instantiates and returns a reference to a Template::Filters object. A reference to a hash array of configuration items may be passed as a parameter. These are described below.

    my $filters = Template::Filters->new({
        FILTERS => { ... },
    });
    my $template = Template->new({
        LOAD_FILTERS => [ $filters ],
    });

A default Template::Filters module is created by the Template module if the LOAD_FILTERS option isn't specified. All configuration parameters are forwarded to the constructor.

    $template = Template->new({
        FILTERS => { ... },
    });

fetch($name, \@args, $context)

Called to request that a filter of a given name be provided. The name of the filter should be specified as the first parameter. This should be one of the standard filters or one specified in the FILTERS configuration hash. The second argument should be a reference to an array containing configuration parameters for the filter. This may be specified as 0, or undef where no parameters are provided. The third argument should be a reference to the current the Template::Context manpage object.

The method returns a reference to a filter sub-routine on success. It may also return (undef, STATUS_DECLINE) to decline the request, to allow delegation onto other filter providers in the LOAD_FILTERS chain of responsibility. On error, ($error, STATUS_ERROR) is returned where $error is an error message or the Template::Exception manpage object indicating the error that occurred.

When the TOLERANT option is set, errors are automatically downgraded to a STATUS_DECLINE response.

use_html_entities()

This class method can be called to configure the html_entity filter to use the the HTML::Entities manpage module. An error will be raised if it is not installed on your system.

    use Template::Filters;
    Template::Filters->use_html_entities();

use_apache_util()

This class method can be called to configure the html_entity filter to use the the Apache::Util manpage module. An error will be raised if it is not installed on your system.

    use Template::Filters;
    Template::Filters->use_apache_util();

use_rfc2732()

This class method can be called to configure the uri and url filters to use the older RFC2732 standard for matching unsafe characters.

use_rfc3986()

This class method can be called to configure the uri and url filters to use the newer RFC3986 standard for matching unsafe characters.


CONFIGURATION OPTIONS

The following list summarises the configuration options that can be provided to the Template::Filters new() constructor. Please see the Template::Manual::Config manpage for further information about each option.

FILTERS

The FILTERS option can be used to specify custom filters which can then be used with the FILTER directive like any other. These are added to the standard filters which are available by default.

    $filters = Template::Filters->new({
        FILTERS => {
            'sfilt1' =>   \&static_filter,
            'dfilt1' => [ \&dyanamic_filter_factory, 1 ],
        },
    });

TOLERANT

The TOLERANT flag can be set to indicate that the Template::Filters module should ignore any errors and instead return STATUS_DECLINED.

DEBUG

The DEBUG option can be used to enable debugging messages for the Template::Filters module by setting it to include the DEBUG_FILTERS value.

    use Template::Constants qw( :debug );
    my $template = Template->new({
        DEBUG => DEBUG_FILTERS | DEBUG_PLUGINS,
    });


STANDARD FILTERS

Please see the Template::Manual::Filters manpage for a list of the filters provided with the Template Toolkit, complete with examples of use.


AUTHOR

Andy Wardley <abw@wardley.org> http://wardley.org/


COPYRIGHT

Copyright (C) 1996-2014 Andy Wardley. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


SEE ALSO

the Template::Manual::Filters manpage, Template, the Template::Context manpage

Perl Diver brought to you by ScriptSolutions.com © 1997- 2024