You are here

function comment_goodness_form_node_type_form_alter in Comment goodness 7

Implements hook_form_FORM_ID_alter().

Provide additional comment configurations on the content type edit form.

File

./comment_goodness.module, line 28
Comment goodness provides newest to oldest comment sorting

Code

function comment_goodness_form_node_type_form_alter(&$form, $form_state) {
  $form['comment']['comment_created_date_format'] = array(
    '#title' => t('Post date format'),
    '#type' => 'select',
    '#options' => comment_goodness_date_format_type_options(),
    '#default_value' => variable_get('comment_created_date_format_' . $form['#node_type']->type, 'medium'),
  );
  $form['comment']['comment_changed_date_format'] = array(
    '#title' => t('Update date format'),
    '#type' => 'select',
    '#options' => comment_goodness_date_format_type_options(),
    '#default_value' => variable_get('comment_changed_date_format_' . $form['#node_type']->type, 'medium'),
  );
  $form['comment']['comment_default_sorting'] = array(
    '#title' => t('Sort order'),
    '#type' => 'select',
    '#options' => array(
      1 => t('Older first'),
      2 => t('Newer first'),
    ),
    '#default_value' => variable_get('comment_default_sorting_' . $form['#node_type']->type, comment_goodness_OLDER_FIRST),
  );
  $form['comment']['comment_form_placement'] = array(
    '#title' => t('Comment form location'),
    '#type' => 'select',
    '#options' => array(
      1 => t('Depending on sort order'),
      2 => t('Above existing comments'),
      3 => t('Below existing comments'),
    ),
    '#default_value' => variable_get('comment_form_placement_' . $form['#node_type']->type, comment_goodness_FORM_PLACEMENT_BOTTOM),
  );
  $form['comment']['comment_section_label'] = array(
    '#title' => t('Comment section label'),
    '#type' => 'textfield',
    '#default_value' => variable_get('comment_section_label_' . $form['#node_type']->type, comment_goodness_COMMENT_SECTION_LABEL),
  );
  $form['comment']['comment_form_label'] = array(
    '#title' => t('New comment form label'),
    '#type' => 'textfield',
    '#default_value' => variable_get('comment_form_label_' . $form['#node_type']->type, comment_goodness_COMMENT_FORM_LABEL),
  );

  // Set "Comments per page" setting to textfield so it allows more gradual
  // control over the number of comments to show.
  $form['comment']['comment_default_per_page']['#type'] = 'textfield';
  $form['comment']['comment_default_per_page']['#required'] = TRUE;
  $form['comment']['comment_default_per_page']['#element_validate'] = array(
    'element_validate_integer_positive',
  );
  unset($form['comment']['comment_default_per_page']['#options']);
  $comment_expose_fields_value = variable_get('comment_expose_fields_' . $form['#node_type']->type, 0);
  $form['comment']['comment_expose_fields'] = array(
    '#title' => t('Expose comment properties as pseudo-fields'),
    '#description' => t('Allow comment properties to be managed on the "Comment display" form.'),
    '#type' => 'checkbox',
    '#default_value' => $comment_expose_fields_value,
  );
  $form['#submit'][] = 'comment_goodness_node_type_form_submit';
}