';
$my_views['footer']='
';
*/
if (is_callable('bb_register_view')) {global $bb_views; $my_views['new_order']=$bb_views;} else {global $views; $my_views['new_order']=$views;}
$my_views['prefered_order']=array_reverse($my_views['prefered_order']);
$my_views['new_order']=array_reverse($my_views['new_order']);
foreach ($my_views['prefered_order'] as $view) { // change display order $bb_views[$slug] vs. $view[$slug]
if (isset($my_views['new_order'][$view])) {
$temp=$my_views['new_order'][$view];
unset($my_views['new_order'][$view]);
$my_views['new_order'][$view]=$temp;
}
}
$my_views['new_order']=array_reverse($my_views['new_order']);
if (is_callable('bb_register_view')) {global $bb_views; $bb_views=$my_views['new_order'];} else {global $views; $views=$my_views['new_order'];}
foreach ($my_views['remove_views'] as $view) {
if (is_callable('bb_register_view')) { // Build 876+ alpha trunk
bb_deregister_view($view);
} else { // Build 214-875 (0.8.2.1)
global $views;
unset($views[$view]);
}
}
if (!is_callable('bb_register_view')) {return $views;}
}
if (!is_callable('bb_register_view')) {add_filter('bb_views','my_views_init',1000 );} else {add_action('bb_init', 'my_views_init',1000);}
function my_views_unsticky($view,$page=1){ // quick way to fix incorrect stickies on top of custom views
// todo: make this find real stickies within results and re-sticky-fy
if (intval($page)>1 || !in_array($view,array('no-replies','untagged',''))) {unset($GLOBALS['stickies']);}
}
add_action( 'bb_custom_view', 'my_views_unsticky',200,2);
function my_views_view_pages_label($passthrough) {
global $my_views;
if (strlen($passthrough)) {$passthrough=$my_views['view_pages_label'].$passthrough;}
return $passthrough;
}
add_filter( 'view_pages', 'my_views_view_pages_label',200 );
function my_views_add_view_title($title) {
if (is_view()) {$title = get_view_name(). ' « ' . bb_get_option( 'name' ); }
return $title;
}
add_filter( 'bb_get_title', 'my_views_add_view_title' );
function my_views_dropdown($display=1) { /* makes views available as dropdown list anywhere you put */
$views_dropdown='';
if ($display) {echo $views_dropdown;} else {return $views_dropdown;}
}
function my_views_header($bbcrumb=false) { /* adds proper h2 header & dropdown to view.php template(s) put */
if (is_view()) :
if ($bbcrumb) :
?>
»
';
}
}
add_action('bb_foot', 'my_views_table_sort');
function my_views_rss() {
global $my_views, $bb_db_override, $view, $bb_views, $title, $link, $link_self, $description, $feed, $feed_id, $topics, $posts;
if ($feed!='view') {return;}
if (!in_array($feed_id,$my_views['rss'])) {return;}
$view=$feed_id;
$title = $bb_views[$feed_id]['title'];
$bb_db_override=true;
do_action( 'bb_custom_view', $view );
if (empty($posts)) {
$posts=array();
if (!empty($topics)) { // adds last posts to RSS - could optionally use first_posts
bb_cache_last_posts();
foreach ($topics as $topic) {$posts[]=bb_get_last_post($topic->topic_id);}
}
}
}
add_action( 'bb_rss.php_pre_db', 'my_views_rss' );
?>