From 755248886ad294bade86cb8a5ce36465b5193f36 Mon Sep 17 00:00:00 2001 From: Fbenas Date: Sun, 12 Mar 2017 04:02:03 +0000 Subject: Inital commit, created message handler --- src/Message/Handler.php | 69 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 src/Message/Handler.php (limited to 'src/Message/Handler.php') diff --git a/src/Message/Handler.php b/src/Message/Handler.php new file mode 100644 index 0000000..8729c1a --- /dev/null +++ b/src/Message/Handler.php @@ -0,0 +1,69 @@ +setupImportant($important); + } + /** + * Set's up important attributes on this class + */ + public function setupImportant($important = []) + { + $this->important = $important; + } + + protected function setImportantValues($array) + { + foreach ($array as $name => $value) { + $this->addImportantValue($name, $value); + } + } + + protected function addImportantValue($name, $value) + { + if (in_array($name, $this->important)) { + $this->importantValues[$name] = $value; + } + + return $name; + } + + public function returnImportant($name) + { + if (!array_key_exists($name, $this->importantValues)) { + throw new \Exception('The var ' . $name . ' is not set in this context'); + } + + return $this->importantValues[$name]; + } + + public function __call($name, $arguments) + { + if (strpos($name, 'get') === 0) { + $this->returnImporant(substr($name, 3)); + } + } + + public function renderOpeningMessage() + { + $overview = new Overview(); + $message = $overview->renderMessage(); + + $this->setImportantValues($overview->getImportantValues()); + + return $message; + } +} \ No newline at end of file -- cgit v1.2.3