X-Git-Url: http://git.shiar.net/minimedit.git/blobdiff_plain/177953fe451a3e393cf9d63bc977de11544bd395..a6e2e74ced2c2a0aa816b2002c5d7d037b45f436:/nieuws/index.php
diff --git a/nieuws/index.php b/nieuws/index.php
index 506cd05..4ffaa23 100644
--- a/nieuws/index.php
+++ b/nieuws/index.php
@@ -4,66 +4,52 @@ include 'nieuws.inc.php';
$replyform = $Page == 'melding' && !empty($User);
@list ($year, $page) = explode('/', trim($Args, '/'));
+if (!empty($User['admin'])) {
+ print ''."\n";
+}
+
if ($page and !is_numeric($page)) {
$edit = !empty($User['admin']) ? htmlspecialchars(@$_GET['edit']) : NULL;
- print shownewsarticle($Page.$Args, FALSE, $edit);
-
- if ($replyform) {
- print '
Reacties
'."\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 'Antwoord niet opgeslagen.
'."\n\n";
- }
+ $article = new ArchiveArticle("$Page$Args.html");
+ $Place['title'] = $edit ?: $article->title;
+ $Place[1] = ' '.$article->date.'';
+ print preg_replace('{(?<=)(.*?)(?=
)}', ($edit ?: '\1').' [[1]]', ob_get_clean());
+ if ($article->file and $article->image) {
+ $Place['image'] = "/".$article->thumb('600x');
+ }
+ if (!empty($User['admin'])) {
+ $taglist = [];
+ foreach (glob("$Page/.tags/*") as $tagpath) {
+ $tagname = pathinfo($tagpath, PATHINFO_BASENAME);
+ $tagvalue = file_exists("$tagpath/$year-$page.html");
+ $tagtarget = is_writable($tagpath);
+ $taglist[] = sprintf(
+ '' .
+ '',
+ "tags[$tagname]", $tagname, "tag-$tagname",
+ $tagvalue ? ' checked' : '',
+ ' disabled',
+ ucfirst($tagname)
+ );
}
-
- print '';
-
- foreach (glob("$pagelink/*.txt") as $reply) {
- preg_match('(\d{14}) : ([^:]*) [^/]* \.txt$>x', $reply, $replymeta);
- if (!$replymeta) continue;
- $replydate = str_split($replymeta[1], 2);
- $replydate[1] = $replydate[0] . $replydate[1];
- print '- ';
- printf('%s %s',
- $replymeta[2], showdate($replydate)
+ if ($taglist) {
+ printf('
Tags: %s
'."\n",
+ implode("\n\t", $taglist)
);
- $replydata = file_get_contents($reply);
- printf('%s
', nl2br(htmlspecialchars($replydata)));
- print " \n";
}
-
- print '- ';
- print '
\n";
-
- print "
\n\n";
}
-
+ if ($replyform) {
+ print placeholder_include('nieuws/replies');
+ }
return 1;
}
if ($year) {
ob_clean();
+ $match = $Page;
$title = "Nieuws";
if (is_numeric($year) and $year > 999) {
- $match = "$Page/$year/";
+ $match .= "/$year";
if (is_numeric($page)) {
$title .= ' '.$monthname[intval($page)];
$match .= sprintf('%02d-', $page);
@@ -71,44 +57,15 @@ if ($year) {
$title .= ' '.$year;
}
elseif ($year === '19') {
- $match = "$Page/19??/";
+ $match .= "/19??";
$title .= " vóór 2000";
}
+ elseif (file_exists("$Page/.tags/$year")) {
+ $match .= "/.tags/$year";
+ $title .= " met $year";
+ }
print "$title
\n\n";
- shownews(glob($match.'*.html'));
+ print placeholder_include('nieuws', [$match]);
return 1;
}
-
-print ''."\n\n";
-
-foreach (array_reverse(glob("$Page/2???")) as $page) {
- $year = basename($page, '.html');
- printf('
'."\n", $page, $year);
- printtoc($page);
-}
-
-if ($pages = glob("$Page/19??/*.html")) {
- printf('
'."\n", "$Page/19", 'Eerder');
- printtoc($pages);
-}
-
-print "
\n\n";
-
-if ($replyform) {
- print "Melding rapporteren
\n";
- $_REQUEST['subject'] = 'melding';
- require 'contact.php';
-?>
-
-'."\n";
-}