1 <define-tag dbhost></define-tag>
2 <define-tag dbport></define-tag>
3 <define-tag dbname>infocon</define-tag>
4 <define-tag logbook>logbook</define-tag>
7 function teaserlink($teaser)
9 return preg_replace('/[^a-zA-Z0-9-]/', '-', $teaser);
12 if (isset ($_GET[type]) && $_GET[type] == "rdf") {
13 $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
14 or die("Unable to connect to SQL server");
16 pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
18 if (isset ($_GET[category])) {
19 $query = "SELECT * FROM <logbook> WHERE public = 1 ";
20 $query .= sprintf ("AND category = '%s' ", addslashes($_GET[category]));
21 $query .= "ORDER BY created DESC LIMIT 5";
23 $query = "SELECT * FROM <logbook> WHERE public = 1 "
24 . "ORDER BY created DESC LIMIT 5";
27 $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
29 echo ("<?xml version='1.0' encoding='iso-8859-1' ?>\n");
30 echo ("<rss version='2.0'>\n");
32 printf (" <lastBuildDate>%s</lastBuildDate>\n", date("D, d M Y H:i:s T"));
34 <title>Information & Consulting Logbuch</title>
35 <description>Information & Consulting Logbuch</description>
36 <link>http://infocon.infodrom.org/logbook/</link>
37 <managingEditor>joey@infodrom.org</managingEditor>
38 <generator>InfoCon</generator>
41 for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
42 $row = pg_fetch_array ($sth, $nr);
44 $body = str_replace(array('<','>','&',"\\\n","\r"),
45 array('<', '>', '&', '', ''),
47 $date = explode (" ", $row['created']);
48 $time = explode (":", $date[1]);
49 $tz = substr($time[2], 2);
50 if (strlen ($tz) == 3) {
53 # Something's borked, so add symbolic name instead
54 $tz = date ("T", mktime ($time[0], $time[1], $time[2], $date[1], $date[2], $date[0]));
56 $date = explode ("-", $date[0]);
57 $date = date ("D, d M Y H:i:s ",
58 mktime ($time[0], $time[1], $time[2], $date[1], $date[2], $date[0]))
61 $url = sprintf('%s-%d.html', teaserlink($row['teaser']), $row['id']);
64 printf (" <title>%s</title>\n", $row['teaser']);
65 printf (" <link>http://infocon.infodrom.org/logbook/%s</link>\n", $url);
66 printf (" <pubDate>%s</pubDate>\n", $date);
67 printf (" <category>%s</category>\n", $row['category']);
68 printf (" <description>%s</description>\n", $body);
71 echo ("\n</channel>\n</rss>\n");
77 $kontaktlink = '<p style="margin-left: -20px;"><strong><a href="../kontaktform.html">Zum Kontakformular</a></strong></p>';
82 #include <infocon.style>
84 <page title="Logbuch" alternates="logbook.rdf|Logbuch" lang="de">
87 $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
88 or die("Unable to connect to SQL server");
90 pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
92 if (strlen ($_SERVER[QUERY_STRING])> 0 && ($_SERVER[QUERY_STRING] == "all" || strlen($_SERVER[QUERY_STRING]) == 4)) {
93 if ($_SERVER[QUERY_STRING] == "all") {
94 $query = "SELECT id,teaser,created FROM <logbook> " .
96 "ORDER BY created DESC";
97 $title = "Index of Logbook Entries";
99 $this_year = (int)$_SERVER[QUERY_STRING];
100 $next_year = $this_year + 1;
101 $query = sprintf ("SELECT id,teaser,created FROM <logbook> "
103 ."AND created >= '%d-01-01' AND created < '%d-01-01' ORDER BY created ASC",
104 $this_year, $next_year);
105 $title = sprintf ("Logbuch %d", $this_year);
107 echo ("<div id=\"logenv\"><div id=\"logbody\">");
108 printf ("<h3 id=\"logtitle\">%s</h3>", $title);
109 echo ("<div id=\"logcontent\">");
111 echo ("<table class=\"font\" width=\"100%\" summary=\"\">");
113 $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
115 for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
116 $row = pg_fetch_array ($sth, $nr);
118 $date = explode (" ", $row['created']);
119 $time = explode (":", $date[1]);
120 $date = explode ("-", $date[0]);
121 $date = sprintf ("%d.%d.%d", $date[2], $date[1], $date[0]);
123 $url = sprintf('%s-%d.html', teaserlink($row['teaser']), $row['id']);
125 printf ("<tr><td align=\"right\">%s</td><td width=\"2\"></td><td><a href=\"./%s\">%s</a></td></tr>",
126 $date, $url, $row['teaser']);
128 echo ("</table><div style=\"padding-top: 0.5em\"></div></div></div></div>");
131 if (strlen ($_SERVER[QUERY_STRING]) > 0) {
132 $query = sprintf ("SELECT * FROM <logbook> "
133 ."WHERE public = 1 AND id = '%s'",
134 addslashes ($_SERVER[QUERY_STRING]));
136 $query = "SELECT * FROM <logbook> WHERE public = 1 " .
137 "ORDER BY created DESC LIMIT 8";
140 $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
142 for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
143 $row = pg_fetch_array ($sth, $nr);
145 $date = explode (" ", $row['created']);
146 $time = explode (":", $date[1]);
147 $date = explode ("-", $date[0]);
148 $date = sprintf ("%d.%d.%d %02d:%02d", $date[2], $date[1], $date[0], $time[0], $time[1]);
150 $url = sprintf('%s-%d.html', teaserlink($row['teaser']), $row['id']);
152 echo ("<div id=\"logenv\"><div id=\"logbody\">");
153 printf ("<h3 id=\"logtitle\"><a href=\"%s\">%s</a></h3>", $url, $row['teaser']);
154 if (strlen ($_SERVER[QUERY_STRING]) > 0)
156 printf ("<div id=\"logcontent\">%s</div>", str_replace ("\\\n", "", str_replace ("\r", "", $row['body'])));
157 echo ("\n<div class=\"logfoot\">");
158 echo ("<div class=\"logfootleft\">");
160 echo ("<div class=\"logfootright\">");
161 printf ("%s | %s | <a href=\"%s\">permanent link</a>", $date, $row['category'], $url);
162 echo ("</div></div>");
163 echo ("</div></div>");
164 if ($nr == 0 || $nr == 4 || $nr == 7)
166 if (strlen ($_SERVER[QUERY_STRING]) > 0)