You are here

function _get_quiz_grade_range_chart in Quiz 6.6

Same name and namespace in other branches
  1. 8.6 modules/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  2. 8.4 modules/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  3. 8.5 modules/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  4. 6.4 includes/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  5. 7.6 modules/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  6. 7 includes/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  7. 7.4 includes/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  8. 7.5 modules/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
  9. 6.x modules/quiz_stats/quiz_stats.admin.inc \_get_quiz_grade_range_chart()
1 call to _get_quiz_grade_range_chart()
quiz_dashboard_get_adv_stats in includes/quiz_dashboard/quiz_dashboard.admin.inc

File

includes/quiz_dashboard/quiz_dashboard.admin.inc, line 75

Code

function _get_quiz_grade_range_chart($nid = 0, $uid = 0) {

  // ToDo make the range configurable
  $sql = "SELECT SUM(score >= 0 && score <= 20) AS zero_to_twenty,\n    SUM(score >= 20 && score <= 40) AS twenty_to_fourty,\n    SUM(score >= 40 && score <= 60) AS fourty_to_sixty,\n    SUM(score >= 60 && score <= 80) AS sixty_to_eighty,\n    SUM(score >= 80 && score <= 100) AS eighty_to_hundred\n    FROM {quiz_node_results}\n    WHERE nid = %d";
  if ($uid != 0) {
    $sql .= " AND uid = %d";
  }
  $range = db_fetch_object(db_query($sql, $nid, $uid));
  $count = $range->zero_to_twenty + $range->twenty_to_fourty + $range->fourty_to_sixty + $range->sixty_to_eighty + $range->eighty_to_hundred;
  if ($count < 2) {
    return;
  }
  $output = '<div id="quiz_top_scorers" class="quiz-dashboard-chart-space">';
  $output .= theme('quiz_grade_range', $range);
  $output .= '</div>';
  return $output;
}