You are here

function og_vocab_form_taxonomy_overview_terms_alter in OG Vocabulary 6

Implementation of hook_form_FORM_ID_alter().

Change the edit of a term to og vocab own edit term; or remove it if user doesn't have access to edit the terms.

File

./og_vocab.module, line 344
Give each group its own system controlled vocabularies.

Code

function og_vocab_form_taxonomy_overview_terms_alter(&$form, $form_state) {
  $item = menu_get_item();
  if ($item['path'] == 'node/%/og/vocab/terms/%') {
    $remove = !user_access('edit own group term');
    foreach ($form as $key => $element) {
      if (strpos($key, 'tid:') === 0) {
        if ($remove) {
          unset($form[$key]['edit']);
        }
        else {
          $form[$key]['edit']['#value'] = t('<a href="!edit">edit</a>', array(
            '!edit' => url('node/' . $item['map'][1]->nid . '/og/vocab/terms/edit/' . $element['#term']['tid']),
          ));
        }
      }
    }

    // Redirect back to the og_vocab tab.
    if (!empty($form['destination'])) {
      $form['destination']['#value'] = 'node/' . $item['map'][1]->nid . '/og/vocab';
    }
  }
}