From ee631925124f04b65a1487efdf1b05b68f4f18ba Mon Sep 17 00:00:00 2001 From: Andy Miller Date: Fri, 14 Aug 2015 16:30:18 -0600 Subject: [PATCH] catch header parse exception and create a simple page so site doesn't break --- system/src/Grav/Common/Page/Page.php | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/system/src/Grav/Common/Page/Page.php b/system/src/Grav/Common/Page/Page.php index 9063fc2f8..971e818bd 100644 --- a/system/src/Grav/Common/Page/Page.php +++ b/system/src/Grav/Common/Page/Page.php @@ -1,6 +1,7 @@ header) { $file = $this->file(); if ($file) { - $this->raw_content = $file->markdown(); - $this->frontmatter = $file->frontmatter(); - $this->header = (object) $file->header(); - + try { + $this->raw_content = $file->markdown(); + $this->frontmatter = $file->frontmatter(); + $this->header = (object)$file->header(); + } catch (ParseException $e) { + $file->raw("---\ntitle: ".$this->folder()."\n---\n\n# Error: Invalid Frontmatter\n## ".$file->filename()); + $this->raw_content = $file->markdown(); + $this->frontmatter = $file->frontmatter(); + $this->header = (object)$file->header(); + } $var = true; } } @@ -741,7 +749,7 @@ class Page /** * Validate page header. * - * @throws \Exception + * @throws Exception */ public function validate() {