mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
NEW Add updateRules extension point to Director::handleRequest
This commit is contained in:
parent
43620129c0
commit
392cda15f6
@ -6,6 +6,7 @@ use SilverStripe\CMS\Model\SiteTree;
|
|||||||
use SilverStripe\Control\Middleware\HTTPMiddlewareAware;
|
use SilverStripe\Control\Middleware\HTTPMiddlewareAware;
|
||||||
use SilverStripe\Core\Config\Configurable;
|
use SilverStripe\Core\Config\Configurable;
|
||||||
use SilverStripe\Core\Environment;
|
use SilverStripe\Core\Environment;
|
||||||
|
use SilverStripe\Core\Extensible;
|
||||||
use SilverStripe\Core\Injector\Injectable;
|
use SilverStripe\Core\Injector\Injectable;
|
||||||
use SilverStripe\Core\Injector\Injector;
|
use SilverStripe\Core\Injector\Injector;
|
||||||
use SilverStripe\Core\Kernel;
|
use SilverStripe\Core\Kernel;
|
||||||
@ -32,6 +33,7 @@ use SilverStripe\View\TemplateGlobalProvider;
|
|||||||
class Director implements TemplateGlobalProvider
|
class Director implements TemplateGlobalProvider
|
||||||
{
|
{
|
||||||
use Configurable;
|
use Configurable;
|
||||||
|
use Extensible;
|
||||||
use Injectable;
|
use Injectable;
|
||||||
use HTTPMiddlewareAware;
|
use HTTPMiddlewareAware;
|
||||||
|
|
||||||
@ -104,6 +106,11 @@ class Director implements TemplateGlobalProvider
|
|||||||
*/
|
*/
|
||||||
protected static $environment_type;
|
protected static $environment_type;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->constructExtensions();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test a URL request, returning a response object. This method is a wrapper around
|
* Test a URL request, returning a response object. This method is a wrapper around
|
||||||
* Director::handleRequest() to assist with functional testing. It will execute the URL given, and
|
* Director::handleRequest() to assist with functional testing. It will execute the URL given, and
|
||||||
@ -313,6 +320,8 @@ class Director implements TemplateGlobalProvider
|
|||||||
|
|
||||||
$rules = Director::config()->uninherited('rules');
|
$rules = Director::config()->uninherited('rules');
|
||||||
|
|
||||||
|
$this->extend('updateRules', $rules);
|
||||||
|
|
||||||
// Default handler - mo URL rules matched, so return a 404 error.
|
// Default handler - mo URL rules matched, so return a 404 error.
|
||||||
$handler = function () {
|
$handler = function () {
|
||||||
return new HTTPResponse('No URL rule was matched', 404);
|
return new HTTPResponse('No URL rule was matched', 404);
|
||||||
|
Loading…
Reference in New Issue
Block a user