2015-04-21 20:07:34 +10:00
|
|
|
<?php namespace Cms\Classes;
|
|
|
|
|
|
|
|
use App;
|
|
|
|
use Illuminate\Routing\Controller as ControllerBase;
|
|
|
|
use Closure;
|
|
|
|
|
|
|
|
/**
|
2017-03-16 17:08:20 +11:00
|
|
|
* This is the master controller for all front-end pages.
|
|
|
|
* All requests that have not been picked up already by the router will end up here,
|
|
|
|
* then the URL is passed to the front-end controller for processing.
|
2015-04-21 20:07:34 +10:00
|
|
|
*
|
2017-03-16 17:08:20 +11:00
|
|
|
* @see Cms\Classes\Controller Front-end controller class
|
2021-03-09 14:37:09 -06:00
|
|
|
* @package winter\wn-cms-module
|
2015-04-21 20:07:34 +10:00
|
|
|
* @author Alexey Bobkov, Samuel Georges
|
|
|
|
*/
|
|
|
|
class CmsController extends ControllerBase
|
|
|
|
{
|
2021-03-06 04:06:19 -06:00
|
|
|
use \Winter\Storm\Extension\ExtendableTrait;
|
2015-04-21 20:07:34 +10:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @var array Behaviors implemented by this controller.
|
|
|
|
*/
|
|
|
|
public $implement;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Instantiate a new CmsController instance.
|
|
|
|
*/
|
|
|
|
public function __construct()
|
|
|
|
{
|
|
|
|
$this->extendableConstruct();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Extend this object properties upon construction.
|
2016-03-04 16:50:58 +01:00
|
|
|
* @param Closure $callback
|
2015-04-21 20:07:34 +10:00
|
|
|
*/
|
|
|
|
public static function extend(Closure $callback)
|
|
|
|
{
|
|
|
|
self::extendableExtendCallback($callback);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Finds and serves the request using the primary controller.
|
|
|
|
* @param string $url Specifies the requested page URL.
|
|
|
|
* If the parameter is omitted, the current URL used.
|
|
|
|
* @return string Returns the processed page content.
|
|
|
|
*/
|
2015-05-02 12:56:40 +10:00
|
|
|
public function run($url = '/')
|
2015-04-21 20:07:34 +10:00
|
|
|
{
|
2018-01-12 09:23:20 +03:00
|
|
|
return App::make(Controller::class)->run($url);
|
2015-04-21 20:07:34 +10:00
|
|
|
}
|
|
|
|
}
|