« HTML::FillInForm::ForceUTF8をCPAN up | メイン | Femoのメンテナンスおよびサーバ移動を5月24日24時から行います »

Template::Plugin::FillInForm::ForceUTF8

ForceUTF8シリーズ。

TT Pluginなんだけど、フィルターのデフォルトの名前は、fillinformのままにしてみている。
Template::Provider::Encodingをhacksて、[% USE FillInForm %]を自動的に書き換えると便利かも。
ソースはここから

package Template::Plugin::FillInForm::ForceUTF8;

use strict;
use base qw(Template::Plugin::Filter);
use HTML::FillInForm::ForceUTF8;

our $VERSION = 0.01;

sub init {
    my $self = shift;
    $self->{_DYNAMIC} = 1;
    $self->install_filter($self->{_ARGS}->[0] || 'fillinform');
    $self;
}

sub filter {
    my ($self, $text, $args, $config ) = @_;
    my $fif = HTML::FillInForm::ForceUTF8->new;
    return $fif->fill(scalarref => \$text, %$config);
}

1;