= $y_day_from AND user_regdate < $t_day_from AND user_id <> " . ANONYMOUS; if ( !$result = $db->sql_query($sql) ) { message_die(GENERAL_ERROR, 'Could not get yesterday registered users', '', __LINE__, __FILE__, $sql); } while ( $row = $db->sql_fetchrow($result) ) { $yesterday_registered_users = $row['total_users']; } $db->sql_freeresult($result); $sql = "SELECT count(distinct user_id) as total_users FROM " . USERS_TABLE . " WHERE user_regdate >= $t_day_from AND user_id <> " . ANONYMOUS; if ( !$result = $db->sql_query($sql) ) { message_die(GENERAL_ERROR, 'Could not get yesterday registered users', '', __LINE__, __FILE__, $sql); } while ( $row = $db->sql_fetchrow($result) ) { $today_registered_users = $row['total_users']; } $db->sql_freeresult($result); // // 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'); $total_topics = get_db_stat('topiccount'); $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']; } // Read Portal Configuration from DB define('PORTAL_TABLE', $table_prefix.'portal'); $CFG = array(); $sql = "SELECT * FROM " . PORTAL_TABLE; if( !($result = $db->sql_query($sql)) ) { message_die(CRITICAL_ERROR, "Could not query config information", "", __LINE__, __FILE__, $sql); } while ( $row = $db->sql_fetchrow($result) ) { $CFG[$row['portal_name']] = $row['portal_value']; } // last seen hack $sql = "SELECT username, user_id, user_level, user_allow_viewonline, user_lastvisit FROM " . USERS_TABLE . " WHERE user_id > 0 AND username <> 'Anonymous' ORDER BY user_lastvisit DESC LIMIT " . $CFG['last_seen']; if (!$result = $db->sql_query($sql)) { message_die(GENERAL_ERROR, 'Could not query last seen information', '', __LINE__, __FILE__, $sql); } while ($row = $db->sql_fetchrow($result)) { $user_online_link = color_group_colorize_name($row['user_id']); if ( $row['user_allow_viewonline'] ) { $logged_visible_online++; } else { $logged_hidden_online++; } if ( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN ) { $template->assign_block_vars('last_seen_row', array( 'L_LSEEN_USERNAME' => $user_online_link, 'L_LSEEN_TIME' => create_date($board_config['default_dateformat'], $row['user_lastvisit'], $board_config['board_timezone']))); } } // // Recent Topics // $sql = "SELECT * FROM ". FORUMS_TABLE . " ORDER BY forum_id"; 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; } $is_auth_ary = array(); $is_auth_ary = auth(AUTH_ALL, AUTH_LIST_ALL, $userdata, $forum_data); if( $CFG['exceptional_forums'] == '' ) { $except_forum_id = '\'start\''; } else { $except_forum_id = $CFG['exceptional_forums']; } for ($i = 0; $i < count($forum_data); $i++) { if ((!$is_auth_ary[$forum_data[$i]['forum_id']]['auth_read']) or (!$is_auth_ary[$forum_data[$i]['forum_id']]['auth_view'])) { if ($except_forum_id == '\'start\'') { $except_forum_id = $forum_data[$i]['forum_id']; } else { $except_forum_id .= ',' . $forum_data[$i]['forum_id']; } } } $sql = "SELECT t.topic_id, t.topic_title, t.topic_last_post_id, t.forum_id, t.topic_icon, t.topic_type, p.post_id, p.poster_id, p.post_time, u.user_id, u.username FROM " . TOPICS_TABLE . " AS t, " . POSTS_TABLE . " AS p, " . USERS_TABLE . " AS u WHERE t.forum_id NOT IN (" . $except_forum_id . ") AND t.topic_status <> 2 AND p.post_id = t.topic_last_post_id AND p.poster_id = u.user_id ORDER BY p.post_id DESC LIMIT " . $CFG['number_recent_topics']; if (!$result = $db->sql_query($sql)) { message_die(GENERAL_ERROR, 'Could not query recent topics information', '', __LINE__, __FILE__, $sql); } $number_recent_topics = $db->sql_numrows($result); $recent_topic_row = array(); if ( $number_recent_topics != 0 ) { $template->assign_block_vars('switch_recent_topics_yes', array()); while ($row = $db->sql_fetchrow($result)) { $recent_topic_row[] = $row; } for ($i = 0; $i < $number_recent_topics; $i++) { $template->assign_block_vars('switch_recent_topics_yes.recent_topic_row', array( 'U_TITLE' => append_sid("viewtopic.$phpEx?" . POST_POST_URL . '=' . $recent_topic_row[$i]['post_id']) . '#' .$recent_topic_row[$i]['post_id'], 'L_TITLE' => $recent_topic_row[$i]['topic_title'], 'LAST_TITLE_ICON' => get_icon_title($recent_topic_row[$i]['topic_icon'], 0, $recent_topic_row[$i]['topic_type']), 'U_POSTER' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $recent_topic_row[$i]['user_id']), 'S_POSTER' => color_group_colorize_name($recent_topic_row[$i]['user_id'],true), 'S_POSTTIME' => create_date($board_config['default_dateformat'], $recent_topic_row[$i]['post_time'], $board_config['board_timezone']) ) ); } } else { $template->assign_block_vars('switch_recent_topics_no', array()); $template->assign_vars(array( 'L_NO_RECENT_TOPICS' => $lang['No_recent_topics']) ); } // // END - Recent Topics // // // Recent Files // $sql = "SELECT file_id, file_time, file_name, file_approved FROM ". PA_FILES_TABLE . " WHERE file_approved = 1 ORDER BY file_time DESC LIMIT " . $CFG['number_recent_files']; if (!$result = $db->sql_query($sql)) { message_die(GENERAL_ERROR, 'Could not query files information', '', __LINE__, __FILE__, $sql); } $files_data = array(); while( $row = $db->sql_fetchrow($result) ) { $files_data[] = $row; } $number_recent_files = $db->sql_numrows($result); $recent_files_row = array(); if ($number_recent_files != 0) { $template->assign_block_vars('switch_show_recentfiles', array()); while ($row = $db->sql_fetchrow($result)) { $recent_files_row[] = $row; } $db->sql_freeresult($result); for ($i = 0; $i < $number_recent_files; $i++) { $template->assign_block_vars('switch_show_recentfiles.recent_files_row', array( 'U_TITLE' => append_sid("dload.$phpEx?action=download&file_id=" .$files_data[$i]['file_id']), 'L_TITLE' => $files_data[$i]['file_name'] ) ); } } else { $template->assign_block_vars('switch_none_recentfiles', array()); $template->assign_vars(array( 'L_NO_RECENT_FILE' => $lang['No_recent_files']) ); } // // END - Recent Files // // Birthday Mod, Show users with birthday $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)) { usleep(2); $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 are having birthday within the next days $user_age = ( $this_year.$user_birthday < $date_today ) ? $this_year - realdate ('Y',$birthdayrow['user_birthday'])+1 : $this_year- realdate ('Y',$birthdayrow['user_birthday']); $style_color = color_group_colorize_name($birthdayrow['user_id'],true); $birthday_week_list .= ' ' . $style_color . ' ('.$user_age.'),'; } else if ( $user_birthday2 == $date_today ) { //user have birthday today $user_age = $this_year - realdate ( 'Y',$birthdayrow['user_birthday'] ); $style_color = color_group_colorize_name($birthdayrow['user_id'],true); $birthday_today_list .= ' ' . $style_color . ' ('.$user_age.'),'; } } 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); } // Start add - Last visit MOD $time_now=time(); $time1Hour=$time_now-3600; $minutes = date('is', $time_now); $hour_now = $time_now - (60*($minutes[0].$minutes[1])) - ($minutes[2].$minutes[3]); $dato=create_date('H', $time_now,$board_config['board_timezone']); $timetoday = $hour_now - (3600*$dato); $sql = 'SELECT session_ip, MAX(session_time) as session_time FROM '.SESSIONS_TABLE.' WHERE session_user_id="'.ANONYMOUS.'" AND session_time >= '.$timetoday.' AND session_time< '.($timetoday+86399).' GROUP BY session_ip'; if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve guest user today data", "", __LINE__, __FILE__, $sql); while( $guest_list = $db->sql_fetchrow($result)) { if ($guest_list['session_time'] >$time1Hour) $users_lasthour++; } $guests_today = $db->sql_numrows($result); $sql = 'SELECT user_id,username,user_allow_viewonline,user_level,user_lastlogon FROM ' . USERS_TABLE . ' WHERE user_id!="'.ANONYMOUS.'" AND user_session_time >= '.$timetoday.' AND user_session_time< '.($timetoday+86399).' ORDER BY username'; if (!$result = $db->sql_query($sql)) message_die(GENERAL_ERROR, "Couldn't retrieve user today data", "", __LINE__, __FILE__, $sql); while( $todayrow = $db->sql_fetchrow($result)) { $style_color = ""; if ($todayrow['user_lastlogon']>=$time1Hour) { $users_lasthour++; } switch ($todayrow['user_level']) { case ADMIN : $todayrow['username'] = '' . $todayrow['username'] . ''; $style_color = 'style="color:#' . $theme['fontcolor3'] . '"'; break; case MOD : $todayrow['username'] = '' . $todayrow['username'] . ''; $style_color = 'style="color:#' . $theme['fontcolor2'] . '"'; break; } $users_today_list.=( $todayrow['user_allow_viewonline'])?' ' . $todayrow['username'] . ',' : (($userdata[user_level]==ADMIN) ? ' ' . $todayrow['username'] . ',' : ''); if (!$todayrow['user_allow_viewonline']) $logged_hidden_today++; else $logged_visible_today++; } if ($users_today_list) { $users_today_list[ strlen( $users_today_list)-1] = ' '; } else { $users_today_list = $lang['None']; } $total_users_today = $db->sql_numrows($result)+$guests_today; $users_today_list = $lang['Registered_users'].' ' . $users_today_list; $l_today_user_s = ($total_users_today) ? ( ( $total_users_today == 1 )? $lang['User_today_total'] : $lang['Users_today_total'] ) : $lang['Users_today_zero_total']; $l_today_r_user_s = ($logged_visible_today) ? ( ( $logged_visible_today == 1 ) ? $lang['Reg_user_total'] : $lang['Reg_users_total'] ) : $lang['Reg_users_zero_total']; $l_today_h_user_s = ($logged_hidden_today) ? (($logged_hidden_today == 1) ? $lang['Hidden_user_total'] : $lang['Hidden_users_total'] ) : $lang['Hidden_users_zero_total']; $l_today_g_user_s = ($guests_today) ? (($guests_today == 1) ? $lang['Guest_user_total'] : $lang['Guest_users_total']) : $lang['Guest_users_zero_total']; $l_today_users = sprintf($l_today_user_s, $total_users_today); $l_today_users .= sprintf($l_today_r_user_s, $logged_visible_today); $l_today_users .= sprintf($l_today_h_user_s, $logged_hidden_today); $l_today_users .= sprintf($l_today_g_user_s, $guests_today); // End add - Last visit MOD // // Start output of page // define('SHOW_ONLINE', true); $page_title = $lang['Home']; include($phpbb_root_path . 'includes/page_header.'.$phpEx); $template->set_filenames(array( 'news' => 'portal_body.tpl') ); // // Avatar On Index MOD // $avatar_img = ''; if ( $userdata['user_avatar_type'] && $userdata['user_allowavatar'] ) { switch( $userdata['user_avatar_type'] ) { case USER_AVATAR_UPLOAD: $size = check_avatar_size($board_config['avatar_path'] . '/' . $userdata['user_avatar'], $CFG['pics_thumbsize']); $avatar_img = ( $board_config['allow_avatar_upload'] ) ? '' : ''; break; case USER_AVATAR_REMOTE: $size = check_avatar_size($userdata['user_avatar'], $CFG['pics_thumbsize']); $avatar_img = ( $board_config['allow_avatar_remote'] ) ? '' : ''; break; case USER_AVATAR_GALLERY: $size = check_avatar_size($board_config['avatar_gallery_path'] . '/' . $userdata['user_avatar'], $CFG['pics_thumbsize']); $avatar_img = ( $board_config['allow_avatar_local'] ) ? '' : ''; break; } } // Check For Anonymous User if ($userdata['user_id'] != '-1') { $name_link = color_group_colorize_name($userdata['user_id']); } else { $name_link = $lang['Guest']; } // // END: Avatar On Index MOD // // Start add - Photo Album Block // Build Categories Index $sql = "SELECT c.*, COUNT(p.pic_id) AS count FROM ". ALBUM_CAT_TABLE ." AS c LEFT JOIN ". ALBUM_TABLE ." AS p ON c.cat_id = p.pic_cat_id WHERE cat_id <> 0 GROUP BY cat_id ORDER BY cat_order ASC"; if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql); } $catrows = array(); while( $row = $db->sql_fetchrow($result) ) { $album_user_access = album_user_access($row['cat_id'], $row, 1, 0, 0, 0, 0, 0); // VIEW if ($album_user_access['view'] == 1) { $catrows[] = $row; } } if ( $CFG['pics_all'] == '1' ) { $allowed_cat = '0'; // For Recent Public Pics below } else { $allowed_cat = ''; } // // $catrows now stores all categories which this user can view. Dump them out! // for ($i = 0; $i < count($catrows); $i++) { // Build allowed category-list (for recent pics after here) $allowed_cat .= ($allowed_cat == '') ? $catrows[$i]['cat_id'] : ',' . $catrows[$i]['cat_id']; // Get Last Pic of this Category if ($catrows[$i]['count'] == 0) { // Category is empty $last_pic_info = $lang['No_Pics']; $u_last_pic = ''; $last_pic_title = ''; } else { // Check Pic Approval if ( ($catrows[$i]['cat_approval'] == ALBUM_ADMIN) or ($catrows[$i]['cat_approval'] == ALBUM_MOD) ) { $pic_approval_sql = 'AND p.pic_approval = 1'; // Pic Approval ON } else { $pic_approval_sql = ''; // Pic Approval OFF } } // END of Last Pic } // Recent Public Pics if ( $CFG['pics_all'] == '1' ) { $pics_allowed = '0'; } else { $pics_allowed = ''; } if ( $allowed_cat != $pics_allowed ) { $CategoryID = $CFG['cat_id']; if ( $CFG['pics_sort'] == '1' ) { if ( $CategoryID != 0 ) { $sql = "SELECT p.pic_id, p.pic_title, p.pic_thumbnail, p.pic_desc, p.pic_user_id, p.pic_user_ip, p.pic_username, p.pic_time, p.pic_cat_id, p.pic_view_count, u.user_id, u.username, r.rate_pic_id, AVG(r.rate_point) AS rating, COUNT(DISTINCT c.comment_id) AS comments FROM ". ALBUM_TABLE ." AS p LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id LEFT JOIN ". ALBUM_CAT_TABLE ." AS ct ON p.pic_cat_id = ct.cat_id LEFT JOIN ". ALBUM_RATE_TABLE ." AS r ON p.pic_id = r.rate_pic_id LEFT JOIN ". ALBUM_COMMENT_TABLE ." AS c ON p.pic_id = c.comment_pic_id WHERE p.pic_cat_id IN ($allowed_cat) AND ( p.pic_approval = 1 OR ct.cat_approval = 0 ) AND pic_cat_id = ($CategoryID) GROUP BY p.pic_id ORDER BY RAND() LIMIT ". $CFG['pics_number']; } else { $sql = "SELECT p.pic_id, p.pic_title, p.pic_thumbnail, p.pic_desc, p.pic_user_id, p.pic_user_ip, p.pic_username, p.pic_time, p.pic_cat_id, p.pic_view_count, u.user_id, u.username, r.rate_pic_id, AVG(r.rate_point) AS rating, COUNT(DISTINCT c.comment_id) AS comments FROM ". ALBUM_TABLE ." AS p LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id LEFT JOIN ". ALBUM_CAT_TABLE ." AS ct ON p.pic_cat_id = ct.cat_id LEFT JOIN ". ALBUM_RATE_TABLE ." AS r ON p.pic_id = r.rate_pic_id LEFT JOIN ". ALBUM_COMMENT_TABLE ." AS c ON p.pic_id = c.comment_pic_id WHERE p.pic_cat_id IN ($allowed_cat) AND ( p.pic_approval = 1 OR ct.cat_approval = 0 ) GROUP BY p.pic_id ORDER BY RAND() LIMIT ". $CFG['pics_number']; } } else if ( $CFG['pics_sort'] == '0' ) { if ( $CategoryID != 0 ) { $sql = "SELECT p.pic_id, p.pic_title, p.pic_thumbnail, p.pic_desc, p.pic_user_id, p.pic_user_ip, p.pic_username, p.pic_time, p.pic_cat_id, p.pic_view_count, u.user_id, u.username, r.rate_pic_id, AVG(r.rate_point) AS rating, COUNT(DISTINCT c.comment_id) AS comments FROM ". ALBUM_TABLE ." AS p LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id LEFT JOIN ". ALBUM_CAT_TABLE ." AS ct ON p.pic_cat_id = ct.cat_id LEFT JOIN ". ALBUM_RATE_TABLE ." AS r ON p.pic_id = r.rate_pic_id LEFT JOIN ". ALBUM_COMMENT_TABLE ." AS c ON p.pic_id = c.comment_pic_id WHERE p.pic_cat_id IN ($allowed_cat) AND ( p.pic_approval = 1 OR ct.cat_approval = 0 ) AND pic_cat_id = ($CategoryID) GROUP BY p.pic_id ORDER BY pic_time DESC LIMIT ". $CFG['pics_number']; } else { $sql = "SELECT p.pic_id, p.pic_title, p.pic_thumbnail, p.pic_desc, p.pic_user_id, p.pic_user_ip, p.pic_username, p.pic_time, p.pic_cat_id, p.pic_view_count, u.user_id, u.username, r.rate_pic_id, AVG(r.rate_point) AS rating, COUNT(DISTINCT c.comment_id) AS comments FROM ". ALBUM_TABLE ." AS p LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id LEFT JOIN ". ALBUM_CAT_TABLE ." AS ct ON p.pic_cat_id = ct.cat_id LEFT JOIN ". ALBUM_RATE_TABLE ." AS r ON p.pic_id = r.rate_pic_id LEFT JOIN ". ALBUM_COMMENT_TABLE ." AS c ON p.pic_id = c.comment_pic_id WHERE p.pic_cat_id IN ($allowed_cat) AND ( p.pic_approval = 1 OR ct.cat_approval = 0 ) GROUP BY p.pic_id ORDER BY pic_time DESC LIMIT ". $CFG['pics_number']; } } if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Could not query recent pics information', '', __LINE__, __FILE__, $sql); } $recentrow = array(); while( $row = $db->sql_fetchrow($result) ) { $recentrow[] = $row; } if (count($recentrow) > 0) { for ($i = 0; $i < count($recentrow); $i += $album_config['cols_per_page']) { $template->assign_block_vars('recent_pics', array()); for ($j = $i; $j < ($i + $album_config['cols_per_page']); $j++) { if ( $j >= count($recentrow) ) { break; } if (!$recentrow[$j]['rating']) { $recentrow[$j]['rating'] = $lang['Not_rated']; } else { $recentrow[$j]['rating'] = round($recentrow[$j]['rating'], 2); } $pic_size = @getimagesize(ALBUM_CACHE_PATH . $recentrow[$j]['pic_thumbnail']); $pic_width = $pic_size[0]; $pic_height = $pic_size[1]; if ($pic_width > $pic_height) { $width = $CFG['pics_thumbsize']; $height = $CFG['pics_thumbsize'] * ($pic_height/$pic_width); } else if ($pic_width < $pic_height) { $height = $CFG['pics_thumbsize']; $width = $CFG['pics_thumbsize'] * ($pic_width/$pic_height); } else { $width = '90%'; $height = '90%'; } // Display pics horizontally $template->assign_block_vars('recent_pics.recent_col', array( 'U_PIC' => ($album_config['fullpic_popup']) ? append_sid("album_pic.$phpEx?pic_id=". $recentrow[$j]['pic_id']) : append_sid("album_showpage.$phpEx?pic_id=". $recentrow[$j]['pic_id']), 'THUMBNAIL' => append_sid("album_thumbnail.$phpEx?pic_id=". $recentrow[$j]['pic_id']), 'WIDTH' => $width, 'HEIGHT' => $height, 'DESC' => $recentrow[$j]['pic_desc']) ); if( ($recentrow[$j]['user_id'] == ALBUM_GUEST) or ($recentrow[$j]['username'] == '') ) { $recent_poster = ($recentrow[$j]['pic_username'] == '') ? $lang['Guest'] : $recentrow[$j]['pic_username']; } else { $recent_poster = ''. $recentrow[$j]['username'] .''; } // Display pics vertically $template->assign_block_vars('recent_pics.recent_detail', array( 'U_PIC' => ($album_config['fullpic_popup']) ? append_sid("album_pic.$phpEx?pic_id=". $recentrow[$j]['pic_id']) : append_sid("album_showpage.$phpEx?pic_id=". $recentrow[$j]['pic_id']), 'THUMBNAIL' => append_sid("album_thumbnail.$phpEx?pic_id=". $recentrow[$j]['pic_id']), 'WIDTH' => $width, 'HEIGHT' => $height, 'DESC' => $recentrow[$j]['pic_desc'], 'TITLE' => $recentrow[$j]['pic_title'], 'POSTER' => $recent_poster, 'TIME' => create_date($board_config['default_dateformat'], $recentrow[$j]['pic_time'], $board_config['board_timezone']), 'VIEW' => $recentrow[$j]['pic_view_count'], 'RATING' => ($album_config['rate'] == 1) ? ( $lang['Rating'] . ': ' . $recentrow[$j]['rating'] . '
') : '', 'COMMENTS' => ($album_config['comment'] == 1) ? ( $lang['Comments'] . ': ' . $recentrow[$j]['comments'] . '
') : '') ); } } } else { // No Pics Found $template->assign_block_vars('no_pics', array()); } } else { // No Cats Found $template->assign_block_vars('no_pics', array()); } // End add - Photo Album Block $template->assign_vars(array( 'WELCOME_TEXT' => $CFG['welcome_text'], 'TOTAL_POSTS' => sprintf($l_total_post_s, $total_posts), 'TOTAL_USERS' => sprintf($l_total_user_s, $total_users), 'TOTAL_TOPICS' => sprintf($lang['total_topics'], $total_topics), 'NEWEST_USER' => sprintf($lang['Newest_user'], '', $newest_user, ''), 'L_FORUM' => $lang['Forum'], // Start add - Birthday MOD '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'] : '', // End add - Birthday MOD 'L_BOARD_NAVIGATION' => $lang['Board_navigation'], 'L_STATISTICS' => $lang['Statistics'], 'L_ANNOUNCEMENT' => $lang['Post_Announcement'], 'L_POSTED' => $lang['Posted'], //Live statitik 'TODAY_USERS' => $today_registered_users, 'YESTERDAY_USERS' => $yesterday_registered_users, 'USERS_TODAY_LIST' => $users_today_list, 'GUESTS_ONLINE' => $guests_online, 'REGGED_ONLINE' => $logged_visible_online, 'L_LAST_VISIT' => $lang['Last_Visit'], 'L_ONLINE_EXPLAIN' => $lang['Online_explain'], 'L_USERS_LASTHOUR' =>($users_lasthour)?sprintf($lang['Users_lasthour_explain'],$users_lasthour):$lang['Users_lasthour_none_explain'], 'L_LIVE_STATS' => $lang['Live_Statistics'], 'L_MEMBERS' => $lang['Top_Member'], 'L_NEW_TODAY' => $lang['New_Today'], 'L_NEW_YESTERDAY' => $lang['New_Yesterday'], 'L_MEMBERS_OVERALL' => $lang['Members_Overall'], 'L_ONLINE_NOW' => $lang['Online_Now'], 'L_GUESTS' => $lang['Guests_P'], 'L_MEMBERS' => $lang['Members_P'], 'L_STATS' => $lang['Box_Stats'], 'L_ONLINE_MEMBERS' => $lang['Online_Members_P'] , // END Live stats 'L_COMMENTS' => $lang['Comments'], 'L_VIEW_COMMENTS' => $lang['View_comments'], 'L_POST_COMMENT' => $lang['Post_your_comment'], 'L_SEND_PASSWORD' => $lang['Forgotten_password'], 'U_SEND_PASSWORD' => append_sid("profile.$phpEx?mode=sendpassword"), 'L_REGISTER_NEW_ACCOUNT' => sprintf($lang['Register_new_account'], '', ''), 'L_REMEMBER_ME' => $lang['Remember_me'], 'L_VIEW_COMPLETE_LIST' => $lang['View_complete_list'], 'L_POLL' => $lang['Poll'], 'L_VOTE_BUTTON' => $lang['Vote'], 'L_RECENT_FILES' => $lang['Recent_files'], // Recent Topics 'L_RECENT_TOPICS' => $lang['Recent_topics'], // Start add - Fully integrated shoutbox MOD 'U_SHOUTBOX' => append_sid("shoutbox.$phpEx"), 'L_SHOUTBOX' => $lang['Shoutbox'], 'U_SHOUTBOX_MAX' => append_sid("shoutbox_max.$phpEx"), 'U_FORUM' => append_sid("index.$phpEx"), 'U_LINKS' => append_sid("links.$phpEx"), 'U_CONTACT' => append_sid("kontakt.$phpEx"), // Start add - Last visit MOD 'USERS_TODAY_LIST' => $users_today_list, 'L_USERS_LASTHOUR' =>($users_lasthour)?sprintf($lang['Users_lasthour_explain'],$users_lasthour):$lang['Users_lasthour_none_explain'], 'L_USERS_TODAY' =>$l_today_users, // End add - Last visit MOD // End add - Fully integrated shoutbox MOD 'S_COLS' => $plus_config['cols_per_page'], 'S_COL_WIDTH' => (100/$plus_config['cols_per_page']) . '%', // Photo Album 'L_NEWEST_PIC' => $lang['Newest_pic'], 'PIC_IMAGE' => append_sid('album_thumbnail.'. $phpEx . '?pic_id=' . $picrow['pic_id']), 'PIC_TITLE' => $picrow['pic_title'], 'PIC_POSTER' => $picrow['pic_username'], 'U_PIC_LINK' => append_sid('album_showpage.' . $phpEx . '?pic_id=' . $picrow['pic_id']), 'PIC_TIME' => create_date($board_config['default_dateformat'], $picrow['pic_time'], $board_config['board_timezone']), // Start add - Photo Album Block 'S_COLS1' => $album_config['cols_per_page'], 'S_COL_WIDTH1' => (100/$album_config['cols_per_page']) . '%', 'TARGET_BLANK' => ($album_config['fullpic_popup']) ? 'target="_blank"' : '', 'L_NEWEST_PICS' => $lang['Newest_pics'], 'L_NO_PICS' => $lang['No_Pics'], 'L_PIC_TITLE' => $lang['Pic_Title'], 'L_VIEW' => $lang['View'], 'L_POSTER' => $lang['Poster'], 'L_POSTED' => $lang['Posted'], // End add - Photo Album Block // Portal News Additions 'L_WORD_ON' => $lang['L_Word_on'], 'L_WORD_BY' => $lang['L_Word_by'], 'MINIPOST_IMG' => $images['icon_minipost'], 'NEWS_PRINT_IMG' => $images['news_print'], 'NEWS_EMAIL_IMG' => $images['news_email'], 'NEWS_REPLY_IMG' => $images['news_reply'], 'L_REPLY_NEWS' => $lang['News_Reply'], 'L_PRINT_NEWS' => $lang['News_Print'], 'L_EMAIL_NEWS' => $lang['News_Email'], 'L_NEWS_CATEGORIES' => $lang['News_Categories'], 'L_NEWS_ARCHIEVES' => $lang['News_Archieves'], 'L_NEWS_SUMMARY' => $lang['News_Summary'], 'L_NEWS_VIEWS' => $lang['News_Views'], 'L_NEWS_AND' => $lang['News_And'], 'L_NEWS_COMMENTS' => $lang['News_Comments'], 'L_NEWS_CATS' => $lang['News_Cats'], 'L_NO_NEWS_CATS' => $lang['No_News_Cats'], 'L_ABOUT_US' => $lang['About_us'], 'L_NAVIGATE' => $lang['Portal_Navigate'], 'L_TOOLS' => $lang['Portal_Tools'], 'L_LINKS' => $lang['Site_links'], 'L_CONTACT' => $lang['Site_Contact'], 'L_TOP_POSTERS' => $lang['Top_Posters'], 'L_TOP_MEMBER' => $lang['Top_Member'], 'L_TOP_POSTS' => $lang['Top_Posts'], 'L_QUICK_SEARCH' => $lang['Quick_Search'], 'L_ADV_SEARCH' => $lang['Advanced_Search'], 'L_SHOUTBOX' => $lang['Shoutbox'], 'L_SEARCH_NEW_P' => $lang['Search_new_p'], // Welcome Avatar 'L_NAME_WELCOME' => $lang['Welcome'], 'U_NAME_LINK' => $name_link, 'L_LAST_SEEN' => $lang['Last_Seen'], 'AVATAR_IMG' => $avatar_img) ); // // Start Top 5 Posters hack $sql = "SELECT post_id FROM " . POSTS_TABLE . " ORDER BY post_id DESC LIMIT 1"; $result = $db->sql_query($sql); $row = $db->sql_fetchrow($result); $total_post_perc = $row['post_id']; $perc_mult = 3; $perc_mult_set = 0; $rank = 0; $sql = "SELECT user_id, username, user_posts FROM " . USERS_TABLE ." WHERE user_id <> -1 ORDER BY user_posts DESC LIMIT 5"; $result = $db->sql_query($sql); while( $row = $db->sql_fetchrow($result)) { $rank++; if (!($rank % 2)) $class = 'row2'; else $class= 'row1'; $percentage = (get_db_stat('postcount') != 0) ? round(100 * $row['user_posts'] / get_db_stat('postcount'),0) : 0; $bar_perc = round($percentage * $perc_mult,0); $template->assign_block_vars("users", array( 'RANK' => $rank, 'CLASS' => $class, 'USERNAME' => color_group_colorize_name($row['user_id']), 'PERCENTAGE' => $percentage, 'URL' => $phpbb_root_path . "profile.php?mode=viewprofile&u=" . $row['user_id'], 'BAR' => $bar_perc, 'POSTS' => $row['user_posts']) ); } // End Top 5 Posters hack // //\\ //\\ Start - vgan's Portal Poll Mod V. 2.0 //\\ // Set the vote graphic length to 100 // Note: If the bars look too long at %100, (only 1 vote) set this value lower. // Likewise, if it looks too short to you, increase it here. $length = 70; // Get the poll forum from EZportal config above $poll_forum = $CFG['poll_forum']; { $template->assign_block_vars('PORTAL_POLL', array()); $sql = 'SELECT t.*, vd.* FROM ' . TOPICS_TABLE . ' AS t, ' . VOTE_DESC_TABLE . ' AS vd WHERE t.forum_id IN (' . $poll_forum . ') AND t.topic_status <> 1 AND t.topic_status <> 2 AND t.topic_vote = 1 AND t.topic_id = vd.topic_id ORDER BY t.topic_time DESC LIMIT 0,1'; if(!$result = $db->sql_query($sql)) { message_die(GENERAL_ERROR, "Couldn't obtain poll information.", "", __LINE__, __FILE__, $sql); } $total_polls = $db->sql_numrows($result); $pollrow = $db->sql_fetchrowset($result); $db->sql_freeresult($result); if ( $total_polls != 0 ) { $topic_id = $pollrow[0]['topic_id'] ; $sql = "SELECT vd.vote_id, vd.vote_text, vd.vote_start, vd.vote_length, vr.vote_option_id, vr.vote_option_text, vr.vote_result FROM " . VOTE_DESC_TABLE . " vd, " . VOTE_RESULTS_TABLE . " vr WHERE vd.topic_id = $topic_id AND vr.vote_id = vd.vote_id ORDER BY vr.vote_option_id ASC"; if( !$result = $db->sql_query($sql) ) { message_die(GENERAL_ERROR, "Couldn't obtain vote data for this topic", "", __LINE__, __FILE__, $sql); } if( $vote_options = $db->sql_numrows($result) ) { $vote_info = $db->sql_fetchrowset($result); $vote_id = $vote_info[0]['vote_id']; $vote_title = $vote_info[0]['vote_text']; $sql = "SELECT vote_id FROM " . VOTE_USERS_TABLE . " WHERE vote_id = $vote_id AND vote_user_id = " . $userdata['user_id']; if( !$result = $db->sql_query($sql) ) { message_die(GENERAL_ERROR, "Couldn't obtain user vote data for this topic", "", __LINE__, __FILE__, $sql); } $user_voted = ( $db->sql_numrows($result) ) ? TRUE : 0; if( isset($HTTP_GET_VARS['vote']) || isset($HTTP_POST_VARS['vote']) ) { $view_result = ( ( ( isset($HTTP_GET_VARS['vote']) ) ? $HTTP_GET_VARS['vote'] : $HTTP_POST_VARS['vote'] ) == "viewresult" ) ? TRUE : 0; } else { $view_result = 0; } $poll_expired = ( $vote_info[0]['vote_length'] ) ? ( ( $vote_info[0]['vote_start'] + $vote_info[0]['vote_length'] < time() ) ? TRUE : 0 ) : 0; if( $user_voted || $view_result || $poll_expired || $forum_row['topic_status'] == TOPIC_LOCKED ) { $template->set_filenames(array( "pollbox" => "portal_poll_result.tpl") ); $vote_results_sum = 0; for($i = 0; $i < $vote_options; $i++) { $vote_results_sum += $vote_info[$i]['vote_result']; } $vote_graphic = 0; $vote_graphic_max = count($images['voting_graphic']); for($i = 0; $i < $vote_options; $i++) { $vote_percent = ( $vote_results_sum > 0 ) ? $vote_info[$i]['vote_result'] / $vote_results_sum : 0; $portal_vote_graphic_length = round($vote_percent * $length); $vote_graphic_img = $images['voting_graphic'][$vote_graphic]; $vote_graphic = ($vote_graphic < $vote_graphic_max - 1) ? $vote_graphic + 1 : 0; if( count($orig_word) ) { $vote_info[$i]['vote_option_text'] = preg_replace($orig_word, $replacement_word, $vote_info[$i]['vote_option_text']); } $template->assign_block_vars("poll_option", array( "POLL_OPTION_CAPTION" => $vote_info[$i]['vote_option_text'], "POLL_OPTION_RESULT" => $vote_info[$i]['vote_result'], "POLL_OPTION_PERCENT" => sprintf("%.1d%%", ($vote_percent * 100)), "POLL_OPTION_IMG" => $vote_graphic_img, "POLL_OPTION_IMG_WIDTH" => $portal_vote_graphic_length/1) ); } $template->assign_vars(array( "L_TOTAL_VOTES" => $lang['Total_votes'], "TOTAL_VOTES" => $vote_results_sum, "L_VIEW_RESULTS" => $lang['View_results'], "U_VIEW_RESULTS" => append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id&postdays=$post_days&postorder=$post_order&vote=viewresult")) ); } else { $template->set_filenames(array( "pollbox" => "portal_poll_ballot.tpl") ); for($i = 0; $i < $vote_options; $i++) { if( count($orig_word) ) { $vote_info[$i]['vote_option_text'] = preg_replace($orig_word, $replacement_word, $vote_info[$i]['vote_option_text']); } $template->assign_block_vars("poll_option", array( "POLL_OPTION_ID" => $vote_info[$i]['vote_option_id'], "POLL_OPTION_CAPTION" => $vote_info[$i]['vote_option_text']) ); } $template->assign_vars(array( "LOGIN_TO_VOTE" => '' . $lang['Login_to_vote'] . '') ); $s_hidden_fields = ''; } if( count($orig_word) ) { $vote_title = preg_replace($orig_word, $replacement_word, $vote_title); } $template->assign_vars(array( "POLL_QUESTION" => ''.$vote_title.'', "L_SUBMIT_VOTE" => '', "S_HIDDEN_FIELDS" => ( !empty($s_hidden_fields) ) ? $s_hidden_fields : "", "S_POLL_ACTION" => append_sid("posting.$phpEx?" . POST_TOPIC_URL . "=$topic_id")) ); $template->assign_var_from_handle("PORTAL_POLL", "pollbox"); } } else { $template->set_filenames(array( "pollbox" => "portal_poll_ballot.tpl") ); $template->assign_vars(array( "POLL_QUESTION" => $lang['No_poll'], "L_SUBMIT_VOTE" => '', "S_HIDDEN_FIELDS" => "", "S_POLL_ACTION" => '', "LOGIN_TO_VOTE" => '') ); $template->assign_var_from_handle("PORTAL_POLL", "pollbox"); } } //\\ //\\ End - vgan's Portal Poll Mod V. 2.0 //\\ $template->assign_vars(array( "TELL_LINK" => append_sid("http://".$HTTP_SERVER_VARS['HTTP_HOST'].$HTTP_SERVER_VARS['PHP_SELF']."?t=$topic_id", true))); if ($plus_config['show_shoutbox'] == 1) { $template->assign_block_vars('switch_show_shoutbox', array()); } include($phpbb_root_path . 'mods/netclectic/mini_cal/mini_cal.'.$phpEx); $content =& new NewsModule( $phpbb_root_path ); $content->setVariables( array( 'L_INDEX' => $lang['Index'], 'L_CATEGORIES' => $lang['Categories'], 'L_ARCHIVES' => $lang['Archives'] ) ); if( (isset( $_GET['news'] ) && $_GET['news'] == 'categories')) { // View the news categories. $data_access = new NewsDataAccess( $phpbb_root_path ); $news_cats = $data_access->fetchCategories( ); $template->assign_block_vars('news_categories', array()); $cats = count($news_cats); if ($cats == 0) { $template->assign_block_vars('no_news', array()); } for ($i = 0; $i < count($news_cats); $i += $plus_config['cols_per_page']) { if ($cats >0) { $template->assign_block_vars('newsrow', array()); } for ($j = $i; $j < ($i + $plus_config['cols_per_page']); $j++) { if( $j >= count($news_cats) ) { break; } $template->assign_block_vars('newsrow.newscol', array( 'THUMBNAIL' => $this->root_path . 'templates/'.$theme['template_name'].'/images/news/' . $news_cats[$j]['news_image'], 'ID' => $news_cats[$j]['news_id'], 'DESC' => $news_cats[$j]['news_category'], ) ); $template->assign_block_vars('newsrow.news_detail', array( 'NEWSCAT' => $news_cats[$j]['news_category'], 'CATEGORY' => $newsrow[$j]['news_category'] ) ); } } } elseif( isset( $_GET['news'] ) && $_GET['news'] == 'archives' ) { // View the news Archives. $year = (isset( $_GET['year'] )) ? $_GET['year'] : 0; $month = (isset( $_GET['month'] )) ? $_GET['month'] : 0; $day = (isset( $_GET['day'] )) ? $_GET['day'] : 0; $key = (isset( $_GET['key'] )) ? $_GET['key'] : ''; $template->assign_block_vars('news_archives', array()); $content->setVariables( array( 'TITLE' => $lang['News'] . ' ' . $lang['Archives'] ) ); $content->renderArchives( $year, $month, $day, $key ); } else { // View news articles. $topic_id = 0; if( isset( $_GET['topic_id'] ) ) { $topic_id = $_GET['topic_id']; } elseif( isset( $_GET['news_id'] ) ) { $topic_id = $_GET['news_id']; } $template->assign_block_vars('welcome_text', array()); $content->setVariables( array( 'TITLE' => $lang['News'] . ' ' . $lang['Articles'] ) ); $content->renderArticles( $topic_id ); } $content->renderPagination( ); $content->display( ); $content->clear( ); // // Generate the page // include($phpbb_root_path . 'includes/page_tail.'.$phpEx); ?>