Chris@0: getRouteObject(); Chris@0: $map = $route->hasOption('_view_argument_map') ? $route->getOption('_view_argument_map') : []; Chris@0: Chris@0: foreach ($map as $attribute => $parameter_name) { Chris@0: // Allow parameters be pulled from the request. Chris@0: // The map stores the actual name of the parameter in the request. Views Chris@0: // which override existing controller, use for example 'node' instead of Chris@0: // arg_nid as name. Chris@0: if (isset($map[$attribute])) { Chris@0: $attribute = $map[$attribute]; Chris@0: } Chris@0: if ($arg = $route_match->getRawParameter($attribute)) { Chris@0: } Chris@0: else { Chris@0: $arg = $route_match->getParameter($attribute); Chris@0: } Chris@0: Chris@0: if (isset($arg)) { Chris@0: $args[] = $arg; Chris@0: } Chris@0: } Chris@0: Chris@0: /** @var \Drupal\views\Plugin\views\display\DisplayPluginBase $class */ Chris@0: $class = $route->getOption('_view_display_plugin_class'); Chris@0: if ($route->getOption('returns_response')) { Chris@0: /** @var \Drupal\views\Plugin\views\display\ResponseDisplayPluginInterface $class */ Chris@0: return $class::buildResponse($view_id, $display_id, $args); Chris@0: } Chris@0: else { Chris@0: $build = $class::buildBasicRenderable($view_id, $display_id, $args, $route); Chris@0: Page::setPageRenderArray($build); Chris@0: Chris@0: views_add_contextual_links($build, 'page', $display_id, $build); Chris@0: Chris@0: return $build; Chris@0: } Chris@0: } Chris@0: Chris@0: }