Chris@0: validateRequestAttributes($entity, $field_name, $langcode)) { Chris@0: return AccessResult::forbidden(); Chris@0: } Chris@0: Chris@0: return $this->accessEditEntityField($entity, $field_name); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function accessEditEntityField(EntityInterface $entity, $field_name) { Chris@0: return $entity->access('update', NULL, TRUE)->andIf($entity->get($field_name)->access('edit', NULL, TRUE)); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Validates request attributes. Chris@0: */ Chris@0: protected function validateRequestAttributes(EntityInterface $entity, $field_name, $langcode) { Chris@0: // Validate the field name and language. Chris@0: if (!$field_name || !$entity->hasField($field_name)) { Chris@0: return FALSE; Chris@0: } Chris@0: if (!$langcode || !$entity->hasTranslation($langcode)) { Chris@0: return FALSE; Chris@0: } Chris@0: Chris@0: return TRUE; Chris@0: } Chris@0: Chris@0: }