--- /dev/null
+<define-tag dbhost></define-tag>
+<define-tag dbport></define-tag>
+<define-tag dbname>infocon</define-tag>
+<define-tag logbook>logbook</define-tag>
+
+<?
+function add_social ($url, $title)
+{
+ $urlenc = urlencode ($url);
+ $titleenc = urlencode ($title);
+ $ret = '';
+
+ $ret .= '<div class="soclink">';
+ $ret .= sprintf('<a href="http://digg.com/submit?phase=2&url=%s&title=%s" target="_blank">', $urlenc, $titleenc);
+ $ret .= '<img border="0" src="/Pics/link_digg.gif" alt="Digg this" title="Digg This"></a>';
+ $ret .= '</div>';
+
+ $ret .= '<div class="soclink">';
+ $ret .= sprintf('<a href="http://del.icio.us/post?url=%s&title=%s" target="_blank">', $urlenc, $titleenc);
+ $ret .= '<img border="0" src="/Pics/link_delicious.gif" alt="del.icio.us" title="del.icio.us"></a>';
+ $ret .= '</div>';
+
+ $ret .= '<div class="soclink">';
+ $ret .= sprintf('<a href="http://technorati.com/faves?add=%s" target="_blank">', $urlenc);
+ $ret .= '<img border="0" src="/Pics/link_technorati.gif" alt="Technorati" title="Technorati"></a>';
+ $ret .= '</div>';
+
+ return $ret;
+}
+
+function teaserlink($teaser)
+{
+ return preg_replace('/[^a-zA-Z0-9-]/', '-', $teaser);
+}
+
+ if (isset ($_GET[type]) && $_GET[type] == "rdf") {
+ $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
+ or die("Unable to connect to SQL server");
+
+ pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
+
+ if (isset ($_GET[category])) {
+ $query = "SELECT * FROM <logbook> WHERE public = 1 ";
+ $query .= sprintf ("AND category = '%s' ", addslashes($_GET[category]));
+ $query .= "ORDER BY created DESC LIMIT 5";
+ } else {
+ $query = "SELECT * FROM <logbook> WHERE public = 1 "
+ . "ORDER BY created DESC LIMIT 5";
+ }
+
+ $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+ echo ("<?xml version='1.0' encoding='iso-8859-1' ?>\n");
+ echo ("<rss version='2.0'>\n");
+ echo ("<channel>\n");
+ printf (" <lastBuildDate>%s</lastBuildDate>\n", date("D, d M Y H:i:s T"));
+?>
+ <title>Information & Consulting Logbook</title>
+ <description>Information & Consulting Logbook</description>
+ <link>http://infocon.infodrom.org/logbook/</link>
+ <managingEditor>joey@infodrom.org</managingEditor>
+ <generator>InfoCon</generator>
+
+<?
+ for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
+ $row = pg_fetch_array ($sth, $nr);
+
+ $body = ereg_replace ("<", "<",
+ ereg_replace (">", ">",
+ ereg_replace ("&", "&",
+ str_replace ("\\\n", "",
+ str_replace ("\r", "",
+ $row['body'])))));
+ $date = explode (" ", $row['created']);
+ $time = explode (":", $date[1]);
+ $tz = substr($time[2], 2);
+ if (strlen ($tz) == 3) {
+ $tz .= "00";
+ } else {
+ # Something's borked, so add symbolic name instead
+ $tz = date ("T", mktime ($time[0], $time[1], $time[2], $date[1], $date[2], $date[0]));
+ }
+ $date = explode ("-", $date[0]);
+ $date = date ("D, d M Y H:i:s ",
+ mktime ($time[0], $time[1], $time[2], $date[1], $date[2], $date[0]))
+ . $tz;
+
+ $url = sprintf('%s-%d.html', teaserlink($row['teaser']), $row['id']);
+
+ echo ("<item>\n");
+ printf (" <title>%s</title>\n", $row['teaser']);
+ printf (" <link>http://infocon.infodrom.org/logbook/%s</link>\n", $url);
+ printf (" <pubDate>%s</pubDate>\n", $date);
+ printf (" <category>%s</category>\n", $row['category']);
+ printf (" <description>%s</description>\n", $body);
+ echo ("</item>\n");
+ }
+ echo ("\n</channel>\n</rss>\n");
+
+ exit;
+ }
+
+<protect>
+ $adv_index = '<script type="text/javascript"><!-- google_ad_client = "pub-3134552371074068";
+/* InfoCon Log Index */
+google_ad_slot = "0940423249";
+google_ad_width = 728;
+google_ad_height = 90;
+//-->
+</script>
+<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
+</script>';
+
+ $adv_entry = '<script type="text/javascript"><!-- google_ad_client = "pub-3134552371074068";
+/* InfoCon Log Entry */
+google_ad_slot = "7571618571";
+google_ad_width = 728;
+google_ad_height = 90;
+//-->
+</script>
+<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
+</script>';
+
+ $kontaktlink = '<p style="margin-left: -20px;"><strong><a href="../kontaktform.html">Zum Kontakformular</a></strong></p>';
+</protect>
+
+?>
+
+#include <infocon.style>
+
+<page title="Logbook" alternates="logbook.rdf|Logbook" lang="de">
+
+<?
+ $dbh = pg_pconnect ("<dbhost>", "<dbport>", "<dbname>")
+ or die("Unable to connect to SQL server");
+
+ pg_exec ($dbh, "SET DateStyle = 'ISO'") or die("Datenbank-Abfrage!");
+
+ if (strlen ($_SERVER[QUERY_STRING])> 0 && ($_SERVER[QUERY_STRING] == "all" || strlen($_SERVER[QUERY_STRING]) == 4)) {
+ if ($_SERVER[QUERY_STRING] == "all") {
+ $query = "SELECT id,teaser,created FROM <logbook> " .
+ "WHERE public = 1 " .
+ "ORDER BY created DESC";
+ $title = "Index of Logbook Entries";
+ } else {
+ $this_year = (int)$_SERVER[QUERY_STRING];
+ $next_year = $this_year + 1;
+ $query = sprintf ("SELECT id,teaser,created FROM <logbook> "
+ ."WHERE public = 1 "
+ ."AND created >= '%d-01-01' AND created < '%d-01-01' ORDER BY created ASC",
+ $this_year, $next_year);
+ $title = sprintf ("Logbook %d", $this_year);
+ }
+ echo ("<div id=\"logenv\"><div id=\"logbody\">");
+ printf ("<h3 id=\"logtitle\">%s</h3>", $title);
+ echo ("<div id=\"logcontent\">");
+
+ echo ("<table class=\"font\" width=\"100%\" summary=\"\">");
+
+ $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+ for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
+ $row = pg_fetch_array ($sth, $nr);
+
+ $date = explode (" ", $row['created']);
+ $time = explode (":", $date[1]);
+ $date = explode ("-", $date[0]);
+ $date = sprintf ("%d.%d.%d", $date[2], $date[1], $date[0]);
+
+ $url = sprintf('%s-%d.html', teaserlink($row['teaser']), $row['id']);
+
+ printf ("<tr><td align=\"right\">%s</td><td width=\"2\"></td><td><a href=\"./%s\">%s</a></td></tr>",
+ $date, $url, $row['teaser']);
+ }
+ echo ("</table><div style=\"padding-top: 0.5em\"></div></div></div></div>");
+ echo $kontaktlink;
+ } else {
+ if (strlen ($_SERVER[QUERY_STRING]) > 0) {
+ $query = sprintf ("SELECT * FROM <logbook> "
+ ."WHERE public = 1 AND id = '%s'",
+ addslashes ($_SERVER[QUERY_STRING]));
+ } else {
+ $query = "SELECT * FROM <logbook> WHERE public = 1 " .
+ "ORDER BY created DESC LIMIT 5";
+ }
+
+ $sth = pg_exec ($dbh, $query) or die("Datenbank-Abfrage!");
+
+ for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
+ $row = pg_fetch_array ($sth, $nr);
+
+ $date = explode (" ", $row['created']);
+ $time = explode (":", $date[1]);
+ $date = explode ("-", $date[0]);
+ $date = sprintf ("%d.%d.%d %02d:%02d", $date[2], $date[1], $date[0], $time[0], $time[1]);
+
+ $url = sprintf('%s-%d.html', teaserlink($row['teaser']), $row['id']);
+
+ echo ("<div id=\"logenv\"><div id=\"logbody\">");
+ printf ("<h3 id=\"logtitle\"><a href=\"%s\">%s</a></h3>", $url, $row['teaser']);
+ if (strlen ($_SERVER[QUERY_STRING]) > 0)
+ echo $adv_entry;
+ printf ("<div id=\"logcontent\">%s</div>", str_replace ("\\\n", "", str_replace ("\r", "", $row['body'])));
+ echo ("\n<div class=\"logfoot\">");
+ echo ("<div class=\"logfootleft\">");
+ echo add_social ("http://infocon.infodrom.org/logbook/".$url, $row['teaser']);
+ echo ("</div>");
+ echo ("<div class=\"logfootright\">");
+ printf ("%s | %s | <a href=\"%s\">permanent link</a>", $date, $row['category'], $url);
+ echo ("</div></div>");
+ echo ("</div></div>");
+ if ($nr == 1)
+ echo $adv_index;
+ if (strlen ($_SERVER[QUERY_STRING]) > 0)
+ echo $kontaktlink;
+ }
+ }
+?>
+
+</page>
+
+# Local variables:
+# mode: text
+# mode: auto-fill
+# end: