本文整理汇总了PHP中Drupal\Core\Entity\EntityInterface::isLocked方法的典型用法代码示例。如果您正苦于以下问题:PHP EntityInterface::isLocked方法的具体用法?PHP EntityInterface::isLocked怎么用?PHP EntityInterface::isLocked使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Drupal\Core\Entity\EntityInterface
的用法示例。
在下文中一共展示了EntityInterface::isLocked方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account)
{
if ($operation == 'delete' && $entity->isLocked()) {
return FALSE;
}
return parent::checkAccess($entity, $operation, $langcode, $account);
}
示例2: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account)
{
switch ($operation) {
case 'delete':
return AccessResult::allowedIf($account->hasPermission('administer feeds') && !$entity->isLocked());
default:
return AccessResult::allowedIfHasPermission($account, 'administer feeds');
}
}
示例3: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account)
{
// There are no restrictions on viewing a date format.
if ($operation == 'view') {
return TRUE;
} elseif (in_array($operation, array('update', 'delete')) && $entity->isLocked()) {
return FALSE;
}
return parent::checkAccess($entity, $operation, $langcode, $account);
}
示例4: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $feed, $operation, $langcode, AccountInterface $account)
{
$has_perm = $account->hasPermission('administer feeds') || $account->hasPermission("{$operation} {$feed->bundle()} feeds");
switch ($operation) {
case 'view':
case 'create':
case 'update':
return AccessResult::allowedIf($has_perm);
case 'import':
case 'clear':
return AccessResult::allowedIf($has_perm && !$feed->isLocked());
case 'unlock':
return AccessResult::allowedIf($has_perm && $feed->isLocked());
case 'delete':
return AccessResult::allowedIf($has_perm && !$feed->isLocked() && !$feed->getItemCount() && !$feed->isNew());
default:
return AccessResult::neutral();
}
}
示例5: checkAccess
/**
* {@inheritdoc}
*/
public function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
if ($operation == 'view') {
// Allow viewing the configuration entity.
return AccessResult::allowed();
}
if ($entity->isLocked()) {
return AccessResult::forbidden();
}
return parent::checkAccess($entity, $operation, $account);
}
示例6: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account)
{
if ($operation == 'delete') {
if ($entity->isLocked()) {
return AccessResult::forbidden()->cacheUntilEntityChanges($entity);
} else {
return parent::checkAccess($entity, $operation, $langcode, $account)->cacheUntilEntityChanges($entity);
}
}
return parent::checkAccess($entity, $operation, $langcode, $account);
}
示例7: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $entity)
{
if ($entity->isLocked()) {
$row['id'] = $this->t('@entity_id (locked)', array('@entity_id' => $entity->id()));
} else {
$row['id'] = $entity->id();
}
$row['label'] = $this->getLabel($entity);
$row['pattern'] = $this->dateFormatter->format(REQUEST_TIME, $entity->id());
return $row + parent::buildRow($entity);
}
示例8: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
if ($operation === 'view') {
return AccessResult::allowed();
} elseif ($operation == 'delete') {
if ($entity->isLocked()) {
return AccessResult::forbidden()->addCacheableDependency($entity);
} else {
return parent::checkAccess($entity, $operation, $account)->addCacheableDependency($entity);
}
}
return parent::checkAccess($entity, $operation, $account);
}
示例9: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
switch ($operation) {
case 'create':
case 'update':
return AccessResult::allowedIfHasPermission($account, 'administer site configuration');
case 'delete':
if ($entity->isLocked()) {
return AccessResult::forbidden();
}
return AccessResult::allowedIfHasPermission($account, 'administer site configuration');
}
return parent::checkAccess($entity, $operation, $account);
}
示例10: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
// There are no restrictions on viewing a date format.
if ($operation == 'view') {
return AccessResult::allowed();
} elseif (in_array($operation, array('update', 'delete'))) {
if ($entity->isLocked()) {
return AccessResult::forbidden()->addCacheableDependency($entity);
} else {
return parent::checkAccess($entity, $operation, $account)->addCacheableDependency($entity);
}
}
return parent::checkAccess($entity, $operation, $account);
}
示例11: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
switch ($operation) {
case 'view':
return AccessResult::allowedIfHasPermission($account, 'access content');
case 'delete':
if ($entity->isLocked()) {
return AccessResult::forbidden()->addCacheableDependency($entity);
} else {
return parent::checkAccess($entity, $operation, $account)->addCacheableDependency($entity);
}
break;
default:
return parent::checkAccess($entity, $operation, $account);
}
}
示例12: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $field_storage)
{
if ($field_storage->isLocked()) {
$row['class'] = array('menu-disabled');
$row['data']['id'] = $this->t('@field_name (Locked)', array('@field_name' => $field_storage->getName()));
} else {
$row['data']['id'] = $field_storage->getName();
}
$field_type = $this->fieldTypes[$field_storage->getType()];
$row['data']['type'] = $this->t('@type (module: @module)', array('@type' => $field_type['label'], '@module' => $field_type['provider']));
$usage = array();
foreach ($field_storage->getBundles() as $bundle) {
$entity_type_id = $field_storage->getTargetEntityTypeId();
if ($route_info = FieldUI::getOverviewRouteInfo($entity_type_id, $bundle)) {
$usage[] = \Drupal::l($this->bundles[$entity_type_id][$bundle]['label'], $route_info);
} else {
$usage[] = $this->bundles[$entity_type_id][$bundle]['label'];
}
}
$row['data']['usage']['data'] = ['#theme' => 'item_list', '#items' => $usage, '#context' => ['list_style' => 'comma-list']];
return $row;
}
示例13: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $field_storage)
{
if ($field_storage->isLocked()) {
$row['class'] = array('menu-disabled');
$row['data']['id'] = $this->t('@field_name (Locked)', array('@field_name' => $field_storage->getName()));
} else {
$row['data']['id'] = $field_storage->getName();
}
$field_type = $this->fieldTypes[$field_storage->getType()];
$row['data']['type'] = $this->t('@type (module: @module)', array('@type' => $field_type['label'], '@module' => $field_type['provider']));
$usage = array();
foreach ($field_storage->getBundles() as $bundle) {
$entity_type_id = $field_storage->getTargetEntityTypeId();
if ($route_info = FieldUI::getOverviewRouteInfo($entity_type_id, $bundle)) {
$usage[] = \Drupal::l($this->bundles[$entity_type_id][$bundle]['label'], $route_info);
} else {
$usage[] = $this->bundles[$entity_type_id][$bundle]['label'];
}
}
$usage_escaped = '';
$separator = '';
foreach ($usage as $usage_item) {
$usage_escaped .= $separator . SafeMarkup::escape($usage_item);
$separator = ', ';
}
$row['data']['usage'] = SafeMarkup::set($usage_escaped);
return $row;
}