Вход Регистрация
Файл: index.php
Строк: 198
<?php
/***************************************************************************
 *                     index.php  (phpBB-WAP v7)
 *                            -------------------
 *      Разработка: phpBB Group.
 *      Оптимизация под WAP: Гутник Игорь ( чел ).
 *          2009 год
 ***************************************************************************/

/***************************************************************************
 *
 *   Эта версия phpBB-WAP является бесплатным
 *   программным обеспечением и распространяется
 *   в рамках лицензии GNU General Public License.
 *   Автор модификации настоятельно не
 *   рекомендует распрострянять её так, как
 *   распространялась 5 версия мода.
 *
 ***************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = './';
include(
$phpbb_root_path . 'extension.inc');
include(
$phpbb_root_path . 'common.'.$phpEx);

if (!empty(
$board_config['index_announcement']))
{
    include(
$phpbb_root_path . 'includes/bbcode.'.$phpEx);
}

$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);

$viewcat = ( !empty($HTTP_GET_VARS[POST_CAT_URL]) ) ? $HTTP_GET_VARS[POST_CAT_URL] : -1;

if( (!
$board_config['index_spisok'] && !$userdata['session_logged_in']) || ($userdata['session_logged_in'] && !$userdata['user_index_spisok']) )
{
    if ( 
$viewcat < 0 )
    
$viewcat = -2 ;
}

$verh = '';
$niz = '';

$sql = "SELECT * 
    FROM "
.$table_prefix."shop_sites
    ORDER BY id ASC"
;
if( !(
$result = $db->sql_query($sql)) )
{
    
message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

if ( 
$row = $db->sql_fetchrow($result) )
{
    
$i = 0;
    do
    {
        if ( 
$row['site_order'] )
        {
            if ( 
$row['site_time'] < time() )
            {
                
$sqldel = "DELETE FROM ".$table_prefix."shop_sites WHERE id = " . $row['id'];
                
$resultdel = $db->sql_query($sqldel);
            } else {
                
$niz .= '<a href="http://' . $row['site_url'] . '">' . $row['site_desc'] . '</a><br/>';
            }
        } else {
            if ( 
$row['site_time'] < time() )
            {
                
$sqldel = "DELETE FROM ".$table_prefix."shop_sites WHERE id = " . $row['id'];
                
$resultdel = $db->sql_query($sqldel);
            } else {
                
$verh .= '<a href="http://' . $row['site_url'] . '">' . $row['site_desc'] . '</a><br/>';
            }
        }

        
$i++;
    }
    while ( 
$row = $db->sql_fetchrow($result) );
    
$db->sql_freeresult($result);
}

$tracking_topics = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_t"]) : array();
$tracking_forums = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_f"]) : array();

$total_posts = get_db_stat('postcount');
$total_users = get_db_stat('usercount');
$total_attach = get_db_stat('attachcount');
$newest_userdata = get_db_stat('newestuser');
$newest_user = $newest_userdata['username'];
$newest_uid = $newest_userdata['user_id'];

$statistika = "<p>".sprintf($lang['Posted_articles_total'], $total_posts)."<br/>n".sprintf($lang['Attach_total'], $total_attach)."<br/>n".sprintf($lang['Registered_users_total'], $total_users)."<br/>n".sprintf($lang['Newest_user'], '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=$newest_uid") . '">', $newest_user, '</a>')."</p>";

$ban_information = session_userban($user_ip, $userdata['user_id']);
if (
$ban_information)
{
    
$ban = '<div class="text" style="color: red; font-weight: bold;">Внимание!<br/></div><div style="border: 1px solid #d4d6d4; background: #ffffa0;">Ваш '.$ban_information.'</div>';
} else {
    
$ban = '';
}

$sql = "SELECT c.cat_id, c.cat_title, c.cat_order
    FROM " 
. CATEGORIES_TABLE . " c 
    ORDER BY c.cat_order"
;
if( !(
$result = $db->sql_query($sql)) )
{
    
message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
}

$category_rows = array();
while (
$row = $db->sql_fetchrow($result))
{
    
$category_rows[] = $row;
}
$db->sql_freeresult($result);
$total_categories = count($category_rows);

$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
    FROM (( " 
. FORUMS_TABLE . " f
    LEFT JOIN " 
. POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
    LEFT JOIN " 
. USERS_TABLE . " u ON u.user_id = p.poster_id )
    ORDER BY f.cat_id, f.forum_order"
;
if ( !(
$result = $db->sql_query($sql)) )
{
    
message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql);
}

$forum_data = array();
while( 
$row = $db->sql_fetchrow($result) )
{
    
$forum_data[] = $row;
}
$db->sql_freeresult($result);

$total_forums = count($forum_data);

if (
$userdata['session_logged_in'])
{
    if (
$userdata['user_lastvisit'] < (time() - 5184000))
    {
        
$userdata['user_lastvisit'] = time() - 5184000;
    }

    
$sql = "SELECT t.forum_id, t.topic_id, p.post_time 
        FROM " 
. TOPICS_TABLE . " t, " . POSTS_TABLE . " p 
        WHERE p.post_id = t.topic_last_post_id 
            AND p.post_time > " 
. $userdata['user_lastvisit'] . " 
            AND t.topic_moved_id = 0"
; 
    if ( !(
$result = $db->sql_query($sql)) )
    {
        
message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql);
    }

    
$new_topic_data = array();
    while( 
$topic_data = $db->sql_fetchrow($result) )
    {
        
$new_topic_data[$topic_data['forum_id']][$topic_data['topic_id']] = $topic_data['post_time'];
    }
    
$db->sql_freeresult($result);
}

$admin_link = ( $userdata['user_level'] == ADMIN ) ? '- <a href="admin/index.' . $phpEx . '?sid=' . $userdata['session_id'] . '">' . $lang['Admin_panel'] . '</a>' : '';

$is_auth_ary = array();
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data);

$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 ORDER BY username" :"";
if(
$result = $db->sql_query($sql)) 
{ 
    if (!empty(
$result)) 
    { 
        
$time_now = time();
        
$this_year = create_date('Y', $time_now, $board_config['board_timezone']);
        
$date_today = create_date('Ymd', $time_now, $board_config['board_timezone']);
        
$date_forward = create_date('Ymd', $time_now+($board_config['birthday_check_day']*86400), $board_config['board_timezone']);
        while (
$birthdayrow = $db->sql_fetchrow($result))
        { 
            
$user_birthday2 = $this_year.($user_birthday = realdate("md",$birthdayrow['user_birthday'] )); 
            if ( 
$user_birthday2 < $date_today ) $user_birthday2 += 10000;
            if ( 
$user_birthday2 > $date_today  && $user_birthday2 <= $date_forward ) 
            { 
                
$user_age = ( $this_year.$user_birthday < $date_today ) ? $this_year - realdate ('Y',$birthdayrow['user_birthday'])+1 : $this_year- realdate ('Y',$birthdayrow['user_birthday']); 
                switch (
$birthdayrow['user_level'])
                {
                    case 
ADMIN :
                          
$birthdayrow['username'] = $birthdayrow['username']; 
                          
$style_color = 'style="color:#ffcc00"';
                        break;
                    case 
MOD :
                          
$birthdayrow['username'] = $birthdayrow['username']; 
                          
$style_color = 'style="color:#943043"';
                        break;
                    default: 
$style_color = '';
                }
                
$birthday_week_list .= ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=" . $birthdayrow['user_id']) . '"' . $style_color .'>' . $birthdayrow['username'] . ' ('.$user_age.')</a>,'; 

            } else if ( 
$user_birthday2 == $date_today ) { 

                
$user_age = $this_year - realdate ( 'Y',$birthdayrow['user_birthday'] ); 
                switch (
$birthdayrow['user_level'])
                {
                    case 
ADMIN :
                          
$birthdayrow['username'] = $birthdayrow['username']; 
                          
$style_color = 'style="color:#ffcc00"';
                        break;
                    case 
MOD :
                          
$birthdayrow['username'] = $birthdayrow['username']; 
                          
$style_color = 'style="color:#943043"';
                        break;
                    default: 
$style_color = '';
                }

                
$birthday_today_list .= ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&amp;" . POST_USERS_URL . "=" . $birthdayrow['user_id']) . '"' . $style_color .'>' . $birthdayrow['username'] . ' ('.$user_age.')</a>,'; 
            }
             
        }
        if (
$birthday_today_list) $birthday_today_list[ strlen( $birthday_today_list)-1] = ' ';
        if (
$birthday_week_list) $birthday_week_list[ strlen( $birthday_week_list)-1] = ' ';
    } 
    
$db->sql_freeresult($result);
}

define('SHOW_ONLINE', true);
$page_title = $lang['Index'];
include(
$phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    
'body' => 'index_body.tpl')
);

$template->assign_vars(array(
    
'STATISTIKA' => $statistika,
    
'L_WHOSBIRTHDAY_WEEK' => ($board_config['birthday_check_day'] > 1) ? sprintf( (($birthday_week_list) ? $lang['Birthday_week'] : $lang['Nobirthday_week']), $board_config['birthday_check_day']).$birthday_week_list : '',
    
'L_WHOSBIRTHDAY_TODAY' => ($board_config['birthday_check_day']) ? ($birthday_today_list) ? $lang['Birthday_today'].$birthday_today_list : $lang['Nobirthday_today'] : '',
    
'ADMIN_LINK' => $admin_link,
    
'VERH' => $verh,
    
'NIZ' => $niz,
    
'BAN_INFO' => $ban)
);

if (!empty(
$board_config['index_announcement']))
{
    
$announcement = smilies_pass($board_config['index_announcement']);
    
$announcement = str_replace("n", "n<br/>n", $announcement);

    
$template->assign_block_vars('announcement', array(
        
'ANNOUNCEMENT' => $announcement)
    );
}

$display_categories = array();

for (
$i = 0; $i < $total_forums; $i++ )
{
    if (
$is_auth_ary[$forum_data[$i]['forum_id']]['auth_view'])
    {
        
$display_categories[$forum_data[$i]['cat_id']] = true;
    }
}

for(
$i = 0; $i < $total_categories; $i++)
{
    
$cat_id = $category_rows[$i]['cat_id'];

    if (isset(
$display_categories[$cat_id]) && $display_categories[$cat_id])
    {
        
$template->assign_block_vars('catrow', array(
            
'CAT_DESC' => $category_rows[$i]['cat_title'],
            
'U_VIEWCAT' => append_sid("index.$phpEx?" . POST_CAT_URL . "=$cat_id"))
        );

        if ( 
$viewcat == $cat_id || $viewcat == -1 )
        {
            for(
$j = 0; $j < $total_forums; $j++)
            {
                if ( 
$forum_data[$j]['cat_id'] == $cat_id )
                {
                    
$forum_id = $forum_data[$j]['forum_id'];

                    if ( 
$is_auth_ary[$forum_id]['auth_view'] )
                    {
                        
$posts = $forum_data[$j]['forum_posts'];

                        
$template->assign_block_vars('catrow.forumrow',    array(
                            
'FORUM_NAME' => $forum_data[$j]['forum_name'],
                            
'POSTS' => $forum_data[$j]['forum_posts'],
                            
'TOPICS' => $forum_data[$j]['forum_topics'],
                            
'U_VIEWFORUM' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id"))
                        );
                    }
                }
            }
        }
    }
}

$template->pparse('body');

include(
$phpbb_root_path . 'includes/page_tail.'.$phpEx);

?>
Онлайн: 2
Реклама