You are here

function node_revision_delete_form_node_type_form_alter in Node Revision Delete 7.2

Same name and namespace in other branches
  1. 8 node_revision_delete.module \node_revision_delete_form_node_type_form_alter()
  2. 7.3 node_revision_delete.module \node_revision_delete_form_node_type_form_alter()

Implements hook_form_FORM_ID_alter().

Adds node_revision_delete settings to the content type edit form.

File

./node_revision_delete.module, line 266
Node Revision Delete Module.

Code

function node_revision_delete_form_node_type_form_alter(&$form, &$form_state) {
  $type = $form['#node_type']->type;
  $track = variable_get('node_revision_delete_track_' . $type, NODE_REVISION_DELETE_TRACK);
  $form['workflow']['section'] = array(
    '#type' => 'fieldset',
    '#title' => t('Node Revision Delete'),
    '#collapsible' => FALSE,
    '#collapsed' => FALSE,
    '#attributes' => array(
      'class' => array(
        'fieldgroup',
        'form-composite',
      ),
    ),
    '#attached' => array(
      'css' => array(
        drupal_get_path('module', 'node_revision_delete') . '/css/node_revision_delete.css',
      ),
    ),
  );
  $form['workflow']['section']['node_revision_delete_track'] = array(
    '#type' => 'checkbox',
    '#title' => t('Limit the amount of revisions for this content type'),
    '#default_value' => $track,
  );
  $number = variable_get('node_revision_delete_number_' . $type, NODE_REVISION_DELETE_NUMBER);
  $form['workflow']['section']['node_revision_delete_number'] = array(
    '#type' => 'textfield',
    '#title' => t('Maximum number of revisions to keep'),
    '#description' => t('Oldest revisions will be deleted when the total amount surpases this value. Set it to 1 to remove all revisions.'),
    '#default_value' => $number,
    '#states' => array(
      // Hide the settings when the cancel notify checkbox is disabled.
      'visible' => array(
        ':input[name="node_revision_delete_track"]' => array(
          'checked' => TRUE,
        ),
      ),
    ),
    '#element_validate' => array(
      'element_validate_integer_positive',
    ),
  );
}