Separated events into methods so they can be properly logged by Core.
This commit is contained in:
parent
c09d1a35d5
commit
e3485fa256
|
@ -131,6 +131,37 @@ class WebComponent implements iComponent
|
|||
self::$willHandleRequest = false;
|
||||
}
|
||||
|
||||
public function shutdownEventListener(Event $event)
|
||||
{
|
||||
/** @var Output $output */
|
||||
Logger::logInfo("Parsing output...");
|
||||
$output = Factory::getInstance()->output;
|
||||
$output->display();
|
||||
return $event;
|
||||
}
|
||||
|
||||
public function layoutDisplayEventListener(Event $event)
|
||||
{
|
||||
/** @var $event LayoutDisplayEvent */
|
||||
/** @var Output $output */
|
||||
$output = Factory::getInstance('output');
|
||||
$output->appendOutput($event->contents);
|
||||
$event->setCancelled(true);
|
||||
}
|
||||
|
||||
public function routerLoadViewAndControllerEventListener(Event $event)
|
||||
{
|
||||
/** @var Input $input */
|
||||
/** @var RouterLoadViewAndControllerEvent $event */
|
||||
$input = Factory::getInstance('input');
|
||||
$methods = $event->viewMethods[Priority::NORMAL];
|
||||
foreach ($methods as $method)
|
||||
$event->addMethod(strtolower($input->method()) . '_' . $method);
|
||||
|
||||
Logger::log("Added input method '" . $input->method() . "' as a prefix to view methods.");
|
||||
return $event;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle a Web request.
|
||||
*
|
||||
|
@ -151,33 +182,13 @@ class WebComponent implements iComponent
|
|||
|
||||
try {
|
||||
// Set the output to display when shutting down
|
||||
Events::addListener(function ($event) {
|
||||
/** @var Output $output */
|
||||
Logger::logInfo("Parsing output...");
|
||||
$output = Factory::getInstance()->output;
|
||||
$output->display();
|
||||
return $event;
|
||||
}, 'coreShutdownEvent', Priority::NORMAL);
|
||||
Events::addListener([$this, 'shutdownEventListener'], 'coreShutdownEvent', Priority::NORMAL);
|
||||
|
||||
// Intercept output of Layout and redirect it to Output
|
||||
Events::addListener(function($event){
|
||||
/** @var $event LayoutDisplayEvent */
|
||||
/** @var Output $output */
|
||||
$output = Factory::getInstance('output');
|
||||
$output->appendOutput($event->contents);
|
||||
$event->setCancelled(true);
|
||||
}, 'layoutDisplayEvent', Priority::NORMAL);
|
||||
Events::addListener([$this, 'layoutDisplayEventListener'], 'layoutDisplayEvent', Priority::NORMAL);
|
||||
|
||||
// Add HTTP method prefix to requests to views
|
||||
Events::addListener(function($event){
|
||||
/** @var Input $input */
|
||||
/** @var RouterLoadViewAndControllerEvent $event */
|
||||
$input = Factory::getInstance('input');
|
||||
$methods = $event->viewMethods[Priority::NORMAL];
|
||||
foreach ($methods as $method)
|
||||
$event->addMethod(strtolower($input->method()) . '_' . $method);
|
||||
return $event;
|
||||
}, 'routerLoadViewAndControllerEvent', Priority::NORMAL);
|
||||
Events::addListener([$this, 'routerLoadViewAndControllerEventListener'], 'routerLoadViewAndControllerEvent', Priority::NORMAL);
|
||||
|
||||
// Create an error 500 page when a haltEvent is fired
|
||||
Events::addListener([$this, 'haltEventListener'], 'haltExecutionEvent', Priority::NORMAL);
|
||||
|
|
Loading…
Reference in New Issue