From eef50167aaa4e525f1eb5a462c441ce8a203c43d Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Sun, 26 Aug 2018 01:30:17 +0200 Subject: [PATCH] nieuws: cover images in article html --- nieuws.inc.php | 25 ++++++++++++++++++------- nieuws/index.php | 1 - 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/nieuws.inc.php b/nieuws.inc.php index c5dfa23..438c282 100644 --- a/nieuws.inc.php +++ b/nieuws.inc.php @@ -70,22 +70,33 @@ class ArchiveArticle function body() { - return fread($this->file, filesize($this->page)); + $this->title; + $rest = fread($this->file, filesize($this->page)); + if ( preg_match('{\n

(]*>)

\s*\z}', $rest, $img, PREG_OFFSET_CAPTURE) ) { + $this->img = $img[1][0]; + return substr($rest, 0, $img[0][1]); + } + $this->img = NULL; + return $rest; + } + + function img() + { + $this->body; + return $this->img; } function image() { - foreach (['jpg', 'png'] as $ext) { - if (file_exists("{$this->link}.$ext")) { - return "{$this->link}.$ext"; - } + if ( preg_match('/\bsrc="([^"]*)"/', $this->img, $src) ) { + return $src[1]; } } function thumb($size = '300x') { - if ($this->image) - return "thumb/$size/{$this->image}"; + if (!$this->image or $this->image[0] !== '/') return; + return "thumb/$size{$this->image}"; } } diff --git a/nieuws/index.php b/nieuws/index.php index 8a613c2..316a16e 100644 --- a/nieuws/index.php +++ b/nieuws/index.php @@ -11,7 +11,6 @@ if ($page and !is_numeric($page)) { print preg_replace('{(?<=

)(.*?)(?=

)}', ($edit ?: '\1').' [[1]]', ob_get_clean()); if ($article->image) { $Place['image'] = "https://lijtweg.nl/".$article->thumb('600x'); - printf('

'."\n", $article->thumb('640x')); } if ($replyform) { -- 2.30.0