protected function WebformSubmissionListBuilder::getSubmissionViews in Webform 6.x
Same name and namespace in other branches
- 8.5 src/WebformSubmissionListBuilder.php \Drupal\webform\WebformSubmissionListBuilder::getSubmissionViews()
Get submission views applicable for the current route and user.
Return value
array An associative array of submission views applicable for the current route and user.
1 call to WebformSubmissionListBuilder::getSubmissionViews()
- WebformSubmissionListBuilder::initialize in src/
WebformSubmissionListBuilder.php - Initialize WebformSubmissionListBuilder object.
File
- src/
WebformSubmissionListBuilder.php, line 1241
Class
- WebformSubmissionListBuilder
- Provides a list controller for webform submission entity.
Namespace
Drupal\webformCode
protected function getSubmissionViews() {
if (!$this
->moduleHandler()
->moduleExists('views')) {
return [];
}
$type = $this
->getSubmissionViewType();
$route_name = $this->routeMatch
->getRouteName();
$submission_views = $this
->getSubmissionViewsConfig();
foreach ($submission_views as $name => $submission_view) {
$submission_view += [
'global_routes' => [],
'webform_routes' => [],
'node_routes' => [],
];
// Check global, webform, or node routes.
$routes = $submission_view[$type . '_routes'];
if (empty($routes) || !in_array($route_name, $routes)) {
unset($submission_views[$name]);
continue;
}
list($view_name, $view_display_id) = explode(':', $submission_view['view']);
$view = Views::getView($view_name);
if (!$view || !$view
->access($view_display_id)) {
unset($submission_views[$name]);
continue;
}
}
return $submission_views;
}