<?php
 
    include('bt-common.php');
 
    
 
    if (!isset($_SESSION['bt_page']) || $_SESSION['bt_page'] != $_SERVER['REQUEST_URI']) {
 
        $_SESSION['bt_page'] = $_SERVER['REQUEST_URI'];
 
    }
 
 
    $bt_content_identifier = bt_get_content_identifier();
 
    
 
    $bt_error = '';
 
    $bt_input_error = '';
 
    
 
    if (isset($_SESSION['bt_input_error']) && !empty($_SESSION['bt_input_error'])) {
 
        $bt_input_error = $_SESSION['bt_input_error'];
 
        $_SESSION['bt_input_error'] = '';
 
    }
 
    //default title
 
    bt_set_title(bt_get_config('description'));
 
    /*
 
    This section is where we start the process of getting data based on the content type
 
    */
 
    bt_set_404();
 
    switch($bt_content_identifier['type']) {
 
        case 'blog':
 
            bt_unset_404();
 
            $bt_post_categories = new bt_categories($bt_tb->categories);
 
            $bt_posts = new bt_posts();
 
            $bt_content_identifier['limit'] = (int) bt_get_config('limit_posts');
 
            $bt_content_identifier['comment_count'] = 1;
 
            $bt_content_identifier['post_type'] = 'published';
 
            //paging support.
 
            $bt_content_identifier['offset'] = $bt_content_identifier['limit'] * $bt_content_identifier['page'] - $bt_content_identifier['limit'];
 
            if ($bt_content_identifier['offset'] < 0) {
 
                $bt_content_identifier['offset'] = 0;
 
            }
 
            $bt_post_array = $bt_posts->get_posts($bt_content_identifier);
 
            $bt_content_identifier['theme_type'] = 'blog';
 
 
            //if no posts found trigger not found message (only used if no posts were found in a category)
 
            if (empty($bt_post_array)) $bt_error = '<h2>This category is currently empty.</h2>';
 
 
            if (isset($bt_post_array[0])) {
 
                $bt_post = $bt_post_array[0];
 
                if ($bt_posts->matches_permalink()) {
 
                    bt_set_title(bt_run_content_filter('post_title', $bt_post['post_title']));
 
                }
 
                unset($bt_post);
 
            }
 
        break;
 
        
 
        case 'cms':
 
            bt_unset_404();
 
            $bt_post_categories = new bt_categories($bt_tb->categories);
 
            $bt_posts = new bt_posts();
 
            $bt_content_identifier['limit'] = 1;
 
            unset($bt_content_identifier['comment_count']);
 
            $bt_content_identifier['post_type'] = 'published_content';
 
            //paging support.
 
            $bt_content_identifier['offset'] = $bt_content_identifier['limit'] * $bt_content_identifier['page'] - $bt_content_identifier['limit'];
 
            if ($bt_content_identifier['offset'] < 0) {
 
                $bt_content_identifier['offset'] = 0;
 
            }
 
            $bt_post_array = $bt_posts->get_posts($bt_content_identifier);
 
            $bt_content_identifier['theme_type'] = 'cms';
 
 
            if (isset($bt_post_array[0])) {
 
                $bt_post = $bt_post_array[0];
 
                if ($bt_posts->matches_permalink_content()) {
 
                    bt_set_title(bt_run_content_filter('post_title', $bt_post['post_title']));
 
                }
 
                unset($bt_post);
 
            }
 
        break;
 
        
 
        case 'rss':
 
            bt_unset_404();
 
            $bt_content_identifier['limit'] = (int) bt_get_config('limit_posts');
 
            $bt_content_identifier['post_type'] = 'published';
 
            $bt_post_categories = new bt_categories($bt_tb->categories);
 
            $bt_posts = new bt_posts();
 
            $bt_post_array = $bt_posts->get_posts($bt_content_identifier);
 
            $bt_content_identifier['theme_type'] = '';
 
            bt_set_title('');
 
        
 
        break;
 
        
 
        case 'rss_comments':
 
            bt_unset_404();
 
            $bt_post_categories = new bt_categories($bt_tb->categories);
 
            $bt_posts = new bt_posts();
 
            $bt_post_array = $bt_posts->get_posts($bt_content_identifier);
 
            if (count($bt_post_array) == 1) {
 
                $bt_post = $bt_post_array[0];
 
                $bt_content_identifier['get_posts'] = true;
 
                $bt_content_identifier['order'] = 1;
 
                bt_post_comments_setup();
 
                //unset($bt_post);
 
            }
 
            else {
 
                bt_feed_comments_setup();
 
            }
 
            
 
            $bt_content_identifier['theme_type'] = '';
 
            bt_set_title('');
 
        
 
        break;
 
        
 
        
 
        default:
 
        
 
            //pass all other content types to plugins that might handle them
 
            bt_run_section_ref('other_content_' . $bt_content_identifier['type'], $bt_content_identifier);
 
    }
 
    
 
    /*
 
    we can do real 404s now :)
 
    */
 
    if (bt_is_404()) {
 
        bt_run_section('404');
 
    }
 
    
 
    bt_send_headers();
 
 
    bt_run_section('header_loaded');
 
    /*
 
        Theme Support
 
    */
 
    if (bt_get_config('themes') && !empty($bt_content_identifier['theme_type'])) {
 
        $bt_theme = bt_check_current_theme();
 
        $bt_theme_type = bt_check_theme_type($bt_theme, $bt_content_identifier['theme_type']);
 
        define('BT_CURRENT_THEME', $bt_theme);
 
        define('BT_CURRENT_THEME_TYPE', $bt_theme_type);
 
        
 
        //Themes can over the Bluetrait default 'theme_handle' (without the need to use a plugin) if they need to load themes in a different manner
 
        include(BT_ROOT . BT_CONTENT . '/bt-themes/' . $bt_theme . '/' . $bt_theme . '.theme.php');
 
        
 
        bt_run_section('theme_type_' . BT_CURRENT_THEME_TYPE);
 
    }
 
?>
 
 |