public function ContextualController::render

Returns the requested rendered contextual links.

Given a list of contextual links IDs, render them. Hence this must be robust to handle arbitrary input.

Return value

\Symfony\Component\HttpFoundation\JsonResponse The JSON response.

See also

contextual_preprocess()

1 string reference to 'ContextualController::render'
contextual.routing.yml in drupal/core/modules/contextual/contextual.routing.yml
drupal/core/modules/contextual/contextual.routing.yml

File

drupal/core/modules/contextual/lib/Drupal/contextual/ContextualController.php, line 32
Contains \Drupal\contextual\ContextualController.

Class

ContextualController
Returns responses for Contextual module routes.

Namespace

Drupal\contextual

Code

public function render(Request $request) {
  $ids = $request->request
    ->get('ids');
  if (!isset($ids)) {
    throw new BadRequestHttpException(t('No contextual ids specified.'));
  }
  $rendered = array();
  foreach ($ids as $id) {
    $element = array(
      '#type' => 'contextual_links',
      '#contextual_links' => _contextual_id_to_links($id),
    );
    $rendered[$id] = drupal_render($element);
  }
  return new JsonResponse($rendered);
}