diff options
Diffstat (limited to 'app/class/modelrender.php')
-rw-r--r-- | app/class/modelrender.php | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/app/class/modelrender.php b/app/class/modelrender.php index dba363b..e24e067 100644 --- a/app/class/modelrender.php +++ b/app/class/modelrender.php @@ -99,6 +99,7 @@ class Modelrender extends Modelart $element = $this->article($element); $element = $this->automedialist($element); $element = $this->autotaglistupdate($element); + $element = $this->date($element); $element = $this->markdown($element); return $element; @@ -152,6 +153,13 @@ class Modelrender extends Modelart $head .= '<link href="'.$externalcss.'" rel="stylesheet" />' . PHP_EOL; } + if (!empty($this->art->templatecss() && in_array('externalcss', $this->art->templateoptions()))) { + $templatecss = $this->get($this->art->templatecss()); + foreach ($templatecss->externalcss() as $externalcss) { + $head .= '<link href="'.$externalcss.'" rel="stylesheet" />' . PHP_EOL; + } + } + foreach ($this->art->externalscript() as $externalscript) { $head .= '<script src="'.$externalscript.'"></script>' . PHP_EOL; } @@ -394,7 +402,7 @@ class Modelrender extends Modelart public function autotaglist($text) { - $pattern = "/%%(\w*)%%/"; + $pattern = "/\%TAG:([a-z0-9_-]+)\%/"; preg_match_all($pattern, $text, $out); return $out[1]; @@ -424,7 +432,7 @@ class Modelrender extends Modelart $ul .= '</ul>' . PHP_EOL; - $text = str_replace('%%' . $tag . '%%', $ul, $text); + $text = str_replace('%TAG:' . $tag . '%', $ul, $text); $li = array_map(function ($item) { return $item->id(); @@ -434,6 +442,22 @@ class Modelrender extends Modelart return $text; } + + public function date(string $text) + { + $art = $this->art; + $text = preg_replace_callback('~\%DATE\%~', function($matches) use ($art) { + return '<time datetime='.$art->date('string').'>'.$art->date('dmy').'</time>'; + }, $text); + $text = preg_replace_callback('~\%TIME\%~', function($matches) use ($art) { + return '<time datetime='.$art->date('string').'>'.$art->date('ptime').'</time>'; + }, $text); + + return $text; + } + + + public function linkfrom() { sort($this->linkfrom); |