|
@@ -39,6 +39,13 @@ abstract class Controller {
|
|
|
*/
|
|
|
protected $filters = array();
|
|
|
|
|
|
+
|
|
|
+ * The event name for the Laravel controller factory.
|
|
|
+ *
|
|
|
+ * @var string
|
|
|
+ */
|
|
|
+ const factory = 'laravel.controller.factory';
|
|
|
+
|
|
|
|
|
|
* Call an action method on a controller.
|
|
|
*
|
|
@@ -127,12 +134,19 @@ abstract class Controller {
|
|
|
return IoC::resolve($resolver);
|
|
|
}
|
|
|
|
|
|
+ $controller = static::format($bundle, $controller);
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
- $controller = static::format($bundle, $controller);
|
|
|
-
|
|
|
- $controller = new $controller;
|
|
|
+ if (Event::listeners(static::factory))
|
|
|
+ {
|
|
|
+ $controller = Event::first(static::factory, $controller);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ $controller = new $controller;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|