You are here

function biblio_form_alter in Bibliography Module 7.2

Same name and namespace in other branches
  1. 5 biblio.module \biblio_form_alter()
  2. 6.2 biblio.module \biblio_form_alter()
  3. 6 biblio.module \biblio_form_alter()

Implements hook_form_alter().

File

./biblio.module, line 3676

Code

function biblio_form_alter(&$form, &$form_state, $form_id) {
  if (isset($form['#field']['bundles']['biblio'])) {
    switch ($form_id) {

      // Modify the Field settings form so we can add an option to select vtab
      // for a field in the biblio add/edit form
      case 'field_ui_field_settings_form':
      case 'field_ui_field_edit_form':
        $field_name = $form['#instance']['field_name'];
        $entity_type = $form['#instance']['entity_type'];
        $bundle = $form['#instance']['bundle'];
        $field_info = field_info_instance($entity_type, $field_name, $bundle);
        if (isset($field_info['settings']['vtab'])) {
          $vtab_default_value = $field_info['settings']['vtab'];
        }
        else {
          $vtab_default_value = 'none';
        }
        $vtabs = biblio_form_vtab_info();
        foreach ($vtabs as $vtab_info) {
          $options[$vtab_info['tab_id']] = t($vtab_info['title']);
        }
        $options['none'] = t('None');
        $form['instance']['settings']['vtab'] = array(
          '#type' => 'select',
          '#title' => t('Biblio Form Vertical Tab'),
          '#options' => $options,
          '#default_value' => $vtab_default_value,
          '#required' => TRUE,
        );
        break;
    }
  }
}