diff --git a/core/modules/layout/lib/Drupal/layout/Access/LayoutAccessCheck.php b/core/modules/layout/lib/Drupal/layout/Access/LayoutAccessCheck.php index 2b4943d..924ae15 100644 --- a/core/modules/layout/lib/Drupal/layout/Access/LayoutAccessCheck.php +++ b/core/modules/layout/lib/Drupal/layout/Access/LayoutAccessCheck.php @@ -27,6 +27,7 @@ public function applies(Route $route) { * {@inheritdoc} */ public function access(Route $route, Request $request) { + $key = $request->attributes->get('key'); return user_access('administer layouts') && layout_manager()->getDefinition($key); } } diff --git a/core/modules/layout/lib/Drupal/layout/Controller/LayoutController.php b/core/modules/layout/lib/Drupal/layout/Controller/LayoutController.php index 2e1ebe8..dec15d4 100644 --- a/core/modules/layout/lib/Drupal/layout/Controller/LayoutController.php +++ b/core/modules/layout/lib/Drupal/layout/Controller/LayoutController.php @@ -9,6 +9,7 @@ use Drupal\Core\ControllerInterface; use Drupal\layout\Plugin\Type\LayoutManager; use Symfony\Component\DependencyInjection\ContainerInterface; +use Symfony\Component\HttpFoundation\Request; /** * Controller routines for layout routes. @@ -20,7 +21,7 @@ class LayoutController implements ControllerInterface { * * @var \Drupal\layout\Plugin\Type\LayoutManager */ - protected $layoutManager; + protected $layout_manager; /** * Constructs a \Drupal\layout\Controller\LayoutController object. @@ -29,7 +30,7 @@ class LayoutController implements ControllerInterface { * The Layout manager. */ function __construct(LayoutManager $layout_manager) { - $this->layoutManager = $layout_manager; + $this->layout_manager = $layout_manager; } /** @@ -47,7 +48,7 @@ public static function create(ContainerInterface $container) { */ public function layoutPageList() { // Get list of layouts defined by enabled modules and themes. - $layouts = $this->layoutManager->getDefinitions(); + $layouts = $this->layout_manager->getDefinitions(); $rows = array(); $header = array(t('Name'), t('Source')); @@ -79,15 +80,15 @@ public function layoutPageList() { /** * Demonstrates a layout template. - * @param string $key - * The key of the page layout being requested. * - * @return array - * An array as expected by drupal_render(). + * @param Request $request + * Requested object. * - * @see layout_menu() + * @return mixed + * An array as expected by drupal_render(). */ - public function layoutPageView($key) { + public function layoutPageView(Request $request) { + $key = $request->attributes->get('key'); $layout = $this->layout_manager->getDefinition($key); drupal_set_title(t('View template %name', array('%name' => $layout['title'])), PASS_THROUGH);