You are here

function poll_view in Drupal 5

Same name and namespace in other branches
  1. 4 modules/poll.module \poll_view()
  2. 6 modules/poll/poll.module \poll_view()
  3. 7 modules/poll/poll.module \poll_view()

Implementation of hook_view().

Parameters

$block: An extra parameter that adapts the hook to display a block-ready rendering of the poll.

1 call to poll_view()
poll_block in modules/poll/poll.module
Implementation of hook_block().

File

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

Code

function poll_view($node, $teaser = FALSE, $page = FALSE, $block = FALSE) {
  global $user;
  $output = '';

  // Special display for side-block
  if ($block) {

    // No 'read more' link
    $node->readmore = FALSE;
    $links = module_invoke_all('link', 'node', $node, 1);
    $links[] = array(
      'title' => t('Older polls'),
      'href' => 'poll',
      'attributes' => array(
        'title' => t('View the list of polls on this site.'),
      ),
    );
    if ($node->allowvotes && $block) {
      $links[] = array(
        'title' => t('Results'),
        'href' => 'node/' . $node->nid . '/results',
        'attributes' => array(
          'title' => t('View the current poll results.'),
        ),
      );
    }
    $node->links = $links;
  }
  if ($node->allowvotes && ($block || arg(2) != 'results')) {
    if ($_POST['op'] == t('Vote')) {
      poll_vote($node);
    }
    $node->content['body'] = array(
      '#value' => drupal_get_form('poll_view_voting', $node, $block),
    );
  }
  else {
    $node->content['body'] = array(
      '#value' => poll_view_results($node, $teaser, $page, $block),
    );
  }
  return $node;
}