]> git.sesse.net Git - wloh/blob - common.pm
Pick old results from fotballresultater_2123.
[wloh] / common.pm
1 use strict;
2 use warnings;
3 use POSIX;
4
5 package wloh_common;
6
7 sub get_max_season {
8         my ($dbh, $locale) = @_;
9         my $ref = $dbh->selectrow_hashref('SELECT MAX(sesong) AS max_sesong FROM fotballserier se JOIN fotballspraak sp ON se.spraak=sp.id WHERE kultur=?',
10                 undef, $locale);
11         return $ref->{'max_sesong'};
12 }
13
14 sub output_last_sync {
15         my $dbh = shift;
16         my $ref = $dbh->selectrow_hashref('SELECT EXTRACT(EPOCH FROM last_sync) AS last_sync FROM last_sync');
17         if (!defined($ref)) {
18                 print "    <p class=\"lastsync\">Databasen ble sist synkronisert (ukjent).</p>\n";
19         } else {
20                 my $ts = POSIX::strftime("%Y-%m-%d %H:%M %Z", localtime($ref->{'last_sync'}));
21                 print "    <p class=\"lastsync\">Databasen ble sist synkronisert $ts.</p>\n";
22         }
23 }
24
25 sub get_locale {
26         my $cgi = shift;
27         my $url = $cgi->url(-absolute => 1);
28         $url =~ m#^/([a-z][a-z]-[A-Z][A-Z])/# or die "Invalid locale!";
29         return $1;
30 }
31
32 sub get_auxillary_parameters {
33         my ($dbh, $locale) = @_;
34
35         my $q = $dbh->prepare('SELECT * FROM aux_params WHERE kultur=?');
36         $q->execute($locale);
37
38         my $aux_parms = {};
39         while (my $ref = $q->fetchrow_hashref) {
40                 $aux_parms->{$ref->{'id'}} = $ref->{'value'};
41         }
42         return $aux_parms;
43 }
44
45 sub print_navbar {
46         my ($cgi, $dbh, $locale) = @_;
47         my $url = $cgi->url(-relative => 1);
48
49         print "<p style=\"font-size: smaller;\">";
50
51         my $q = $dbh->prepare('SELECT spraak, kultur FROM fotballspraak WHERE nyestesesong <> -1 ORDER BY id');
52         $q->execute;
53
54         my $first = 1;
55         while (my $ref = $q->fetchrow_hashref) {
56                 if (!$first) {
57                         print " :: ";
58                 }
59                 $first = 0;
60
61                 if ($ref->{'kultur'} eq $locale) {
62                         printf "%s ", $ref->{'spraak'};
63                 } else {
64                         printf "<a href=\"/%s/%s\">%s</a> ", $ref->{'kultur'}, $url, $ref->{'spraak'};
65                 }
66         }
67         print "</p>\n";
68 }
69
70 1;