9 my ($dbh, $locale) = @_;
10 my $ref = $dbh->selectrow_hashref('SELECT MAX(sesong) AS max_sesong FROM fotballserier se JOIN fotballspraak sp ON se.spraak=sp.id WHERE kultur=?',
12 return $ref->{'max_sesong'};
17 my $ref = $dbh->selectrow_hashref('SELECT EXTRACT(EPOCH FROM last_sync) AS last_sync FROM last_sync');
21 return POSIX::strftime("%Y-%m-%d %H:%M %Z", localtime($ref->{'last_sync'}));
25 sub output_last_sync {
27 my $ts = get_last_sync($dbh);
28 print " <p class=\"lastsync\">Databasen ble sist synkronisert $ts.</p>\n";
33 my $url = $cgi->url(-absolute => 1);
34 $url =~ m#^/([a-z][a-z]-[A-Z][A-Z])/# or die "Invalid locale!";
38 sub get_auxillary_parameters {
39 my ($dbh, $locale) = @_;
41 my $q = $dbh->prepare('SELECT * FROM aux_params WHERE kultur=?');
45 while (my $ref = $q->fetchrow_hashref) {
46 $aux_parms->{$ref->{'id'}} = $ref->{'value'};
52 my ($cgi, $dbh, $locale) = @_;
53 my $url = $cgi->url(-relative => 1);
55 print "<p style=\"font-size: smaller;\">";
57 my $q = $dbh->prepare('SELECT spraak, kultur FROM fotballspraak WHERE nyestesesong <> -1 ORDER BY id');
63 while (my $ref = $q->fetchrow_hashref) {
66 $lang{'separator'} = '';
70 if ($ref->{'kultur'} eq $locale) {
71 $lang{'lang-with-link'} = '';
72 $lang{'lang-no-link'} = $ref->{'spraak'};
74 $lang{'a'} = $ref->{'spraak'};
75 $lang{'a/href'} = sprintf "/%s/%s", $ref->{'kultur'}, $url;
76 $lang{'lang-no-link'} = '';
78 push @languages, \%lang;
85 my ($cgi, $dbh, $locale) = @_;
86 my $url = $cgi->url(-relative => 1);
88 print "<p style=\"font-size: smaller;\">";
90 my $q = $dbh->prepare('SELECT spraak, kultur FROM fotballspraak WHERE nyestesesong <> -1 ORDER BY id');
94 while (my $ref = $q->fetchrow_hashref) {
100 if ($ref->{'kultur'} eq $locale) {
101 printf "%s ", $ref->{'spraak'};
103 printf "<a href=\"/%s/%s\">%s</a> ", $ref->{'kultur'}, $url, $ref->{'spraak'};
109 sub process_template {
110 my ($filename, $parms) = @_;
112 my $doc = XML::Template::process_file('../templates/' . $filename, $parms);
113 print $doc->toString;