class SearchPageAccessControlHandler extends EntityAccessControlHandler
{ /**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface
$entity,
$operation, AccountInterface
$account) { /** @var \Drupal\search\SearchPageInterface $entity */
if (in_array($operation,
['delete', 'disable'
])) { if ($entity->
isDefaultSearch()) { return AccessResult::
forbidden()->
addCacheableDependency($entity);
} else { return parent::
checkAccess($entity,
$operation,
$account)->
addCacheableDependency($entity);
} } if ($operation == 'view'
) { if (!
$entity->
status()) { return AccessResult::
forbidden()->
addCacheableDependency($entity);
} $plugin =
$entity->
getPlugin();