You are here

function views_menu_reference_field_validate in Views Menu Reference 7

Implements hook_field_validate().

File

./views_menu_reference.module, line 239
views_menu_reference module core implementations.

Code

function views_menu_reference_field_validate($entity_type, $entity, $field, $instance, $langcode, $items, &$errors) {
  foreach ($items as $delta => $item) {
    if (!empty($item['mlid'])) {
      if ((int) $item['mlid'] < 0) {
        $errors[$field['field_name']][$langcode][$delta][] = array(
          'error' => 'views_menu_reference_mlid_menuparent',
          'message' => t('%name: The menu item you selected is a whole menu tree. This is not allowed. Please select a menu item.', array(
            '%name' => $instance['label'],
          )),
        );
        return;
      }
      $mlid = $item['mlid'];
      if (menu_link_load($mlid) === FALSE) {
        $errors[$field['field_name']][$langcode][$delta][] = array(
          'error' => 'views_menu_reference_wrong_mlid',
          'message' => t('%name: The menu item you selected does not exist.', array(
            '%name' => $instance['label'],
          )),
        );
      }
    }
  }
}