Commit 8da1c16c authored by Taylor Otwell's avatar Taylor Otwell

Tweak controller layout resolution.

Signed-off-by: 's avatarTaylor Otwell <taylorotwell@gmail.com>
parent 2b814976
......@@ -46,6 +46,22 @@ abstract class Controller {
*/
const factory = 'laravel.controller.factory';
/**
* Create a new Controller instance.
*
* @return void
*/
public function __construct()
{
// If the controller has specified a layout to be used when rendering
// views, we will instantiate the layout instance and set it to the
// layout property, replacing the string layout name.
if ( ! is_null($this->layout))
{
$this->layout = $this->layout();
}
}
/**
* Call an action method on a controller.
*
......@@ -141,22 +157,12 @@ abstract class Controller {
// by convention out of the bundle's controller directory.
if (Event::listeners(static::factory))
{
$controller = Event::first(static::factory, $controller);
return Event::first(static::factory, $controller);
}
else
{
$controller = new $controller;
return new $controller;
}
// If the controller has specified a layout to be used when rendering
// views, we will instantiate the layout instance and set it to the
// layout property, replacing the string layout name.
if ( ! is_null($controller->layout))
{
$controller->layout = $controller->layout();
}
return $controller;
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment