Same name and namespace in other branches
  1. 4.6.x modules/poll.module \poll_view_results()
  2. 4.7.x modules/poll.module \poll_view_results()
  3. 5.x modules/poll/poll.module \poll_view_results()
  4. 7.x modules/poll/poll.module \poll_view_results()

Generates a graphical representation of the results of a poll.

File

modules/poll/poll.module, line 630
Enables your site to capture votes on different topics in the form of multiple choice questions.

Code

function poll_view_results(&$node, $teaser, $page, $block) {

  // Count the votes and find the maximum
  $total_votes = 0;
  $max_votes = 0;
  foreach ($node->choice as $choice) {
    if (isset($choice['chvotes'])) {
      $total_votes += $choice['chvotes'];
      $max_votes = max($max_votes, $choice['chvotes']);
    }
  }
  $poll_results = '';
  foreach ($node->choice as $i => $choice) {
    if (!empty($choice['chtext'])) {
      $chvotes = isset($choice['chvotes']) ? $choice['chvotes'] : NULL;
      $poll_results .= theme('poll_bar', $choice['chtext'], $chvotes, $total_votes, isset($node->vote) && $node->vote == $i, $block);
    }
  }
  return theme('poll_results', $node->title, $poll_results, $total_votes, isset($node->links) ? $node->links : array(), $block, $node->nid, isset($node->vote) ? $node->vote : NULL);
}