return $1;
}
+sub set_locale {
+ my $locale = shift;
+ $locale =~ s/-/_/;
+ POSIX::setlocale(&POSIX::LC_ALL, $locale . '.UTF-8');
+}
+
sub get_auxillary_parameters {
my ($dbh, $locale) = @_;
print "</p>\n";
}
+# mapping from locale to translation to use (if not found, "en" is used)
+my %translation_mapping = (
+ 'nb-NO' => 'no',
+ 'nn-NO' => 'no',
+ 'da-DK' => 'no',
+ 'sv-SE' => 'no',
+ 'nl-NL' => 'en',
+);
+
sub process_template {
- my ($filename, $parms) = @_;
+ my ($filename, $locale, $parms) = @_;
- my $doc = XML::Template::process_file('../templates/' . $filename, $parms);
+ my $translation = $translation_mapping{$locale} // 'en';
+ my $doc;
+ if (-r "../templates/$filename.$translation.xml") {
+ $parms->{'html/xml:lang'} = $translation;
+ $doc = XML::Template::process_file("../templates/$filename.$translation.xml", $parms);
+ } else {
+ $doc = XML::Template::process_file("../templates/$filename.xml", $parms);
+ }
print $doc->toString;
}