public function sio__vocabulary::validate
3.x sio__vocabulary.inc | public sio__vocabulary::validate($entity_type, $entity, $langcode, $items, &$errors) |
Overrides TripalField::validate
See also
File
- tripal_chado/
includes/ TripalFields/ sio__vocabulary/ sio__vocabulary.inc, line 41
Class
Code
public function validate($entity_type, $entity, $langcode, $items, &$errors) {
// If we don't have an entity then we don't want to validate. The case
// where this could happen is when a user is editing the field settings
// and trying to set a default value. In that case there's no entity and
// we don't want to validate. There will always be an entity for creation
// and update operations of a content type.
if (!$entity) {
return;
}
$settings = $this->field['settings'];
$field_name = $this->field['field_name'];
$field_type = $this->field['type'];
$field_table = $this->instance['settings']['chado_table'];
$field_column = $this->instance['settings']['chado_column'];
// Get the field values.
foreach ($items as $delta => $values) {
// Get the field values.
$cv_id = $values['chado-' . $field_table . '__cv_id'];
if (!$cv_id or $cv_id == 0) {
$errors[$field_name]['und'][0][] = array(
'message' => t("Please specify a vocabulary."),
'error' => 'chado-' . $field_table . '__cv_id'
);
}
}
}