From d1d212203c72072d9a42f66c171dc6be83225894 Mon Sep 17 00:00:00 2001 From: joey Date: Sun, 2 Jul 2006 19:06:08 +0000 Subject: * Centralised all calls to HTML::Template and force all the templates to be read as utf8. --- IkiWiki.pm | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'IkiWiki.pm') diff --git a/IkiWiki.pm b/IkiWiki.pm index a2af406a9..7002b55be 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -3,8 +3,6 @@ package IkiWiki; use warnings; use strict; -use File::Spec; -use HTML::Template; use vars qw{%config %links %oldlinks %oldpagemtime %pagectime %renderedfiles %pagesources %depends %hooks}; @@ -304,6 +302,7 @@ sub htmllink ($$$;$$$) { #{{{ "\">?$linktext" } + require File::Spec; $bestlink=File::Spec->abs2rel($bestlink, dirname($page)); if (! $noimageinline && isinlinableimage($bestlink)) { @@ -390,13 +389,24 @@ sub saveindex () { #{{{ close OUT; } #}}} +sub template_params (@) { #{{{ + my $filename=shift; + + require Encode; + require HTML::Template; + return filter => \&Encode::decode_utf8, + filename => "$config{templatedir}/$filename", @_; +} #}}} + +sub template ($;@) { #{{{ + HTML::Template->new(template_params(@_)); +} #}}} + sub misctemplate ($$) { #{{{ my $title=shift; my $pagebody=shift; - my $template=HTML::Template->new( - filename => "$config{templatedir}/misc.tmpl" - ); + my $template=template("misc.tmpl"); $template->param( title => $title, indexlink => indexlink(), -- cgit v1.2.3