nieuws: consistent url input to article parser
[minimedit.git] / nieuws / index.php
index bbc002a62eca92583b71832b729746faa01bc8f1..d6a85e7f36d88c62e0291505fcde2dac18e6d7e8 100644 (file)
@@ -1,48 +1,47 @@
 <?php
 include 'nieuws.inc.php';
 
-@list ($year, $month, $page) = explode('/', trim($Args, '/'));
+@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);
        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);
+       shownews(glob($match.'*.html'));
        print "</div>\n\n";
        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);
 }