diff options
author | vincent-peugnet <v.peugnet@free.fr> | 2018-12-17 15:34:20 +0100 |
---|---|---|
committer | vincent-peugnet <v.peugnet@free.fr> | 2018-12-17 15:34:20 +0100 |
commit | 1a7a60ea3efde53ac2c3b07ca914483cfc25a827 (patch) | |
tree | ac1f09d4d041c19501dd211df451d8d35ef55c47 /app/class/modelrender.php | |
parent | 300cf1cc8399d29f61052c0ad09ba1cca2d04d4d (diff) | |
download | wcms-1a7a60ea3efde53ac2c3b07ca914483cfc25a827.tar.gz wcms-1a7a60ea3efde53ac2c3b07ca914483cfc25a827.zip |
media
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); |