silverstripe-framework/tests/php/Control/RequestHandlingTest/AllowedController.php
2020-04-20 18:58:09 +01:00

57 lines
1.2 KiB
PHP

<?php
namespace SilverStripe\Control\Tests\RequestHandlingTest;
use SilverStripe\Control\Controller;
use SilverStripe\Dev\TestOnly;
/**
* Controller for the test
*/
class AllowedController extends Controller implements TestOnly
{
private static $url_segment = 'AllowedController';
private static $url_handlers = [
// The double-slash is need here to ensure that
'$Action//$ID/$OtherID' => "handleAction",
];
private static $allowed_actions = [
'failoverMethod', // part of the failover object
'blockMethod' => '->provideAccess(false)',
'allowMethod' => '->provideAccess',
];
private static $extensions = [
ControllerExtension::class,
AllowedControllerExtension::class,
];
public function __construct()
{
$this->failover = new ControllerFailover();
parent::__construct();
}
public function index($request)
{
return "This is the controller";
}
function provideAccess($access = true)
{
return $access;
}
function blockMethod($request)
{
return 'blockMethod';
}
function allowMethod($request)
{
return 'allowMethod';
}
}