<?php
include 'nieuws.inc.php';
-@list ($year, $month, $page) = explode('/', trim($Args, '/'));
+$replyform = $Page == 'melding' && !empty($User);
+@list ($year, $page) = explode('/', trim($Args, '/'));
-if ($page) {
+if ($page and !is_numeric($page)) {
$edit = !empty($User['admin']) ? htmlspecialchars(@$_GET['edit']) : NULL;
- print shownewsarticle($Args, FALSE, $edit);
+ print shownewsarticle($Page.$Args, FALSE, $edit);
+
+ if ($replyform) {
+ print '<h3>Reacties</h3>'."\n";
+ $pagelink = $Page.$Args;
+
+ if ($_POST) {
+ try {
+ @mkdir($pagelink);
+ $target = $pagelink.'/'.date('YmdHis').':'.$User['name'].'.txt';
+ $written = file_put_contents($target, $_POST['reply']);
+ if ($written === FALSE) {
+ throw new Exception('Fout bij opslaan');
+ }
+ $_POST['reply'] = NULL;
+ }
+ catch (Exception $e) {
+ print '<p class=warn>Antwoord niet opgeslagen.</p>'."\n\n";
+ }
+ }
+
+ print '<ul class="replies">';
+
+ foreach (glob("$pagelink/*.txt") as $reply) {
+ preg_match('</(\d{2,14}) : ([^:]*) [^/]* \.txt$>x', $reply, $replymeta);
+ if (!$replymeta) continue;
+ $replydate = str_split($replymeta[1], 2);
+ $replydate[1] = $replydate[0] . $replydate[1];
+ print '<li>';
+ printf('<strong>%s</strong> <small class=date>%s</small>',
+ $replymeta[2], showdate($replydate)
+ );
+ $replydata = file_get_contents($reply);
+ printf('<p>%s</p>', nl2br(htmlspecialchars($replydata)));
+ print "</li>\n";
+ }
+
+ print '<li>';
+ print '<form method="post" action="">';
+ printf('<textarea id="%s" name="%1$s" cols=60 rows=3 placeholder="%s">%s</textarea>'."\n",
+ 'reply',
+ "Bericht van {$User['name']}",
+ ''
+ );
+ print '<input type="submit" value="Plaatsen" />'."\n";
+ print "</form></li>\n";
+
+ print "</ul>\n\n";
+ }
+
return 1;
}
if ($year) {
ob_clean();
- if (is_numeric($year)) {
- $title = "Nieuws ".($month ? $monthname[$month].' ' : '').$year;
- $match = implode('/', [
- $Page, $year, $month ? sprintf('%02d', $month) : '??',
- ]);
+ $title = "Nieuws";
+ if (is_numeric($year) and $year > 999) {
+ $match = "$Page/$year/";
+ if (is_numeric($page)) {
+ $title .= ' '.$monthname[intval($page)];
+ $match .= sprintf('%02d-', $page);
+ }
+ $title .= ' '.$year;
}
- else {
- $title = "Nieuws vóór 2000";
- $match = "$Page/19??/??";
+ elseif ($year === '19') {
+ $match = "$Page/19??/";
+ $title .= " vóór 2000";
}
print "<h2>$title</h2>\n\n";
- print '<div id="news">'."\n\n";
- shownews($match, 100);
- print "</div>\n\n";
+ shownews(glob($match.'*.html'));
return 1;
}
-if ($Args) {
- return;
-}
-
print '<div id="news">'."\n\n";
foreach (array_reverse(glob("$Page/2???")) as $page) {
$year = basename($page, '.html');
printf('<h3><a href="/%s">%s</a></h3>'."\n", $page, $year);
- printtoc("$page/??");
+ printtoc($page);
}
-if ($pages = glob("$Page/19??/??/*.html")) {
- printf('<h3><a href="/%s">%s</a></h3>'."\n", "$Page/oud", 'Eerder');
+if ($pages = glob("$Page/19??/*.html")) {
+ printf('<h3><a href="/%s">%s</a></h3>'."\n", "$Page/19", 'Eerder');
printtoc($pages);
}
print "</div>\n\n";
+if ($replyform) {
+ print "<h3>Melding rapporteren</h3>\n";
+ $_REQUEST['subject'] = 'melding';
+ require 'contact.php';
+?>
+<form method="post">
+<p>
+ <textarea name="body" cols=60 rows=4></textarea>
+ <input type="submit" value="Versturen" />
+</p>
+</form>
+<?php
+}
+
if (!empty($User['admin'])) {
print '<script src="/nieuws/edit.js"></script>'."\n";
}