X-Git-Url: https://git.sesse.net/?p=pr0n;a=blobdiff_plain;f=perl%2FSesse%2Fpr0n%2FTemplates.pm;h=8bf0c1f71226ce69d16d38e8e46ebfb7ac75f581;hp=8ff1e0353457360b2cc69dd3356610f23a8d4d79;hb=290a2bdcb92997fd2537603dee5c67350b2bb7b1;hpb=5855094b0bb9c8a678db12e0750cd4c2a648ef6a diff --git a/perl/Sesse/pr0n/Templates.pm b/perl/Sesse/pr0n/Templates.pm index 8ff1e03..8bf0c1f 100644 --- a/perl/Sesse/pr0n/Templates.pm +++ b/perl/Sesse/pr0n/Templates.pm @@ -14,12 +14,11 @@ BEGIN { %EXPORT_TAGS = qw(); @EXPORT_OK = qw(); } -our %dirs; +our %dirs = (); sub update_dirs { my $r = shift; my $base = $r->dir_config('TemplateBase'); - %dirs = (); for my $dir (<$base/*>) { next unless -d $dir; @@ -33,7 +32,7 @@ sub update_dirs { sub r_to_dir { my $r = shift; - if (!defined(%dirs)) { + if (scalar(keys %dirs) == 0) { update_dirs($r); } @@ -71,7 +70,7 @@ sub fetch_template { return $newcache->{'contents'}; } -sub print_template { +sub process_template { my ($r, $template, $args) = @_; my $text = fetch_template($r, $template); @@ -81,7 +80,12 @@ sub print_template { $text =~ s/$key/$value/g; } - $r->print($text); + return $text; +} + +sub print_template { + my ($r, $template, $args) = @_; + $r->print(process_template($r, $template, $args)); } 1;