From 05edc193aef0fced033a3a4810f2d6ab3f980a16 Mon Sep 17 00:00:00 2001 From: printempw Date: Sat, 10 Dec 2016 19:36:01 +0800 Subject: [PATCH] add event for rendering header & footer --- app/Events/RenderingFooter.php | 30 ++++++++++++++++++++++++++++++ app/Events/RenderingHeader.php | 31 +++++++++++++++++++++++++++++++ app/helpers.php | 12 ++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 app/Events/RenderingFooter.php create mode 100644 app/Events/RenderingHeader.php diff --git a/app/Events/RenderingFooter.php b/app/Events/RenderingFooter.php new file mode 100644 index 00000000..43124e4d --- /dev/null +++ b/app/Events/RenderingFooter.php @@ -0,0 +1,30 @@ +contents = &$contents; + } + + public function addContent($content) + { + if ($content) { + if (!is_string($content)) { + throw new \Exception("Can not add non-string content", 1); + } + + $this->contents[] = $content; + } + } +} diff --git a/app/Events/RenderingHeader.php b/app/Events/RenderingHeader.php new file mode 100644 index 00000000..48c42519 --- /dev/null +++ b/app/Events/RenderingHeader.php @@ -0,0 +1,31 @@ +contents = &$contents; + } + + public function addContent($content) + { + if ($content) { + if (!is_string($content)) { + throw new \Exception("Can not add non-string content", 1); + } + + $this->contents[] = $content; + } + } + +} diff --git a/app/helpers.php b/app/helpers.php index 7f458988..42fc9f28 100644 --- a/app/helpers.php +++ b/app/helpers.php @@ -109,6 +109,12 @@ if (! function_exists('bs_footer')) { } echo ''; + + $extra_contents = []; + + Event::fire(new App\Events\RenderingFooter($extra_contents)); + + echo implode(PHP_EOL, $extra_contents); } } @@ -130,6 +136,12 @@ if (! function_exists('bs_header')) { } echo ''; + + $extra_contents = []; + + Event::fire(new App\Events\RenderingHeader($extra_contents)); + + echo implode(PHP_EOL, $extra_contents); } }