The Perl version is *a lot* faster than the shell version, so we'll
[infodrom.org/www.infodrom.org] / Styles / calendar.style
1 # Important tools for our events calendar
2
3 #include <db.style>
4
5 <?
6   # light yellow for underlying currently happening events
7   #
8   $nowcolor = "fffec9";
9   $event_cols = "name,start,start+delta,city,country,conference,exhibition,url,deburl,localurl";
10
11   $event_table_start = '<center><table border=0 cellpadding=2 cellspacing=0 width=100%>'
12                 .'<tr bgcolor="<colh>">'
13                 .'<th><ifont>Date</ifont></th>'
14                 .'<th align=left><ifont>Name</ifont></th>'
15                 .'<th align=left><ifont>City</ifont></th>'
16                 .'<th align=left><ifont>Country</ifont></th>'
17                 .'<th><ifont>Conf</ifont></th>'
18                 .'<th><ifont>Exhib</ifont></th>'
19                 .'</tr>';
20   $event_table_end = '</table></center>';
21
22   $event_trow = '<tr bgcolor="%s">'
23          .'<td><ifont><font size="-1">%s</font></ifont></td>'
24          .'<td><ifont><font size="-1">%s</font></ifont></td>'
25          .'<td><ifont><font size="-1">%s</font></ifont></td>'
26          .'<td><ifont><font size="-1">%s</font></ifont></td>'
27          .'<td align="center"><ifont><font size="-1">%s</font></ifont></td>'
28          .'<td align="center"><ifont><font size="-1">%s</font></ifont></td>'
29          .'</tr>';
30
31   $event_border_start = '<p><div align=right>'
32                  .'<table width=99% border=0 cellpadding=0 cellspacing=0><tr bgcolor=#000000><td>'
33                  .'<table width=100% border=0 cellpadding=0 cellspacing=1><tr bgcolor=#<bgcolor>><td>';
34   $event_border_end   = '</td></tr></table></td></tr></table></div></p>';
35
36   $event_month = array ("","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
37
38   # Return a properly formatted name, maybe with a link
39   #        Only Debian gets localurl and deburl if available
40   #
41   function encode_name ($row, $type)
42   {
43     if ($type == "debian") {
44       if ($row['localurl']) {
45         $name = sprintf ("<a href="\"%s\"">%s</a>", $row['localurl'], $row['name']);
46       } elseif ($row['deburl']) {
47         $name = sprintf ("<a href="\"%s\"">%s</a>", $row['deburl'], $row['name']);
48       } elseif ($row['url']) {
49         $name = sprintf ("<a href="\"%s\"">%s</a>", $row['url'], $row['name']);
50       } else {
51         $name = $row['name'];
52       }
53     } elseif ($type == "infodrom") {
54       if ($row['url']) {
55         $name = sprintf ("<a href="\"%s\"">%s</a>", $row['url'], $row['name']);
56       } else {
57         $name = $row['name'];
58       }
59     } else {
60       return $row['name'];
61     }
62     return $name;
63   }
64
65   # Properly decode start time and duration of an event
66   #
67   function format_date ($date, $end)
68   {
69     global $event_month;
70
71     $mi = sprintf ("%d", $date[1]);
72     if ($date[1] == $end[1]) {
73       if ($date[2] == $end[2]) {
74         $date = sprintf ("%s&nbsp;%d", $event_month[$mi], $date[2]);
75       } else {
76         $date = sprintf ("%s&nbsp;%d-%d", $event_month[$mi], $date[2], $end[2]);
77       }
78     } else {
79       $mii = sprintf ("%d", $end[1]);
80       $date = sprintf ("%s&nbsp;%d-%s&nbsp;%d", $event_month[$mi], $date[2], $event_month[$mii], $end[2]);
81     }
82     return $date;
83   }
84
85   # Connect to the database and return the handler
86   #
87   function event_connect ()
88   {
89     $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
90            or die("Unable to connect to SQL server");
91
92     pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
93
94     return $dbh;
95   }
96
97 ?>
98
99 # Local variables:
100 # mode: html
101 # mode: auto-fill
102 # mode: iso-accents
103 # end: