nieuws: parse date using single regexp
authorMischa POSLAWSKY <perl@shiar.org>
Thu, 19 Apr 2018 16:03:33 +0000 (18:03 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Fri, 8 Jun 2018 21:14:53 +0000 (23:14 +0200)
Equivalent but easier to maintain.

nieuws.inc.php

index 7e723e4095e68febd3abde4fcc957217320168f8..f9fec6ad3f4b0ebd290d9241c8d488cd371f88b6 100644 (file)
@@ -6,12 +6,11 @@ $monthname = ['?',
 
 function shownewsdate($url)
 {
-       $parts = pathinfo($url);
-       $year = pathinfo($parts['dirname'], PATHINFO_FILENAME);
-       @list ($month, $day) = explode('-', $parts['filename'], 3);
+       if (!preg_match('</(\d{4})/(\d{2})/(\d{2})->', $url, $parts)) return;
        global $monthname;
-       return sprintf('<small class="date">%s %s %s</small>',
-               intval($day), $monthname[intval($month)], $year);
+       return implode(' ', array_filter([
+               intval($parts[3]), $monthname[intval($parts[2])], $parts[1],
+       ]));
 }
 
 function shownewsarticle($url, $link = TRUE, $title = NULL)