You are here

function diff_form_node_type_form_alter in Diff 7.3

Same name and namespace in other branches
  1. 7.2 diff.module \diff_form_node_type_form_alter()

Implements hook_form_BASE_FORM_ID_alter().

File

./diff.module, line 384
Provides functionality to show a diff between two node revisions.

Code

function diff_form_node_type_form_alter(&$form, $form_state) {
  if (isset($form['type'])) {
    $type = $form['#node_type'];
    $form['diff'] = array(
      '#title' => t('Compare revisions'),
      '#type' => 'fieldset',
      '#group' => 'additional_settings',
      '#tree' => FALSE,
    );
    $form['diff']['diff_show_preview_changes_node'] = array(
      '#type' => 'checkbox',
      '#title' => t('Show <em>View changes</em> button on node edit form'),
      '#weight' => 10,
      '#default_value' => variable_get('diff_show_preview_changes_node_' . $type->type, TRUE),
      '#description' => t('You can refine access using the "!perm" permission.', array(
        '!perm' => t('Access %view button', array(
          '%view' => t('View changes'),
        )),
      )),
    );
    $form['diff']['diff_enable_revisions_page_node'] = array(
      '#type' => 'checkbox',
      '#title' => t('Enable the <em>Revisions</em> page for this content type'),
      '#weight' => 11,
      '#default_value' => variable_get('diff_enable_revisions_page_node_' . $type->type, TRUE),
    );
    $options = array();
    $info = entity_get_info('node');
    foreach ($info['view modes'] as $view_mode => $view_mode_info) {
      $options[$view_mode] = $view_mode_info['label'];
    }
    $form['diff']['diff_view_mode_preview_node'] = array(
      '#type' => 'select',
      '#title' => t('Standard comparison preview'),
      '#description' => t('Governs the <em>Current revision</em> view mode when doing standard comparisons.'),
      '#options' => $options,
      '#weight' => 13,
      '#default_value' => variable_get('diff_view_mode_preview_node_' . $type->type, 'full'),
      '#empty_value' => '',
      '#empty_option' => t('- Do not display -'),
    );
  }
}