You are here

function better_formats_form_alter in Better Formats 6

Same name and namespace in other branches
  1. 6.2 better_formats.module \better_formats_form_alter()

Implementation of hook_form_alter().

File

./better_formats.module, line 90
Enhances Drupal's core input format settings.

Code

function better_formats_form_alter(&$form, $form_state, $form_id) {

  // Alter new node and comment forms.
  // Using $form['#id'] instead of $form_id because $form_id is in the form of
  // 'TYPE_node_form' which varies with the content type while $form['#id']
  // is always 'node-form'.
  switch ($form['#id']) {
    case 'comment-form':
    case 'panels-comment-form':
      better_formats_set_comment_format($form);
      break;
    case 'node-form':
      better_formats_set_node_format($form);
      break;
    case 'block-add-block-form':
    case 'block-admin-configure':
      better_formats_set_block_format($form);
      break;
  }

  // Alter role add/delete and node type forms.
  switch ($form_id) {
    case 'node_type_form':
      if (variable_get('better_formats_per_node_type', FALSE)) {
        better_formats_node_type_form($form, $form_state);
      }
      break;
    case 'user_admin_new_role':
      if (!in_array('better_formats_new_role', $form['#submit'])) {
        $form['#submit'][] = 'better_formats_new_role';
      }
      break;
    case 'user_admin_role':
      if (isset($form_state['post']['op']) && $form_state['post']['op'] == 'Delete role') {
        $form['#submit'][] = 'better_formats_delete_role';
      }
      break;
  }
}