function entity_reference_multiple_field_validate in Entity Reference Multiple 7
Same name and namespace in other branches
- 7.2 entity_reference_multiple.module \entity_reference_multiple_field_validate()
Implements hook_field_validate().
File
- ./
entity_reference_multiple.module, line 87 - Primarily Drupal hooks.
Code
function entity_reference_multiple_field_validate($entity_type, $entity, $field, $instance, $langcode, $items, &$errors) {
$ids = array();
foreach ($items as $delta => $item) {
if (!entity_reference_multiple_field_is_empty($item, $field)) {
$ids[$item['target_type']][$item['target_id']] = $delta;
}
}
foreach ($ids as $target_type => $target_ids) {
$valid_ids = _entity_reference_multiple_validate_referencable_entities($field, $target_type, array_keys($target_ids));
if ($invalid_entities = array_diff_key($ids[$target_type], array_flip($valid_ids))) {
foreach ($invalid_entities as $id => $delta) {
$errors[$field['field_name']][$langcode][$delta][] = array(
'error' => 'entity_reference_multiple_invalid_entity',
'message' => t('The referenced entity (@type: @id) is invalid.', array(
'@type' => $target_type,
'@id' => $id,
)),
);
}
}
}
}