You are here

function _field_reference_fields_validate in Field reference 7

Validate callback for the 'fields' fieldset.

Clean up the fields array.

1 string reference to '_field_reference_fields_validate'
field_reference_field_settings_form in ./field_reference.module
Implements hook_field_settings_form().

File

./field_reference.module, line 245
Defines a field type for referencing a field from another.

Code

function _field_reference_fields_validate($element, &$form_state, $form) {
  $value = array();
  foreach (element_children($element) as $entity_type) {
    foreach (element_children($element[$entity_type]) as $bundle) {
      foreach (element_children($element[$entity_type][$bundle]) as $field_key) {
        if (!empty($element[$entity_type][$bundle][$field_key]['#value'])) {
          $value[$entity_type][$bundle][$field_key] = $field_key;
        }
      }
    }
  }
  if (empty($value)) {
    form_set_error('fields', t('You must select at least one field that can be referenced.'));
  }
  form_set_value($element, $value, $form_state);
}