You are here

function node_gallery_api_relationship_type_content_types_form_validate in Node Gallery 7

Validation callback for the relationship form.

File

./node_gallery_api.admin.inc, line 169
Node Gallery API admin interface.

Code

function node_gallery_api_relationship_type_content_types_form_validate($form, &$form_state) {
  $gallery_types = $form_state['values']['relationship_type']['gallery_types'];
  $item_types = $form_state['values']['relationship_type']['item_types'];
  foreach ($gallery_types as $gallery_type) {
    if (in_array($gallery_type, $item_types)) {
      form_set_error('relationship_type][gallery_types', t("A node type cannot be both a gallery and an item type."));
    }
    $existing_gallery_type = node_gallery_api_get_relationship_type($gallery_type);
    if (!empty($existing_gallery_type) && $existing_gallery_type->id != $form['#relationship_type']->id) {
      form_set_error('relationship_type][gallery_types', t('The !gallery_type type is already part of a node gallery relationship.', array(
        '!gallery_type' => $gallery_type,
      )));
    }
  }
  foreach ($item_types as $item_type) {
    $existing_item_type = node_gallery_api_get_relationship_type(NULL, $item_type);
    if (!empty($existing_item_type) && $existing_item_type->id != $form['#relationship_type']->id) {
      form_set_error('relationship_type][item_types', t('The !item_type type is already part of a relationship.', array(
        '!item_type' => $item_type,
      )));
    }
  }
}