You are here

function workbench_access_taxonomy_autocomplete_validate in Workbench Access 7

Form element validate handler for taxonomy term autocomplete element.

@TODO: How to handle the creation (or not) of new items here?

File

modules/taxonomy.workbench_access.inc, line 287
Taxonomy integration for Workbench Access.

Code

function workbench_access_taxonomy_autocomplete_validate($element, &$form_state) {
  global $user;
  $item = $form_state['values'][$element['#field_name']][$form_state['values']['language']];
  if (empty($item)) {
    return;
  }
  if (!isset($user->workbench_access)) {
    workbench_access_user_load_data($user);
  }
  $tree = workbench_access_get_user_tree($user);

  // TODO: What if the user tree is empty?
  $terms = array();
  if (!empty($tree)) {
    foreach ($item as $key => $value) {
      if (!isset($tree[$value['tid']])) {
        $terms[] = check_plain($value['name']);
      }
    }
  }
  if (!empty($terms)) {
    form_set_error($element['#field_name'], t('You may not assign this content to: !terms', array(
      '!terms' => implode(', ', $terms),
    )));
  }
}