query('SELECT num_topics, num_posts, parent_forum_id, last_post_id, last_poster, last_post, id, forum_name FROM '.$db->prefix.'forums ORDER BY disp_position') or error(implode($db->error(),''),__FILE__,__LINE__,$db->error()); $forums_info = $db->query('SELECT f.num_topics, f.num_posts, f.parent_forum_id, f.last_post_id, f.last_poster, f.last_post, f.id, f.forum_name, p.poster_id as last_poster_id, t.subject FROM '.$db->prefix.'forums AS f LEFT JOIN '.$db->prefix.'posts AS p ON (p.id=f.last_post_id) LEFT JOIN '.$db->prefix.'topics AS t ON t.last_post_id=f.last_post_id ORDER BY disp_position') or error(implode($db->error(),''),__FILE__,__LINE__,$db->error()); while($current = $db->fetch_assoc($forums_info)) { if ($current['parent_forum_id'] != 0) { $sfdb[$sfcount][0] = $current['parent_forum_id']; $sfdb[$sfcount][1] = $current['num_topics']; $sfdb[$sfcount][2] = $current['num_posts']; $sfdb[$sfcount][3] = $current['last_post_id']; $sfdb[$sfcount][4] = $current['last_poster']; $sfdb[$sfcount][5] = $current['last_post']; $sfdb[$sfcount][6] = $current['id']; $sfdb[$sfcount][7] = $current['forum_name']; $sfdb[$sfcount][8] = $current['last_poster_id']; $sfdb[$sfcount][9] = $current['subject']; $sfcount++; } } ################################################################################ ########################### Sub Forum MOD ( end ) ############################## ################################################################################ // Print the categories and forums $result = $db->query('SELECT c.id AS cid, c.cat_name, f.id AS fid, f.forum_name, f.forum_desc, f.redirect_url, f.moderators, f.num_topics, f.num_posts, f.last_post, f.last_post_id, f.last_poster, f.parent_forum_id, p.poster_id as last_poster_id, t.subject FROM '.$db->prefix.'categories AS c INNER JOIN '.$db->prefix.'forums AS f ON c.id=f.cat_id LEFT JOIN '.$db->prefix.'topics AS t ON t.last_post_id=f.last_post_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') LEFT JOIN '.$db->prefix.'posts AS p ON (p.id=f.last_post_id) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND (f.parent_forum_id IS NULL OR f.parent_forum_id=0) ORDER BY c.disp_position, c.id, f.disp_position', true) or error('Unable to fetch category/forum list', __FILE__, __LINE__, $db->error()); $cur_category = 0; $cat_count = 0; while ($cur_forum = $db->fetch_assoc($result)) { $moderators = ''; if ($cur_forum['cid'] != $cur_category) // A new category since last iteration? { if ($cur_category != 0) echo "\t\t\t".''."\n\t\t\t".''."\n\t\t".''."\n\t".''."\n".''."\n\n"; ++$cat_count; ?>
$pun_user['last_visit']) { $item_status = 'inew'; $icon_text = $lang_common['New icon']; $icon_type = 'icon inew'; } // Is this a redirect forum? if ($cur_forum['redirect_url'] != '') { $forum_field = '

'.pun_htmlspecialchars($cur_forum['forum_name']).'

'; $num_topics = $num_posts = ' '; $item_status = 'iredirect'; $icon_text = $lang_common['Redirect icon']; $icon_type = 'icon'; } else { $forum_field = ''.pun_htmlspecialchars($cur_forum['forum_name']).'
'; ########################### Sub Forum MOD (start) ############################## ################################################################################ $n_t = 0; $n_p = 0; $l_pid = $cur_forum['last_post_id']; $l_pr = $cur_forum['last_poster']; $l_pr_id = $cur_forum['last_poster_id']; $l_pr_su = $cur_forum['subject']; $l_post = $cur_forum['last_post']; for ($i = 0; $i < $sfcount; $i++) { if ($sfdb[$i][0] == $cur_forum['fid']) { $n_t = $n_t + $sfdb[$i][1]; $n_p = $n_p + $sfdb[$i][2]; if ($l_pid < $sfdb[$i][3]) { $l_pid = $sfdb[$i][3]; $l_pr = $sfdb[$i][4]; $l_pr_id = $sfdb[$i][8]; $l_post = $sfdb[$i][5]; $l_pr_su = $sfdb[$i][9]; } } } $num_topics = $n_t + $cur_forum['num_topics']; $num_posts = $n_p + $cur_forum['num_posts']; ################################################################################ ########################### Sub Forum MOD ( end ) ############################## ################################################################################ } if ($cur_forum['forum_desc'] != '') $forum_field .= "\n\t\t\t\t\t\t\t\t".$cur_forum['forum_desc']; // Display the last topic $idm = $cur_forum['subject']; if(strlen($idm) > 30) { $idmComp = str_replace('"', "''", $idm); $idm = substr($idm, 0, 30).'...'; } else $idmComp = ''; // If there is a last_post/last_poster. if ($cur_forum['last_post'] != '') { $idmT = (isset($idmComp)) ? ' title="'.$idmComp.'"' : ''; $last_post = format_time($cur_forum['last_post']).'
'.$idm.'
'.$lang_common['by'].' '.pun_htmlspecialchars($cur_forum['last_poster']).''; } else $last_post = ' '; if ($cur_forum['moderators'] != '') { $mods_array = unserialize($cur_forum['moderators']); $moderators = array(); while (list($mod_username, $mod_id) = @each($mods_array)) $moderators[] = ''.pun_htmlspecialchars($mod_username).''; $moderators = "\t\t\t\t\t\t\t\t".'
['.$lang_common['Moderated by'].': '.implode(', ', $moderators).']'."\n"; } if (!empty($sfdb)) { foreach ($sfdb as $sub_forums) { if ($cur_forum['fid'] == $sub_forums[0] && !$pun_user['is_guest'] && $sub_forums[5] > $pun_user['last_visit']) { $item_status = 'inew'; $icon_text = $lang_common['New icon']; $icon_type = 'icon inew'; } } } ?> > 0) echo "\t\t\t".''."\n\t\t\t".'
'.pun_htmlspecialchars($sub_forums[7]).''; } } // EDIT THIS FOR THE DISPLAY STYLE OF THE SUBFORUMS ON MAIN PAGE if(!empty($sub_forums_list)) { // Leave one $sub_forums_list commented out to use the other (between the ###..) ################################ // This is Single Line Wrap Style $sub_forums_list = "\t\t\t\t\t\t\t\t".''.$lang_common['Sub Forums'].': '.implode(', ', $sub_forums_list)."\n"; // This is List Style //$sub_forums_list = "\n".'Sub Forums:
  --  '.implode('
  --  ', $sub_forums_list)."\n"; ################################ if ($cur_forum['forum_desc'] != NULL) { echo "
"; } // TO TURN OFF DISPLAY OF SUBFORUMS ON INDEX PAGE, COMMENT OUT THE FOLLOWING LINE echo "$sub_forums_list"; } } ?>
'."\n\t\t".'
'."\n\t".'
'."\n".'
'."\n\n"; else echo '

'.$lang_index['Empty board'].'

'; // Collect some statistics from the database $result = $db->query('SELECT COUNT(id)-1 FROM '.$db->prefix.'users') or error('Unable to fetch total user count', __FILE__, __LINE__, $db->error()); $stats['total_users'] = $db->result($result); $result = $db->query('SELECT id, username FROM '.$db->prefix.'users ORDER BY registered DESC LIMIT 1') or error('Unable to fetch newest registered user', __FILE__, __LINE__, $db->error()); $stats['last_user'] = $db->fetch_assoc($result); $result = $db->query('SELECT SUM(num_topics), SUM(num_posts) FROM '.$db->prefix.'forums') or error('Unable to fetch topic/post count', __FILE__, __LINE__, $db->error()); list($stats['total_topics'], $stats['total_posts']) = $db->fetch_row($result); ?>
Active Users
query('SELECT user_id, ident FROM '.$db->prefix.'online WHERE idle=0 ORDER BY ident', true) or error('Unable to fetch online list', __FILE__, __LINE__, $db->error()); while ($pun_user_online = $db->fetch_assoc($result)) { if ($pun_user_online['user_id'] > 1) $users[] = "\n\t\t\t\t".''.pun_htmlspecialchars($pun_user_online['ident']).''; else ++$num_guests; } $num_users = count($users); if ($num_users > 0) echo "\t\t\t".''."\n\t\t\t\t".''.$lang_index['Online'].':'."\t\t\t\t".implode(', ', $users).''."\n\t\t\t".''."\n"; else echo "\t\t\t".''."\n"; } else echo "\t\t".''."\n\t\t\t".''."\n"; ?>
'.$num_guests.''."\n\t\t\t".''."\n"; ?>
Welcome our newest member!