include_once ($phpbb_root_path . 'mods/phpbb_fetch_all/common.' . $phpEx); include_once ($phpbb_root_path . 'mods/phpbb_fetch_all/stats.' . $phpEx); include_once ($phpbb_root_path . 'mods/phpbb_fetch_all/users.' . $phpEx); include_once ($phpbb_root_path . 'mods/phpbb_fetch_all/polls.' . $phpEx); include_once ($phpbb_root_path . 'mods/phpbb_fetch_all/posts.' . $phpEx); include_once ($phpbb_root_path . 'mods/phpbb_fetch_all/forums.' . $phpEx); # Godwin <-- // // Start session management // $userdata = session_pagestart($user_ip, PAGE_WEBLOGS); init_userprefs($userdata); // // End session management // //Asign date $TODAY_DATE = date ("Y-m-d H:i:s"); // // Sorting stuff // $count = ( isset($HTTP_GET_VARS['count']) ) ? intval($HTTP_GET_VARS['count']) : 15; $start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0; $sort = ( isset($HTTP_GET_VARS['sort']) ) ? intval($HTTP_GET_VARS['sort']) : 0; if ( !empty($HTTP_POST_VARS['numweblogs']) || !empty($HTTP_GET_VARS['numweblogs']) ) { $count = ( !empty($HTTP_POST_VARS['numweblogs']) ) ? $HTTP_POST_VARS['numweblogs'] : $HTTP_GET_VARS['numweblogs']; } else { $count = $weblog_config['weblogs_per_page']; } if ( !empty($HTTP_POST_VARS['sortmethod']) || !empty($HTTP_GET_VARS['sortmethod']) ) { $sort = ( !empty($HTTP_POST_VARS['sort']) ) ? $HTTP_POST_VARS['sort'] : $HTTP_GET_VARS['sort']; } else { $sort = $weblog_config['weblog_sort']; } if ( !empty($HTTP_POST_VARS['sortorder']) || !empty($HTTP_GET_VARS['sortorder']) ) { $order = ( !empty($HTTP_POST_VARS['sortorder']) ) ? $HTTP_POST_VARS['sortorder'] : $HTTP_GET_VARS['sortorder']; } else { $order = $weblog_config['weblog_order']; } // // Start page proper // $sql = "SELECT c.cat_id, c.cat_title, c.cat_order FROM " . CATEGORIES_TABLE . " c WHERE c.cat_allow_weblogs = 1 ORDER BY c.cat_order"; if( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql); } while( $category_rows[] = $db->sql_fetchrow($result) ); if( ( $total_categories = count($category_rows) ) ) { // // Statistics // if ( $weblog_config['display_stats'] == 1 ) { $template->assign_block_vars('stats', array()); /* $sql = "SELECT f.*, p.post_time, p.post_username, u.* FROM (( " . CATEGORIES_TABLE . " c INNER JOIN " . FORUMS_TABLE . " f ON f.cat_id = c.cat_id INNER JOIN " . USERS_TABLE . " u2 ON u2.user_weblog = f.forum_id 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 ) WHERE c.cat_allow_weblogs = 1 AND u.weblog_visible <> 0 ORDER BY f.cat_id, f.forum_id LIMIT 10"; */ # Query modified - To hide hidden post in all places except users myblog page - "and t.topic_auth <> 3 added" - Godwin --> $sql = "SELECT f.*, u.*, p.post_time , t.topic_title , t.topic_views , t.topic_id , t.topic_time from " . FORUMS_TABLE ." f, ". USERS_TABLE ." u , ". POSTS_TABLE ." p , ". TOPICS_TABLE ." t where f.forum_id=u.user_weblog and p.post_id = f.forum_last_post_id and t.topic_id = p.topic_id and u.weblog_visible <> 0 ORDER BY topic_time"; # Godwin <-- if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql); } while( $row = $db->sql_fetchrow($result) ) { $weblog_data_stat[] = $row; } $total_forums_stat = count($weblog_data_stat); if ( count($weblog_data_stat) == 0 ) { message_die(GENERAL_MESSAGE, $lang['No_weblogs']); } for ($i = 0; $i < $total_forums_stat; $i++) { $weblog_id = $weblog_data_stat[$i]['forum_id']; //for Popular Articles # Query modified - To hide hidden post in all places except users myblog page - "and t.topic_auth <> 3 added" - Godwin --> $top_sql="select topic_id from " . TOPICS_TABLE . " where forum_id = $weblog_id and topic_time > UNIX_TIMESTAMP(DATE_SUB(CURRENT_DATE, INTERVAL 7 DAY)) ORDER BY topic_views DESC limit 1"; # Godwin <-- if ( !($result = $db->sql_query($top_sql)) ) { message_die(GENERAL_ERROR, 'Could not query forum topic information', '', __LINE__, __FILE__, $top_sql); } while( $row = $db->sql_fetchrow($result) ) { $weblog_late_topics_stat[] = $row; } //Popular Article ends } $total_topics = count($weblog_late_topics_stat); //get the Popular Article for ($j=0; $j < $total_topics; $j++) { $top_id = $weblog_late_topics_stat[$j]['topic_id']; echo $topic_id; # Query modified - To hide hidden post in all places except users myblog page - "and t.topic_auth <> 3 added" - Godwin --> $topic_sql="select t.forum_id, t.topic_id, t.topic_views, t.topic_title, u.username from " . TOPICS_TABLE . " t, " . USERS_TABLE . " u where t.topic_id = $top_id and t.topic_poster = u.user_id and t.topic_auth <> 3"; # Godwin <-- if ( !($result = $db->sql_query($topic_sql)) ) { message_die(GENERAL_ERROR, 'Could not query forum topic information', '', __LINE__, __FILE__, $sql_qry); } while( $row = $db->sql_fetchrow($result) ) { $weblog_latest_topics_stat[$j] = $row; } } // # Query modified - To hide hidden post in all places except users myblog page - "and t.topic_auth <> 3 # and u.weblog_visible <> 0 added" - Godwin --> $sql_lst_qry= "select t.topic_id, t.topic_title, t.topic_time, u.username from " . TOPICS_TABLE . " t, " . USERS_TABLE . " u where t.topic_poster=u.user_id and t.forum_id = u.user_weblog and t.topic_auth <> 3 and u.weblog_visible <> 0 order by topic_time desc limit 15"; # Godwin <-- if ( !($result = $db->sql_query($sql_lst_qry)) ) { message_die(GENERAL_ERROR, 'Could not query forum latest topic information', '', __LINE__, __FILE__, $sql_lst_qry); } while( $row = $db->sql_fetchrow($result) ) { $weblog_newest_topics_stat[] = $row; } $total_newest_topics = count($weblog_newest_topics_stat); // // Find which forums are visible for this user // $is_auth_ary = array(); $is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata, $weblog_data_stat); $weblog_owner_data_stat = array(); $topic_data_stat = array(); for ($i = 0; $i < $total_forums_stat; $i++) { $weblog_id = $weblog_data_stat[$i]['forum_id']; // Get Weblog Owner Data $sql = "SELECT u.user_id, u.username, u.weblog_start_date FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g, " . USERS_TABLE . " u WHERE aa.forum_id = $weblog_id AND 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 ORDER BY u.user_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) ) { $weblog_owner_data_stat[$i] = $row; } $sql = "SELECT f.forum_id, t.topic_time, t.topic_id FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f WHERE t.forum_id = $weblog_id AND f.forum_id = t.forum_id ORDER BY f.forum_id"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql); } while( $row = $db->sql_fetchrow($result) ) { $topic_data_stat[$i] = $row; } } $stat_mostpopular = array(); $stat_entries = array(); $stat_lastupdated = array(); $stat_newest = array(); $stat_mostpopular_name = array(); $stat_entries_name = array(); $stat_lastupdated_name = array(); $stat_newest_name = array(); $stat_mostpopular_owner = array(); $stat_mostpopular_views = array(); $stat_entries_owner = array(); $stat_lastupdated_owner = array(); $stat_newest_owner = array(); // Weblog IDs for linking $stat_mostpopular_id = array(); $stat_entries_id = array(); $stat_lastupdated_id = array(); $stat_newest_id = array(); //Added to display Newest topics for ($i = 0; $i < $total_newest_topics; $i++) { $topic_id = $weblog_newest_topics_stat[$i]['topic_id']; $stat_lastupdated[$i] = $weblog_newest_topics_stat[$i]['topic_time']; $stat_lastupdated_name[$i] = $weblog_newest_topics_stat[$i]['topic_title']; $stat_lastupdated_owner[$i] = $weblog_newest_topics_stat[$i]['username']; $stat_lastupdated_id[$i] = $weblog_newest_topics_stat[$i]['topic_id']; } // Bleh Bubble Sort (Order of n squared!). Too tired to think :-P /* Bubble sort commented as it is already captured in the query - Rajkumar for ($i = 0; $i < $total_newest_topics; $i++) { for ( $j = 0; $j < $total_newest_topics; $j++ ) { // Most Popular if ($stat_lastupdated[$i] > $stat_lastupdated[$j]) { $temp = $stat_lastupdated[$j]; $stat_lastupdated[$j] = $stat_lastupdated[$i]; $stat_lastupdated[$i] = $temp; $temp = $stat_lastupdated_name[$j]; $stat_lastupdated_name[$j] = $stat_lastupdated_name[$i]; $stat_lastupdated_name[$i] = $temp; $temp = $stat_lastupdated_views[$j]; $stat_lastupdated_views[$j] = $stat_lastupdated_views[$i]; $stat_lastupdated_views[$i] = $temp; $temp = $stat_lastupdated_owner[$j]; $stat_lastupdated_owner[$j] = $stat_lastupdated_owner[$i]; $stat_lastupdated_owner[$i] = $temp; $temp = $stat_lastupdated_id[$j]; $stat_lastupdated_id[$j] = $stat_lastupdated_id[$i]; $stat_lastupdated_id[$i] = $temp; } } } */ //Added to display most popular topics for ($i = 0; $i < $total_topics; $i++) { $forum_id = $weblog_latest_topics_stat[$i]['forum_id']; $stat_mostpopular[$i] = $weblog_latest_topics_stat[$i]['topic_views']; $stat_mostpopular_name[$i] = $weblog_latest_topics_stat[$i]['topic_title']; $stat_mostpopular_owner[$i] = $weblog_latest_topics_stat[$i]['username']; $stat_mostpopular_id[$i] = $weblog_latest_topics_stat[$i]['topic_id']; $stat_mostpopular_views[$i] = $weblog_latest_topics_stat[$i]['topic_views']; } // Bleh Bubble Sort (Order of n squared!). Too tired to think :-P for ($i = 0; $i < $total_topics; $i++) { for ( $j = 0; $j < $total_topics; $j++ ) { // Most Popular if ($stat_mostpopular[$i] > $stat_mostpopular[$j]) { $temp = $stat_mostpopular[$j]; $stat_mostpopular[$j] = $stat_mostpopular[$i]; $stat_mostpopular[$i] = $temp; $temp = $stat_mostpopular_name[$j]; $stat_mostpopular_name[$j] = $stat_mostpopular_name[$i]; $stat_mostpopular_name[$i] = $temp; $temp = $stat_mostpopular_views[$j]; $stat_mostpopular_views[$j] = $stat_mostpopular_views[$i]; $stat_mostpopular_views[$i] = $temp; $temp = $stat_mostpopular_owner[$j]; $stat_mostpopular_owner[$j] = $stat_mostpopular_owner[$i]; $stat_mostpopular_owner[$i] = $temp; $temp = $stat_mostpopular_id[$j]; $stat_mostpopular_id[$j] = $stat_mostpopular_id[$i]; $stat_mostpopular_id[$i] = $temp; } } } for ($i = 0; $i < $total_forums_stat; $i++) { $weblog_id = $weblog_data_stat[$i]['forum_id']; $stat_entries[$i] = $weblog_data_stat[$i]['forum_topics']; $stat_entries_name[$i] = $weblog_data_stat[$i]['forum_name']; $stat_entries_owner[$i] = $weblog_owner_data_stat[$i]['username']; $stat_entries_id[$i] = $weblog_data_stat[$i]['forum_id']; $stat_newest[$i] = $weblog_data_stat[$i]['forum_views']; $stat_newest_name[$i] = $weblog_data_stat[$i]['forum_name']; $stat_newest_owner[$i] = $weblog_owner_data_stat[$i]['username']; $stat_newest_id[$i] = $weblog_data_stat[$i]['forum_id']; } // // Insertion Sort // // Most number of Entries $numSorted = 1; $index = 0; while ($numSorted < $total_forums_stat) { $temp1 = $stat_entries[$numSorted]; $temp2 = $stat_entries_name[$numSorted]; $temp3 = $stat_entries_owner[$numSorted]; $temp4 = $stat_entries_id[$numSorted]; for ( $index = $numSorted; $index > 0; $index-- ) { if ($temp1 > $stat_entries[$index-1]) { $stat_entries[$index] = $stat_entries[$index-1]; $stat_entries_name[$index] = $stat_entries_name[$index-1]; $stat_entries_owner[$index] = $stat_entries_owner[$index-1]; $stat_entries_id[$index] = $stat_entries_id[$index-1]; } else { break; } } $stat_entries[$index] = $temp1; $stat_entries_name[$index] = $temp2; $stat_entries_owner[$index] = $temp3; $stat_entries_id[$index] = $temp4; $numSorted++; } /* // Most Popular $numSorted = 1; $index = 0; while ($numSorted < $total_forums_stat) { $temp1 = $stat_mostpopular[$numSorted]; $temp2 = $stat_mostpopular_name[$numSorted]; $temp3 = $stat_mostpopular_owner[$numSorted]; $temp4 = $stat_mostpopular_id[$numSorted]; for ( $index = $numSorted; $index > 0; $index-- ) { if ($temp1 < $stat_mostpopular[$index-1]) { $stat_mostpopular[$index] = $stat_mostpopular[$index-1]; $stat_mostpopular_name[$index] = $stat_mostpopular_name[$index-1]; $stat_mostpopular_owner[$index] = $stat_mostpopular_owner[$index-1]; $stat_mostpopular_id[$index] = $stat_mostpopular_id[$index-1]; } else { break; } } $stat_mostpopular[$index] = $temp1; $stat_mostpopular_name[$index] = $temp2; $stat_mostpopular_owner[$index] = $temp3; $stat_mostpopular_id[$index] = $temp4; $numSorted++; } */ /* // Last Updated $numSorted = 1; $index = 0; while ($numSorted < $total_forums_stat) { $temp1 = $stat_lastupdated[$numSorted]; $temp2 = $stat_lastupdated_name[$numSorted]; $temp3 = $stat_lastupdated_owner[$numSorted]; $temp4 = $stat_lastupdated_id[$numSorted]; for ( $index = $numSorted; $index > 0; $index-- ) { if ($temp1 > $stat_lastupdated[$index-1]) { $stat_lastupdated[$index] = $stat_lastupdated[$index-1]; $stat_lastupdated_name[$index] = $stat_lastupdated_name[$index-1]; $stat_lastupdated_owner[$index] = $stat_lastupdated_owner[$index-1]; $stat_lastupdated_id[$index] = $stat_lastupdated_id[$index-1]; } else { break; } } $stat_lastupdated[$index] = $temp1; $stat_lastupdated_name[$index] = $temp2; $stat_lastupdated_owner[$index] = $temp3; $stat_lastupdated_id[$index] = $temp4; $numSorted++; } */ // Newest Weblog $numSorted = 1; $index = 0; while ($numSorted < $total_forums_stat) { $temp1 = $stat_newest[$numSorted]; $temp2 = $stat_newest_name[$numSorted]; $temp3 = $stat_newest_owner[$numSorted]; $temp4 = $stat_newest_id[$numSorted]; for ( $index = $numSorted; $index > 0; $index-- ) { if ($temp1 > $stat_newest[$index-1]) { $stat_newest[$index] = $stat_newest[$index-1]; $stat_newest_name[$index] = $stat_newest_name[$index-1]; $stat_newest_owner[$index] = $stat_newest_owner[$index-1]; $stat_newest_id[$index] = $stat_newest_id[$index-1]; } else { break; } } $stat_newest[$index] = $temp1; $stat_newest_name[$index] = $temp2; $stat_newest_owner[$index] = $temp3; $stat_newest_id[$index] = $temp4; $numSorted++; } // // Output all the statistics // for ($i = 0; $i < 15; $i++) { //$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2']; $row_class = ( !($i % 2) ) ? altrow1 : altrow2; if ( $stat_lastupdated[$i] ) { $template->assign_block_vars('stats.lastupdatedrow', array( 'NAME' => '' . $stat_lastupdated_name[$i] . '', 'OWNER' => $stat_lastupdated_owner[$i], 'DATE' => create_date($board_config['default_dateformat'], $stat_lastupdated[$i], $board_config['board_timezone']), 'CLASS' => $row_class) ); } else { $template->assign_block_vars('stats.lastupdatedrow', array( 'NAME' => ' ', 'OWNER' => ' ', 'DATE' => ' ', 'CLASS' => $row_class) ); } if ( $stat_newest[$i] ) { $template->assign_block_vars('stats.newestrow', array( 'NAME' => '' . $stat_newest_name[$i] . '', 'OWNER' => $stat_newest_owner[$i], //'DATE' => create_date($board_config['default_dateformat'], $stat_newest[$i], $board_config['board_timezone']), 'VIEWS' => $stat_newest[$i], 'CLASS' => $row_class) ); } else { $template->assign_block_vars('stats.newestrow', array( 'NAME' => ' ', 'OWNER' => ' ', 'DATE' => ' ', 'CLASS' => $row_class) ); } if ( $stat_entries[$i] ) { $template->assign_block_vars('stats.mostentriesrow', array( 'NAME' => '' . $stat_entries_name[$i] . '', 'OWNER' => $stat_entries_owner[$i], 'ENTRIES' => $stat_entries[$i], 'CLASS' => $row_class) ); } else { $template->assign_block_vars('stats.mostentriesrow', array( 'NAME' => ' ', 'OWNER' => ' ', 'ENTRIES' => ' ', 'CLASS' => $row_class) ); } if ( $stat_mostpopular[$i] ) { $template->assign_block_vars('stats.mostpopularrow', array( 'NAME' => '' . $stat_mostpopular_name[$i] . '', 'OWNER' => $stat_mostpopular_owner[$i], 'VISITS' => $stat_mostpopular_views[$i], 'CLASS' => $row_class) ); } else { $template->assign_block_vars('stats.mostpopularrow', array( 'NAME' => ' ', 'OWNER' => ' ', 'VISITS' => ' ', 'CLASS' => $row_class) ); } } } // // Weblog Listing Code // $num_weblogs = array(1, 2, 3, 4, 5, 10, 20, 30, 40, 50, 100); $select_num_weblogs = ''; $sort_method = array(1, 2, 3, 4); $sort_method_text = array($lang['Weblog_post_time'], $lang['Weblog_started'], $lang['Weblog_forum_name'], $lang['Weblog_username']); $select_sort = ''; $sort_order = array('desc', 'asc'); $sort_order_text = array($lang['Weblog_descending'], $lang['Weblog_ascending']); $select_asc_desc = ''; switch ( $order ) { case 'desc': $asc_desc = 'desc'; break; default: $asc_desc = ''; break; } switch ( $sort ) { case 1: $sort = 'p.post_time'; break; case 2: $sort = 'u.weblog_start_date'; break; case 3: $sort = 'f.forum_name'; break; case 4: $sort = 'u.username'; break; default: $sort = 'p.post_time'; break; } // // Find which forums are visible for this user // $is_auth_ary = array(); $is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata, $weblog_data); // // Get Weblog Data // $sql = "SELECT f.*, p.post_time, p.post_username, u.* FROM (( " . CATEGORIES_TABLE . " c INNER JOIN " . FORUMS_TABLE . " f ON f.cat_id = c.cat_id INNER JOIN " . USERS_TABLE . " u2 ON u2.user_weblog = f.forum_id 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 ) WHERE c.cat_allow_weblogs = 1 AND u.weblog_visible <> 0 ORDER BY " . $sort . " " . $order . " LIMIT " . $start . ", " . $count; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql); } while( $row = $db->sql_fetchrow($result) ) { $weblog_data[] = $row; } $total_forums = count($weblog_data); $template->assign_vars(array( 'PAGINATION' => generate_pagination("weblogs.$phpEx?count=$count&sort=$sort&order=$order", $total_forums_stat, $count, $start)) ); $weblog_owner_data = array(); $topic_data = array(); for ($i = 0; $i < $total_forums; $i++) { $weblog_id = $weblog_data[$i]['forum_id']; // // Get Weblog Owner Data // $sql = "SELECT u.user_avatar_type, u.user_allowavatar, u.user_avatar, u.user_id, u.username FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g, " . USERS_TABLE . " u WHERE aa.forum_id = $weblog_id AND 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 ORDER BY aa.forum_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) ) { $weblog_owner_data[$i] = $row; } $access_level = 0; if ( $userdata['session_logged_in'] ) { $access_level++; $group_id = intval($weblog_owner_data[$i]['weblog_group']); // // Get user information for this group // $sql = "SELECT ug.group_id, ug.user_id, ug.user_pending FROM " . USER_GROUP_TABLE . " ug WHERE ug.group_id = $group_id AND ug.user_id = " . $userdata['user_id'] . " ORDER BY ug.user_id"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Error getting user list for group', '', __LINE__, __FILE__, $sql); } $group_members = $db->sql_fetchrowset($result); if ( count($group_members) == 1 || $userdata['user_level'] == ADMIN ) $access_level++; if ( $weblog_owner_data[$i]['user_id'] == $userdata['user_id'] || $userdata['user_level'] == ADMIN ) $access_level++; } else { $lang['view_post_blog']=''; $new_posts_blog['total']=''; } // // Get Topic Data // $sql = "SELECT f.forum_id, t.forum_id, t.topic_time, t.topic_mood, t.topic_currently1, t.topic_currently2, t.topic_time, t.topic_id FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p WHERE t.forum_id = $weblog_id AND t.forum_id = f.forum_id AND t.topic_auth <= " . $access_level . " ORDER BY f.forum_id LIMIT 15"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql); } while( $row = $db->sql_fetchrow($result) ) { $topic_data[$i] = $row; } $avatar_img[$i] = ''; if ( $weblog_owner_data[$i]['user_avatar_type'] && $weblog_owner_data[$i]['user_allowavatar'] ) { switch( $weblog_owner_data[$i]['user_avatar_type'] ) { case USER_AVATAR_UPLOAD: $avatar_img[$i] = ( $board_config['allow_avatar_upload'] ) ? '' : ''; break; case USER_AVATAR_REMOTE: $avatar_img[$i] = ( $board_config['allow_avatar_remote'] ) ? '' : ''; break; case USER_AVATAR_GALLERY: $avatar_img[$i] = ( $board_config['allow_avatar_local'] ) ? '' : ''; break; } } } switch ( $sort ) { case 'f.cat_id, f.forum_id': $sort = 1; break; case 'f.forum_name': $sort = 2; break; case 'u.username': $sort = 3; break; default: $sort = 0; break; } if ( !$count ) $count = 15; if ( !$start ) $start = 0; $template->assign_vars(array( 'FORUM_IMG' => $images['forum'], 'FORUM_NEW_IMG' => $images['forum_new'], 'FORUM_LOCKED_IMG' => $images['forum_locked'], 'S_SELECT_PERPAGE' => $select_num_weblogs, 'S_SELECT_SORT' => $select_sort, 'S_SELECT_ASC_DESC' => $select_asc_desc, 'S_WEBLOG_SORT_ACTION' => append_sid("weblogs.$phpEx?count=$count&sort=$sort&order=$order&start=$start"), 'L_WEBLOG_STATS' => $lang['Weblog_stats'], 'L_WEBLOG_LAST_UPDATED' => $lang['Weblog_last_updated'], 'L_WEBLOG_DATE' => $lang['Weblog_date'], //'L_WEBLOG_NEWEST' => $lang['Weblog_newest'], 'L_WEBLOG_POPULAR_AUTHORS' => $lang['Weblog_popular_authors'], 'L_WEBLOG_MOST_ENTRIES' => $lang['Weblog_most_entries'], 'L_WEBLOG_MOST_POPULAR' => $lang['Weblog_most_popular'], 'L_WEBLOG_NAME' => $lang['Weblog_name'], 'L_WEBLOG_NUMBER' => $lang['Weblog_number'], 'L_WEBLOG_OWNER' => $lang['Weblog_owner2'], 'L_WEBLOG_VISITS' => $lang['Weblog_visits'], 'L_WEBLOG_VISITS' => $lang['Weblog_visits'], 'L_PERPAGE' => $lang['Weblog_per_page'], 'L_GO' => $lang['Weblog_go'], 'L_SORT' => $lang['Weblog_sort'], 'MOD_VERSION' => $mod_version, 'L_VIEW_POST_BLOG' => $lang['view_post_blog'], // Godwin 'ROOT_PATH' => $phpbb_root_path, // Godwin 'POST_BLOG' => $new_posts_blog['total'], // Godwin 'L_LASTPOST' => $lang['Last_Post'], 'L_WEBLOGS' => $lang['Weblogs'], 'L_WEBLOG' => $lang['Weblog'], 'L_LASTENTRY' => $lang['Weblog_last_entry'], 'L_LATESTMOOD' => $lang['Weblog_latest_mood'], 'L_LASTSEEN' => $lang['Weblog_last_seen'], 'L_VIEW' => $lang['View']) ); // // Start output of page // define('IN_WEBLOGS', true); //added by isaac for blog_header $page_title = $lang['Weblog_Index']; include($phpbb_root_path . 'includes/page_header.'.$phpEx); $template->set_filenames(array( 'body' => 'weblog_index_body.tpl') ); // // Okay, let's build the index // 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 ( $weblog_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 ) { $template->assign_block_vars('catrow', array( 'CAT_ID' => $cat_id, 'CAT_DESC' => $category_rows[$i]['cat_title'], ) ); for($j = 0; $j < $total_forums; $j++) { if ( $weblog_data[$j]['cat_id'] == $cat_id ) { $weblog_id = $weblog_data[$j]['forum_id']; if ( $weblog_data[$j]['forum_status'] == FORUM_LOCKED ) { $folder_image = $images['forum_locked']; $folder_alt = $lang['Weblog_locked']; } else { $unread_topics = false; if ( $userdata['session_logged_in'] ) { if ( !empty($new_topic_data[$weblog_id]) ) { $forum_last_post_time = 0; while( list($check_topic_id, $check_post_time) = @each($new_topic_data[$weblog_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[$weblog_id]) ) { if ( $tracking_forums[$weblog_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']; } $mood = $topic_data[$j]['topic_mood'] - 1; if ( $mood_data[$mood]['mood'] != '(none)' && $mood_data[$mood]['mood'] != '' && $mood > 0 ) { $icon = ' . $mood_data[$mood][ ' . $mood_data[$mood]['mood']; } else { $icon = '(none)'; } $currently1 = $topic_data[$j]['topic_currently1'] - 1; if ( $currently_data[$currently1]['currently'] != '(none)' && $currently_data[$currently1]['currently'] != '' && $currently1 > 0 ) { $last_seen = ' ' . $currently_data[$currently1]['currently'] . ' ' . $topic_data[$j]['topic_currently2']; } else { $last_seen = $currently_data[$currently1]['currently']; } $newest_post_img = ''; if( $userdata['session_logged_in'] ) { if( $topic_data[$j]['post_time'] > $userdata['user_lastvisit'] ) { if( !empty($tracking_topics) || !empty($tracking_forums) || isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) ) { $unread_topics = true; $entry_id[$i] = $topic_data[$i]['topic_id']; if( !empty($tracking_topics[$entry_id[$j]]) ) { if( $tracking_topics[$entry_id[$j]] >= $topic_data[$j]['post_time'] ) { $unread_topics = false; } } if( !empty($tracking_forums[$weblog_id]) ) { if( $tracking_forums[$weblog_id] >= $topic_data[$j]['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'] >= $post_time[$j] ) { $unread_topics = false; } } if( $unread_topics ) { $newest_post_img = '' . $lang['View_newest_post'] . ' '; } } else { $newest_post_img = '' . $lang['View_newest_post'] . ' '; } } } $posts = $weblog_data[$j]['forum_posts']; $topics = $weblog_data[$j]['forum_topics']; if ( $weblog_data[$j]['forum_last_post_id'] ) { $last_post_time = create_date($board_config['default_dateformat'], $weblog_data[$j]['post_time'], $board_config['board_timezone']); // // MOD - TODAY AT - BEGIN // if ( $board_config['time_today'] < $weblog_data[$j]['post_time']) { $last_post = sprintf($lang['Today_at'], create_date($board_config['default_timeformat'], $weblog_data[$j]['post_time'], $board_config['board_timezone'])) . ''; } else if ( $board_config['time_yesterday'] < $weblog_data[$j]['post_time']) { $last_post = sprintf($lang['Yesterday_at'], create_date($board_config['default_timeformat'], $weblog_data[$j]['post_time'], $board_config['board_timezone'])) . ''; } else { $last_post = $last_post_time; } // MOD - TODAY AT - END $last_post .= $newest_post_img; } else { $last_post = $lang['No_Posts']; } if ( $weblog_data[$j]['forum_last_post_id'] ) { $last_entry_time = create_date($board_config['default_dateformat'], $topic_data[$j]['topic_time'], $board_config['board_timezone']); // // MOD - TODAY AT - BEGIN // if ( $board_config['time_today'] < $topic_data[$j]['topic_time']) { $last_entry = sprintf($lang['Today_at'], create_date($board_config['default_timeformat'], $topic_data[$j]['topic_time'], $board_config['board_timezone'])) . ''; } else if ( $board_config['time_yesterday'] < $topic_data[$j]['topic_time']) { $last_entry = sprintf($lang['Yesterday_at'], create_date($board_config['default_timeformat'], $topic_data[$j]['topic_time'], $board_config['board_timezone'])) . ''; } else { $last_entry = $last_entry_time; } // MOD - TODAY AT - END } else { $last_entry = $lang['Weblog_no_entries']; } if ( file_exists("weblogs/face_" . $weblog_owner_data[$j]['user_id'] . ".cfg") ) $file1 = file("weblogs/face_" . $weblog_owner_data[$j]['user_id'] . ".cfg"); $weblog_face = ''; for ($k=0;$kassign_block_vars('catrow.forumrow', array( 'WEBLOG_FACE' => $weblog_face) ); } } } } // for ... categories }// if ... total_categories else { message_die(GENERAL_MESSAGE, $lang['No_weblogs']); } // // Generate the page // $template->pparse('body'); include($phpbb_root_path . 'includes/page_tail.'.$phpEx); ?>