function poll_block_latest_poll_view in Drupal 7
Return content for 'latest poll' block.
Parameters
$node: The node object to load.
1 call to poll_block_latest_poll_view()
- poll_block_view in modules/
poll/ poll.module - Implements hook_block_view().
File
- modules/
poll/ poll.module, line 633 - Enables your site to capture votes on different topics in the form of multiple choice questions.
Code
function poll_block_latest_poll_view($node) {
// This is necessary for shared objects because PHP doesn't copy objects, but
// passes them by reference. So when the objects are cached it can result in
// the wrong output being displayed on subsequent calls. The cloning and
// unsetting of $node->content prevents the block output from being the same
// as the node output.
$node = clone $node;
unset($node->content);
// No 'read more' link.
$node->readmore = FALSE;
$node->teaser = '';
$links = array();
$links[] = array(
'title' => t('Older polls'),
'href' => 'poll',
'attributes' => array(
'title' => t('View the list of polls on this site.'),
),
);
if ($node->allowvotes) {
$links[] = array(
'title' => t('Results'),
'href' => 'node/' . $node->nid . '/results',
'attributes' => array(
'title' => t('View the current poll results.'),
),
);
}
$node->links = $links;
if (!empty($node->allowvotes)) {
$node->content['poll_view_voting'] = drupal_get_form('poll_view_voting', $node, TRUE);
$node->content['links'] = array(
'#theme' => 'links',
'#links' => $node->links,
'#weight' => 5,
);
}
else {
$node->content['poll_view_results'] = array(
'#markup' => poll_view_results($node, TRUE, TRUE),
);
}
return $node;
}