function custom_pagers_block in Custom Pagers 5
Same name and namespace in other branches
- 6 custom_pagers.module \custom_pagers_block()
Implementation of hook_block().
Generates a block with a pager for the current node.
File
- ./
custom_pagers.module, line 96
Code
function custom_pagers_block($op = 'list', $delta = 0) {
if ($op == 'list') {
$pagers = _custom_pagers_load_all_pagers();
foreach ($pagers as $pager) {
if ($pager->position == 'block') {
$blocks[$pager->pid]['info'] = $pager->title;
}
}
return $blocks;
}
else {
if ($op == 'view' && arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
$pagers = _custom_pagers_load_all_pagers();
if ($pager = $pagers[$delta]) {
if ($pager->position == 'block' && _custom_pagers_visibility($pager, $node)) {
$nav_array = custom_pager_build_nav($pager, $node);
if ($nav_array['current_index'] != -1) {
if (module_exists('token')) {
$block['subject'] = token_replace($pager->title, 'node', $node);
}
else {
$block['subject'] = $pager->title;
}
$block['content'] = theme('custom_pager', $nav_array, $node, $pager);
return $block;
}
}
}
}
}
}