Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
CRAP | |
0.00% |
0 / 9 |
| ModalRenderer | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 9 |
| renderResponse | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 9 |
|||
| <?php | |
| /** | |
| * @file | |
| * Contains \Drupal\Core\Render\MainContent\ModalRenderer. | |
| */ | |
| namespace Drupal\Core\Render\MainContent; | |
| use Drupal\Core\Ajax\AjaxResponse; | |
| use Drupal\Core\Ajax\OpenModalDialogCommand; | |
| use Drupal\Core\Routing\RouteMatchInterface; | |
| use Symfony\Component\HttpFoundation\Request; | |
| /** | |
| * Default main content renderer for modal dialog requests. | |
| */ | |
| class ModalRenderer extends DialogRenderer { | |
| /** | |
| * {@inheritdoc} | |
| */ | |
| public function renderResponse(array $main_content, Request $request, RouteMatchInterface $route_match) { | |
| $response = new AjaxResponse(); | |
| // First render the main content, because it might provide a title. | |
| $content = drupal_render_root($main_content); | |
| // Attach the library necessary for using the OpenModalDialogCommand and set | |
| // the attachments for this Ajax response. | |
| $main_content['#attached']['library'][] = 'core/drupal.dialog.ajax'; | |
| $response->setAttachments($main_content['#attached']); | |
| // If the main content doesn't provide a title, use the title resolver. | |
| $title = isset($main_content['#title']) ? $main_content['#title'] : $this->titleResolver->getTitle($request, $route_match->getRouteObject()); | |
| // Determine the title: use the title provided by the main content if any, | |
| // otherwise get it from the routing information. | |
| $options = $request->request->get('dialogOptions', array()); | |
| $response->addCommand(new OpenModalDialogCommand($title, $content, $options)); | |
| return $response; | |
| } | |
| } |