_comment_get_display_setting

  1. drupal
    1. 4.7
    2. 5 comment.module
    3. 6 comment.module
Versions
4.7 – 5 _comment_get_display_setting($setting)
6 _comment_get_display_setting($setting, $node)

Return a current comment display setting

$setting can be one of these: 'mode', 'sort', 'comments_per_page'

Code

modules/comment.module, line 1685

<?php
function _comment_get_display_setting($setting) {
  global $user;

  if ($_GET[$setting]) {
    $value = $_GET[$setting];
  }
  else {
    // get the setting's site default
    switch ($setting) {
      case 'mode':
        $default = variable_get('comment_default_mode', COMMENT_MODE_THREADED_EXPANDED);
        break;
      case 'sort':
        $default = variable_get('comment_default_order', COMMENT_ORDER_NEWEST_FIRST);
        break;
      case 'comments_per_page':
        $default = variable_get('comment_default_per_page', '50');
    }
    if (variable_get('comment_controls', COMMENT_CONTROLS_HIDDEN) == COMMENT_CONTROLS_HIDDEN) {
      // if comment controls are disabled use site default
      $value = $default;
    }
    else {
      // otherwise use the user's setting if set
      if ($user->$setting) {
        $value = $user->$setting;
      }
      else if ($_SESSION['comment_' . $setting]) {
        $value = $_SESSION['comment_' . $setting];
      }
      else {
        $value = $default;
      }
    }
  }
  return $value;
}
?>