Allows access to routes to be controlled by an '_access' boolean parameter.
Expanded class hierarchy of ViewModeAccessCheck
class ViewModeAccessCheck implements AccessCheckInterface {
/**
* {@inheritdoc}
*/
public function applies(Route $route) {
return array_key_exists('_field_ui_view_mode_access', $route
->getRequirements());
}
/**
* {@inheritdoc}
*/
public function access(Route $route, Request $request) {
if ($entity_type = $request->attributes
->get('entity_type')) {
$bundle = $request->attributes
->get('bundle');
$view_mode = $request->attributes
->get('view_mode');
$view_mode_settings = field_view_mode_settings($entity_type, $bundle);
$visibility = $view_mode == 'default' || !empty($view_mode_settings[$view_mode]['status']);
if ($visibility) {
$permission = $route
->getRequirement('_field_ui_view_mode_access');
return user_access($permission);
}
}
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AccessCheckInterface:: |
constant | Grant access. | ||
AccessCheckInterface:: |
constant | Deny access. | ||
AccessCheckInterface:: |
constant | Block access. | ||
ViewModeAccessCheck:: |
public | function |
Checks for access to route. Overrides AccessCheckInterface:: |
|
ViewModeAccessCheck:: |
public | function |
Declares whether the access check applies to a specific route or not. Overrides AccessCheckInterface:: |