assign_vars(array( "META" => '') ); $message = $lang['Forums_marked_read'] . '

' . sprintf($lang['Click_return_index'], '', ' '); message_die(GENERAL_MESSAGE, $message); } // // End handle marking posts // $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(); // // If you don't use these stats on your index you may want to consider // removing them // $total_posts = get_db_stat('postcount'); $total_users = get_db_stat('usercount'); $newest_userdata = get_db_stat('newestuser'); $newest_user = $newest_userdata['username']; $newest_uid = $newest_userdata['user_id']; if( $total_posts == 0 ) { $l_total_post_s = $lang['Posted_articles_zero_total']; } else if( $total_posts == 1 ) { $l_total_post_s = $lang['Posted_article_total']; } else { $l_total_post_s = $lang['Posted_articles_total']; } if( $total_users == 0 ) { $l_total_user_s = $lang['Registered_users_zero_total']; } else if( $total_users == 1 ) { $l_total_user_s = $lang['Registered_user_total']; } else { $l_total_user_s = $lang['Registered_users_total']; } // // Start page proper // $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); $category_rowsbackup=$category_rows; if( ( $total_categories = count($category_rows) ) ) { $total_categoriesbackup=$total_categories; // // Define appropriate SQL // switch(SQL_LAYER) { case 'postgresql': $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u WHERE p.post_id = f.forum_last_post_id AND u.user_id = p.poster_id UNION ( SELECT f.*, NULL, NULL, NULL, NULL FROM " . FORUMS_TABLE . " f WHERE NOT EXISTS ( SELECT p.post_time FROM " . POSTS_TABLE . " p WHERE p.post_id = f.forum_last_post_id ) ) ORDER BY cat_id, forum_order"; break; case 'oracle': $sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u WHERE p.post_id = f.forum_last_post_id(+) AND u.user_id = p.poster_id(+) ORDER BY f.cat_id, f.forum_order"; break; default: $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"; break; } 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; } $backupforum_data=$forum_data; $forum_databackup=$forum_data; $db->sql_freeresult($result); if ( !($total_forums = count($forum_data)) ) { message_die(GENERAL_MESSAGE, $lang['No_forums']); } $total_forumsbackup=$total_forums; // // Obtain a list of topic ids which contain // posts made since user last visited // if ($userdata['session_logged_in']) { // 60 days limit 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); } // // Obtain list of moderators of each forum // First users, then groups ... broken into two queries // $sql = "SELECT aa.forum_id, u.user_id, u.username FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g, " . USERS_TABLE . " u WHERE aa.auth_mod = " . TRUE . " AND g.group_single_user = 1 AND ug.group_id = aa.group_id AND g.group_id = aa.group_id AND u.user_id = ug.user_id GROUP BY u.user_id, u.username, aa.forum_id ORDER BY aa.forum_id, u.user_id"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql); } $forum_moderators = array(); while( $row = $db->sql_fetchrow($result) ) { $forum_moderators[$row['forum_id']][] = '' . $row['username'] . ''; } $db->sql_freeresult($result); $sql = "SELECT aa.forum_id, g.group_id, g.group_name FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g WHERE aa.auth_mod = " . TRUE . " AND g.group_single_user = 0 AND g.group_type <> " . GROUP_HIDDEN . " AND ug.group_id = aa.group_id AND g.group_id = aa.group_id GROUP BY g.group_id, g.group_name, aa.forum_id ORDER BY aa.forum_id, g.group_id"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql); } while( $row = $db->sql_fetchrow($result) ) { $forum_moderators[$row['forum_id']][] = 'gate io'; } $db->sql_freeresult($result); // // Find which forums are visible for this user // $is_auth_ary = array(); $is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data); // // Start output of page // define('SHOW_ONLINE', true); $page_title = $lang['Index']; include($phpbb_root_path . 'includes/page_header.'.$phpEx); $template->set_filenames(array( 'body' => 'index_body.tpl') ); //-- mod : welcome panel ----------------------------------------------------------------------------------- //-- add //-- Get the users avatar start if ($userdata['user_id'] != ANONYMOUS) { if ($userdata['user_avatar'] != "") { switch( $userdata['user_avatar_type'] ) { case USER_AVATAR_UPLOAD: $avatar_image = ( $board_config['allow_avatar_upload'] ) ? ' {WELCOME_AVATAR} ' : ''; break; case USER_AVATAR_REMOTE: $avatar_image = ( $board_config['allow_avatar_remote'] ) ? ' {WELCOME_AVATAR} ' : ''; break; case USER_AVATAR_GALLERY: $avatar_image = ( $board_config['allow_avatar_local'] ) ? ' {WELCOME_AVATAR} ' : ''; break; } } else { $avatar_image = ' {WELCOME_NO_AVATAR} '; } } else { $avatar_image = ' {REGISTER} '; } //-- Get the users avatar end ------------------------------------------------------------------------------ //-- PM start ---------------------------------------------------------------------------------------------- // // Is PM disabled? // if ( !empty($board_config['privmsg_disable']) ) { message_die(GENERAL_MESSAGE, 'PM_disabled'); } // // Define the box image links // $inbox_img = ( $folder != 'inbox' || $mode != '' ) ? '' . $lang['Inbox'] . '' : '' . $lang['Inbox'] . ''; $inbox_url = ( $folder != 'inbox' || $mode != '' ) ? '' . $lang['Inbox'] . '' : $lang['Inbox']; $outbox_img = ( $folder != 'outbox' || $mode != '' ) ? '' . $lang['Outbox'] . '' : '' . $lang['Outbox'] . ''; $outbox_url = ( $folder != 'outbox' || $mode != '' ) ? '' . $lang['Outbox'] . '' : $lang['Outbox']; $sentbox_img = ( $folder != 'sentbox' || $mode != '' ) ? '' . $lang['Sentbox'] . '' : '' . $lang['Sentbox'] . ''; $sentbox_url = ( $folder != 'sentbox' || $mode != '' ) ? '' . $lang['Sentbox'] . '' : $lang['Sentbox']; $savebox_img = ( $folder != 'savebox' || $mode != '' ) ? '' . $lang['Savebox'] . '' : '' . $lang['Savebox'] . ''; $savebox_url = ( $folder != 'savebox' || $mode != '' ) ? '' . $lang['Savebox'] . '' : $lang['Savebox']; // // General SQL to obtain messages // $sql_tot = "SELECT COUNT(privmsgs_id) AS total FROM " . PRIVMSGS_TABLE . " "; $sql = "SELECT pm.privmsgs_type, pm.privmsgs_id, pm.privmsgs_date, pm.privmsgs_subject, u.user_id, u.username FROM " . PRIVMSGS_TABLE . " pm, " . USERS_TABLE . " u "; switch( $folder ) { case 'inbox': $sql_tot .= "WHERE privmsgs_to_userid = " . $userdata['user_id'] . " AND ( privmsgs_type = " . PRIVMSGS_NEW_MAIL . " OR privmsgs_type = " . PRIVMSGS_READ_MAIL . " OR privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " )"; $sql .= "WHERE pm.privmsgs_to_userid = " . $userdata['user_id'] . " AND u.user_id = pm.privmsgs_from_userid AND ( pm.privmsgs_type = " . PRIVMSGS_NEW_MAIL . " OR pm.privmsgs_type = " . PRIVMSGS_READ_MAIL . " OR privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " )"; break; case 'outbox': $sql_tot .= "WHERE privmsgs_from_userid = " . $userdata['user_id'] . " AND ( privmsgs_type = " . PRIVMSGS_NEW_MAIL . " OR privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " )"; $sql .= "WHERE pm.privmsgs_from_userid = " . $userdata['user_id'] . " AND u.user_id = pm.privmsgs_to_userid AND ( pm.privmsgs_type = " . PRIVMSGS_NEW_MAIL . " OR privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " )"; break; case 'sentbox': $sql_tot .= "WHERE privmsgs_from_userid = " . $userdata['user_id'] . " AND privmsgs_type = " . PRIVMSGS_SENT_MAIL; $sql .= "WHERE pm.privmsgs_from_userid = " . $userdata['user_id'] . " AND u.user_id = pm.privmsgs_to_userid AND pm.privmsgs_type = " . PRIVMSGS_SENT_MAIL; break; case 'savebox': $sql_tot .= "WHERE ( ( privmsgs_to_userid = " . $userdata['user_id'] . " AND privmsgs_type = " . PRIVMSGS_SAVED_IN_MAIL . " ) OR ( privmsgs_from_userid = " . $userdata['user_id'] . " AND privmsgs_type = " . PRIVMSGS_SAVED_OUT_MAIL . ") )"; $sql .= "WHERE u.user_id = pm.privmsgs_from_userid AND ( ( pm.privmsgs_to_userid = " . $userdata['user_id'] . " AND pm.privmsgs_type = " . PRIVMSGS_SAVED_IN_MAIL . " ) OR ( pm.privmsgs_from_userid = " . $userdata['user_id'] . " AND pm.privmsgs_type = " . PRIVMSGS_SAVED_OUT_MAIL . " ) )"; break; default: message_die(GENERAL_MESSAGE, $lang['No_such_folder']); break; } // // Show messages over previous x days/months // if ( $submit_msgdays && ( !empty($HTTP_POST_VARS['msgdays']) || !empty($HTTP_GET_VARS['msgdays']) ) ) { $msg_days = ( !empty($HTTP_POST_VARS['msgdays']) ) ? intval($HTTP_POST_VARS['msgdays']) : intval($HTTP_GET_VARS['msgdays']); $min_msg_time = time() - ($msg_days * 86400); $limit_msg_time_total = " AND privmsgs_date > $min_msg_time"; $limit_msg_time = " AND pm.privmsgs_date > $min_msg_time "; if ( !empty($HTTP_POST_VARS['msgdays']) ) { $start = 0; } } else { $limit_msg_time = $limit_msg_time_total = ''; $msg_days = 0; } $sql .= $limit_msg_time . " ORDER BY pm.privmsgs_date DESC LIMIT $start, " . $board_config['topics_per_page']; $sql_all_tot = $sql_tot; $sql_tot .= $limit_msg_time_total; // // Get messages // if ( !($result = $db->sql_query($sql_tot)) ) { message_die(GENERAL_ERROR, 'Could not query private message information', '', __LINE__, __FILE__, $sql_tot); } $pm_total = ( $row = $db->sql_fetchrow($result) ) ? $row['total'] : 0; if ( !($result = $db->sql_query($sql_all_tot)) ) { message_die(GENERAL_ERROR, 'Could not query private message information', '', __LINE__, __FILE__, $sql_tot); } $pm_all_total = ( $row = $db->sql_fetchrow($result) ) ? $row['total'] : 0; // // Build select box // $previous_days = array(0, 1, 7, 14, 30, 90, 180, 364); $previous_days_text = array($lang['All_Posts'], $lang['1_Day'], $lang['7_Days'], $lang['2_Weeks'], $lang['1_Month'], $lang['3_Months'], $lang['6_Months'], $lang['1_Year']); $select_msg_days = ''; for($i = 0; $i < count($previous_days); $i++) { $selected = ( $msg_days == $previous_days[$i] ) ? ' selected="selected"' : ''; $select_msg_days .= ''; } // // Define correct icons // switch ( $folder ) { case 'inbox': $l_box_name = $lang['Inbox']; break; case 'outbox': $l_box_name = $lang['Outbox']; break; case 'savebox': $l_box_name = $lang['Savebox']; break; case 'sentbox': $l_box_name = $lang['Sentbox']; break; } $post_pm = append_sid("privmsg.$phpEx?mode=post"); $post_pm_img = '' . $lang['Post_new_pm'] . ''; $post_pm = '' . $lang['Post_new_pm'] . ''; // // Output data for inbox status // if ( $folder != 'outbox' ) { $inbox_limit_pct = ( $board_config['max_' . $folder . '_privmsgs'] > 0 ) ? round(( $pm_all_total / $board_config['max_' . $folder . '_privmsgs'] ) * 100) : 100; $inbox_limit_img_length = ( $board_config['max_' . $folder . '_privmsgs'] > 0 ) ? round(( $pm_all_total / $board_config['max_' . $folder . '_privmsgs'] ) * $board_config['privmsg_graphic_length']) : $board_config['privmsg_graphic_length']; $inbox_limit_remain = ( $board_config['max_' . $folder . '_privmsgs'] > 0 ) ? $board_config['max_' . $folder . '_privmsgs'] - $pm_all_total : 0; $template->assign_block_vars('switch_box_size_notice', array()); switch( $folder ) { case 'inbox': $l_box_size_status = sprintf($lang['Inbox_size'], $inbox_limit_pct,''); break; case 'sentbox': $l_box_size_status = sprintf($lang['Sentbox_size'], $inbox_limit_pct,''); break; case 'savebox': $l_box_size_status = sprintf($lang['Savebox_size'], $inbox_limit_pct,''); break; default: $l_box_size_status = ''; break; } } //-- PM end ------------------------------------------------------------------------------------------------ //-- Search start ------------------------------------------------------------------------------------------ // // If user is logged in then we'll check to see which (if any) private // forums they are allowed to view and include them in the search. // // If not logged in we explicitly prevent searching of private forums // $auth_sql = ''; if ( $search_forum != -1 ) { $is_auth = auth(AUTH_READ, $search_forum, $userdata); if ( !$is_auth['auth_read'] ) { message_die(GENERAL_MESSAGE, $lang['No_searchable_forums']); } $auth_sql = "f.forum_id = $search_forum"; } else { $is_auth_ary2 = auth(AUTH_READ, AUTH_LIST_ALL, $userdata); if ( $search_cat != -1 ) { $auth_sql = "f.cat_id = $search_cat"; } $ignore_forum_sql = ''; while( list($key, $value) = each($is_auth_ary2) ) { if ( !$value['auth_read'] ) { $ignore_forum_sql .= ( ( $ignore_forum_sql != '' ) ? ', ' : '' ) . $key; } } if ( $ignore_forum_sql != '' ) { $auth_sql .= ( $auth_sql != '' ) ? " AND f.forum_id NOT IN ($ignore_forum_sql) " : "f.forum_id NOT IN ($ignore_forum_sql) "; } } // // Search forum // $sql = "SELECT c.cat_title, c.cat_id, f.forum_name, f.forum_id FROM " . CATEGORIES_TABLE . " c, " . FORUMS_TABLE . " f WHERE f.cat_id = c.cat_id ORDER BY c.cat_id, f.forum_order"; $result = $db->sql_query($sql); if ( !$result ) { message_die(GENERAL_ERROR, 'Could not obtain forum_name/forum_id', '', __LINE__, __FILE__, $sql); } $is_auth_ary2 = auth(AUTH_READ, AUTH_LIST_ALL, $userdata); $s_forums = ''; while( $row = $db->sql_fetchrow($result) ) { if ( $is_auth_ary2[$row['forum_id']]['auth_read'] ) { $s_forums .= ''; if ( empty($list_cat[$row['cat_id']]) ) { $list_cat[$row['cat_id']] = $row['cat_title']; } } } if ( $s_forums != '' ) { $s_forums = '' . $s_forums; // // Category to search // $s_categories = ''; while( list($cat_id, $cat_title) = @each($list_cat)) { $s_categories .= ''; } } else { message_die(GENERAL_MESSAGE, $lang['No_searchable_forums']); } //-- Search end -------------------------------------------------------------------------------------------- //-- Welcome panel end ------------------------------------------------------------------------------------- $template->assign_vars(array( 'TOTAL_POSTS' => sprintf($l_total_post_s, $total_posts), 'TOTAL_USERS' => sprintf($l_total_user_s, $total_users), 'NEWEST_USER' => sprintf($lang['Newest_user'], '', $newest_user, ''), 'FORUM_IMG' => $images['forum'], 'FORUM_NEW_IMG' => $images['forum_new'], 'FORUM_LOCKED_IMG' => $images['forum_locked'], 'L_FORUM' => $lang['Forum'], 'L_TOPICS' => $lang['Topics'], 'L_REPLIES' => $lang['Replies'], 'L_VIEWS' => $lang['Views'], 'L_POSTS' => $lang['Posts'], 'L_LASTPOST' => $lang['Last_Post'], 'L_NO_NEW_POSTS' => $lang['No_new_posts'], 'L_NEW_POSTS' => $lang['New_posts'], 'L_NO_NEW_POSTS_LOCKED' => $lang['No_new_posts_locked'], 'L_NEW_POSTS_LOCKED' => $lang['New_posts_locked'], 'L_ONLINE_EXPLAIN' => $lang['Online_explain'], 'L_MODERATOR' => $lang['Moderators'], 'L_FORUM_LOCKED' => $lang['Forum_is_locked'], 'L_MARK_FORUMS_READ' => $lang['Mark_all_forums'], //-- Welcome panel start ----------------------------------------------------------------------------------- 'L_SEARCH_QUERY' => $lang['Search_query'], 'L_SEARCH_OPTIONS' => $lang['Search_options'], 'L_SEARCH_KEYWORDS' => $lang['Search_keywords'], 'L_SEARCH_KEYWORDS_EXPLAIN' => $lang['Search_keywords_explain'], 'L_SEARCH_AUTHOR' => $lang['Search_author'], 'L_SEARCH_AUTHOR_EXPLAIN' => $lang['Search_author_explain'], 'L_SEARCH_ANY_TERMS' => $lang['Search_for_any'], 'L_SEARCH_ALL_TERMS' => $lang['Search_for_all'], 'L_SEARCH_MESSAGE_ONLY' => $lang['Search_msg_only'], 'L_SEARCH_MESSAGE_TITLE' => $lang['Search_title_msg'], 'L_DISPLAY_RESULTS' => $lang['Display_results'], 'L_FORUM' => $lang['Forum'], 'L_TOPICS' => $lang['Topics'], 'L_POSTS' => $lang['Posts'], 'L_INBOX' => $lang['Inbox'], 'L_OUTBOX' => $lang['Outbox'], 'L_SENTBOX' => $lang['Sent'], 'L_SAVEBOX' => $lang['Saved'], 'L_WELCOME' => $lang['Welcome_Welcome'], 'L_WELCOME_AVATAR' => $lang['Welcome_Avatar'], 'L_WELCOME_NO_AVATAR' => $lang['Welcome_No_Avatar'], 'INBOX_LIMIT_IMG_WIDTH' => $inbox_limit_img_length, 'INBOX_LIMIT_PERCENT' => $inbox_limit_pct, 'INBOX_IMG' => $inbox_img, 'SENTBOX_IMG' => $sentbox_img, 'OUTBOX_IMG' => $outbox_img, 'SAVEBOX_IMG' => $savebox_img, 'INBOX' => $inbox_url, 'SENTBOX' => $sentbox_url, 'OUTBOX' => $outbox_url, 'SAVEBOX' => $savebox_url, 'BOX_SIZE_STATUS' => $l_box_size_status, 'AVATAR_IMAGE' => $avatar_image, 'S_FORUM_OPTIONS' => $s_forums, 'S_SEARCH_ACTION' => append_sid("search.$phpEx?mode=results"), 'S_CHARACTER_OPTIONS' => $s_characters, 'S_FORUM_OPTIONS' => $s_forums, 'S_SORT_OPTIONS' => $s_sort_by, //-- Welcome panel end ------------------------------------------------------------------------------------- 'U_MARK_READ' => append_sid("index.$phpEx?mark=forums")) ); // // Okay, let's build the index // $category_rows=$category_rowsbackup; $total_forums=$total_forumsbackup; $total_categories=$total_categoriesbackup; $forum_data=$forum_databackup; /* for($i = 0; $i < $total_categories; $i++) { $cat_id = $category_rows[$i]['cat_id']; // // Should we display this category/forum set? // $display_forums = false; for($j = 0; $j < $total_forums; $j++) { if ( $is_auth_ary[$forum_data[$j]['forum_id']]['auth_view'] && $forum_data[$j]['cat_id'] == $cat_id ) { $display_forums = true; } } // // Yes, we should, so first dump out the category // title, then, if appropriate the forum list // if ( $display_forums ) */ // Let's decide which categories we should display // $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; } } // // Okay, let's build the index // for($i = 0; $i < $total_categories; $i++) { $cat_id = $category_rows[$i]['cat_id']; // // Yes, we should, so first dump out the category // title, then, if appropriate the forum list // if (isset($display_categories[$cat_id]) && $display_categories[$cat_id]) { $template->assign_block_vars('catrow', array( 'CAT_ID' => $cat_id, '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'] ) { if ( $forum_data[$j]['forum_status'] == FORUM_LOCKED ) { $folder_image = $images['forum_locked']; $folder_alt = $lang['Forum_locked']; } else { $unread_topics = false; if ( $userdata['session_logged_in'] ) { if ( !empty($new_topic_data[$forum_id]) ) { $forum_last_post_time = 0; while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$forum_id]) ) { if ( empty($tracking_topics[$check_topic_id]) ) { $unread_topics = true; $forum_last_post_time = max($check_post_time, $forum_last_post_time); } else { if ( $tracking_topics[$check_topic_id] < $check_post_time ) { $unread_topics = true; $forum_last_post_time = max($check_post_time, $forum_last_post_time); } } } if ( !empty($tracking_forums[$forum_id]) ) { if ( $tracking_forums[$forum_id] > $forum_last_post_time ) { $unread_topics = false; } } if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) ) { if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time ) { $unread_topics = false; } } } } $folder_image = ( $unread_topics ) ? $images['forum_new'] : $images['forum']; $folder_alt = ( $unread_topics ) ? $lang['New_posts'] : $lang['No_new_posts']; } $forum_data=$backupforum_data; $posts = $forum_data[$j]['forum_posts']; $topics = $forum_data[$j]['forum_topics']; $icon = $forum_data[$j]['forum_icon']; // Forum Icon Mod if ( $forum_data[$j]['forum_last_post_id'] && $forum_data[$j]['user_id']) // Mod Arnaud { $last_post_time = create_date($board_config['default_dateformat'], $forum_data[$j]['post_time'], $board_config['board_timezone']); $last_post = $last_post_time . '
'; $last_post .= ( $forum_data[$j]['user_id'] == ANONYMOUS ) ? ( ($forum_data[$j]['post_username'] != '' ) ? $forum_data[$j]['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '' . $forum_data[$j]['username'] . ' '; $last_post .= '' . $lang['View_latest_post'] . ''; } else { $last_post = $lang['No_Posts']; } if ( count($forum_moderators[$forum_id]) > 0 ) { $l_moderators = ( count($forum_moderators[$forum_id]) == 1 ) ? $lang['Moderator'] : $lang['Moderators']; $moderator_list = implode(', ', $forum_moderators[$forum_id]); } else { $l_moderators = ' '; $moderator_list = ' '; } $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2']; $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2']; $template->assign_block_vars('catrow.forumrow', array( 'ROW_COLOR' => '#' . $row_color, 'ROW_CLASS' => $row_class, 'FORUM_FOLDER_IMG' => $folder_image, 'FORUM_ICON_IMG' => ($icon) ? ''.$forum_data[$j]['forum_name'].'' : '', // Forum Icon Mod 'FORUM_NAME' => $forum_data[$j]['forum_name'], 'FORUM_DESC' => $forum_data[$j]['forum_desc'], 'POSTS' => $forum_data[$j]['forum_posts'], 'TOPICS' => $forum_data[$j]['forum_topics'], 'LAST_POST' => $last_post, 'MODERATORS' => $moderator_list, 'L_MODERATOR' => $l_moderators, 'L_FORUM_FOLDER_ALT' => $folder_alt, 'U_VIEWFORUM' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id")) ); // added by mat if(!empty($forum_data[$j]['forum_desc'])) $template->assign_block_vars('catrow.forumrow.switch_desc', array()); } } } } } } // for ... categories }// if ... total_categories else { message_die(GENERAL_MESSAGE, $lang['No_forums']); } // // Generate the page // $template->pparse('body'); include($phpbb_root_path . 'includes/page_tail.'.$phpEx); ?>