package Template::Multilingual; use strict; use base qw(Template); use Template::Multilingual::Parser; our $VERSION = '0.09'; sub _init { my ($self, $options) = @_; $self->{LANGUAGE_VAR} = $options->{LANGUAGE_VAR}; $options->{LANGUAGE_VAR} ||= 'language'; $options->{PARSER} = Template::Multilingual::Parser->new($options); $self->{PARSER} = $options->{PARSER}; $self->SUPER::_init($options) } sub language { my $self = shift; @_ ? $self->{language} = shift : $self->{language}; } sub process { my ($self, $filename, $vars, @args) = @_; unless ($self->{LANGUAGE_VAR}) { $vars ||= {}; $vars->{language} = $self->{language} } $self->SUPER::process($filename, $vars, @args); } =head1 NAME Template::Multilingual - Multilingual templates for Template Toolkit =head1 SYNOPSIS This subclass of Template Toolkit's C