Newer
Older
<?php
namespace Drupal\menu_test;
use Drupal\Component\Render\FormattableMarkup;
/**
* Controllers for testing the menu integration routing system.
*/
class TestControllers {
/**
* Returns page to be used as a login path.
*/
public function testLogin() {
Alex Pott
committed
return ['#markup' => 'This is TestControllers::testLogin.'];
/**
* Prints out test data.
*/
public function test1() {
Alex Pott
committed
return ['#markup' => 'test1'];
}
/**
* Prints out test data.
*/
public function test2() {
Alex Pott
committed
return ['#markup' => 'test2'];
}
/**
* Prints out test data.
*/
public function testSession() {
if (!isset($_SESSION['menu_test'])) {
$_SESSION['menu_test'] = 0;
}
$_SESSION['menu_test']++;
return ['#markup' => new FormattableMarkup('Session menu_test is @count', ['@count' => $_SESSION['menu_test']])];
/**
* Prints out test data.
*/
public function testDerived() {
Alex Pott
committed
return ['#markup' => 'testDerived'];
}
/**
* Prints out test data.
*
* @param string|null $placeholder
* A placeholder for the return string.
*
* @return string
* The string for this route.
*/
public function testDefaults($placeholder = NULL) {
if ($placeholder) {
return ['#markup' => new FormattableMarkup("Sometimes there is a placeholder: '@placeholder'.", ['@placeholder' => $placeholder])];
}
else {
return ['#markup' => 'Sometimes there is no placeholder.'];
}
}
/**
* Prints out test data with contextual links.
*/
public function testContextual() {
return [
'#markup' => 'testContextual',
'stuff' => [
'#type' => 'contextual_links',
'#contextual_links' => [
'menu_test_menu' => [
'route_parameters' => ['bar' => 1],
],
],
],
];
}