require_once FOOTERF; exit; } if ($_GET['f'] != 'last') { $thread->init(); } } e107::getScBatch('view', 'forum')->setScVar('thread', $thread); $pm_installed = e107::isInstalled('pm'); //Only increment thread views if not being viewed by thread starter if (USER && (USERID != $thread->threadInfo['thread_user'] || $thread->threadInfo['thread_total_replies'] > 0) || !$thread->noInc) { $forum->threadIncview($thread->threadInfo['thread_id']); } define('e_PAGETITLE', strip_tags($tp->toHTML($thread->threadInfo['thread_name'], true, 'no_hook, emotes_off')) . ' / ' . $tp->toHTML($thread->threadInfo['forum_name'], true, 'no_hook, emotes_off') . ' / ' . LAN_FORUM_1001); $forum->modArray = $forum->forumGetMods($thread->threadInfo['forum_moderators']); define('MODERATOR', USER && $forum->isModerator(USERID)); e107::getScBatch('view', 'forum')->setScVar('forum', $forum); //var_dump(e107::getScBatch('forum', 'forum')); if (MODERATOR && isset($_POST['mod'])) { require_once e_PLUGIN . "forum/forum_mod.php"; $thread->message = forum_thread_moderate($_POST); $thread->threadInfo = $forum->threadGet($thread->threadId); } $num = $thread->page ? $thread->page - 1 : 0; $postList = $forum->PostGet($thread->threadId, $num * $thread->perPage, $thread->perPage); // SEO - meta description (auto) if (count($postList)) { define("META_DESCRIPTION", $tp->text_truncate(str_replace(array('"', "'"), '', strip_tags($tp->toHTML($postList[0]['post_entry']))), 250, '...')); } $gen = new convert(); if ($thread->message) {
$rank = e107::getRank(); define('IMAGE_rank_main_admin_image', $pref['rank_main_admin_image'] && file_exists(THEME . "forum/" . $pref['rank_main_admin_image']) ? "<img src='" . THEME_ABS . "forum/" . $pref['rank_main_admin_image'] . "' alt='' />" : "<img src='" . e_PLUGIN_ABS . "forum/images/" . IMODE . "/main_admin.png' alt='' />"); define('IMAGE_rank_admin_image', $pref['rank_admin_image'] && file_exists(THEME . "forum/" . $pref['rank_admin_image']) ? "<img src='" . THEME_ABS . "forum/" . $pref['rank_admin_image'] . "' alt='' />" : "<img src='" . e_PLUGIN_ABS . "forum/images/" . IMODE . "/admin.png' alt='' />"); define('IMAGE_rank_moderator_image', $pref['rank_moderator_image'] && file_exists(THEME . "forum/" . $pref['rank_moderator_image']) ? "<img src='" . THEME_ABS . "forum/" . $pref['rank_moderator_image'] . "' alt='' />" : "<img src='" . e_PLUGIN_ABS . "forum/images/" . IMODE . "/moderator.png' alt='' />"); if ($subaction == 'forum' || $subaction == 'all') { require_once e_PLUGIN . 'forum/forum_class.php'; $forum = new e107forum(); $qry = "\r\n\t\tSELECT ue.*, u.* FROM `#user_extended` AS ue\r\n\t\tLEFT JOIN `#user` AS u ON u.user_id = ue.user_extended_id\r\n\t\tWHERE ue.user_plugin_forum_posts > 0\r\n\t\tORDER BY ue.user_plugin_forum_posts DESC LIMIT {$from}, {$view}\r\n\t\t"; // $top_forum_posters = $sql->db_Select("user", "*", "`user_forums` > 0 ORDER BY user_forums DESC LIMIT ".$from.", ".$view.""); $text = "\r\n\t\t\t<div>\r\n\t\t\t<table style='width:95%' class='table table-striped fborder'>\r\n\t\t\t<tr>\r\n\t\t\t<th style='width:10%; text-align:center' class='forumheader3'> </th>\r\n\t\t\t<th style='width:50%' class='forumheader3'>" . TOP_LAN_1 . "</th>\r\n\t\t\t<th style='width:10%; text-align:center' class='forumheader3'>" . TOP_LAN_2 . "</th>\r\n\t\t\t<th style='width:30%; text-align:center' class='forumheader3'>" . TOP_LAN_6 . "</th>\r\n\t\t\t</tr>\n"; $counter = 1 + $from; $sql2 = e107::getDb('sql2'); if ($sql2->gen($qry)) { while ($row = $sql2->db_Fetch(MYSQL_ASSOC)) { //$ldata = get_level($row['user_id'], $row['user_plugin_forum_posts'], $row['user_comments'], $row['user_chats'], $row['user_visits'], $row['user_join'], $row['user_admin'], $row['user_perms'], $pref); $ldata = $rank->getRanks($row, USER && $forum->isModerator(USERID)); if (vartrue($ldata['special'])) { $r = $ldata['special']; } else { $r = $ldata['pic'] ? $ldata['pic'] : defset($ldata['name'], $ldata['name']); } if (!$r) { $r = 'n/a'; } $text .= "<tr>\r\n\t\t\t\t\t<td style='width:10%; text-align:center' class='forumheader3'>{$counter}</td>\r\n\t\t\t\t\t<td style='width:50%' class='forumheader3'><a href='" . e107::getUrl()->create('user/profile/view', 'id=' . $row['user_id'] . '&name=' . $row['user_name']) . "'>{$row['user_name']}</a></td>\r\n\t\t\t\t\t<td style='width:10%; text-align:center' class='forumheader3'>{$row['user_plugin_forum_posts']}</td>\r\n\t\t\t\t\t<td style='width:30%; text-align:center' class='forumheader3'>{$r}</td>\r\n\t\t\t\t\t</tr>"; $counter++; } } $text .= "</table>\n</div>"; if ($subaction == 'forum') { $ftotal = $sql->db_Count('user', '(*)', 'WHERE `user_forums` > 0');
function topPosters() { $pref = e107::pref('core'); $rank = e107::getRank(); $sql = e107::getDb(); $sql2 = e107::getDb('sql2'); $ns = e107::getRender(); $tp = e107::getParser(); define('IMAGE_rank_main_admin_image', $pref['rank_main_admin_image'] && file_exists(THEME . "forum/" . $pref['rank_main_admin_image']) ? "<img src='" . THEME_ABS . "forum/" . $pref['rank_main_admin_image'] . "' alt='' />" : "<img src='" . e_PLUGIN_ABS . "forum/images/" . IMODE . "/main_admin.png' alt='' />"); define('IMAGE_rank_admin_image', $pref['rank_admin_image'] && file_exists(THEME . "forum/" . $pref['rank_admin_image']) ? "<img src='" . THEME_ABS . "forum/" . $pref['rank_admin_image'] . "' alt='' />" : "<img src='" . e_PLUGIN_ABS . "forum/images/" . IMODE . "/admin.png' alt='' />"); define('IMAGE_rank_moderator_image', $pref['rank_moderator_image'] && file_exists(THEME . "forum/" . $pref['rank_moderator_image']) ? "<img src='" . THEME_ABS . "forum/" . $pref['rank_moderator_image'] . "' alt='' />" : "<img src='" . e_PLUGIN_ABS . "forum/images/" . IMODE . "/moderator.png' alt='' />"); if ($this->subaction == 'forum' || $this->subaction == 'all') { require_once e_PLUGIN . 'forum/forum_class.php'; $forum = new e107forum(); $qry = "\n\t\t\tSELECT ue.*, u.* FROM `#user_extended` AS ue\n\t\t\tLEFT JOIN `#user` AS u ON u.user_id = ue.user_extended_id\n\t\t\tWHERE ue.user_plugin_forum_posts > 0\n\t\t\tORDER BY ue.user_plugin_forum_posts DESC LIMIT {$this->from}, {$this->view}\n\t\t\t"; // $top_forum_posters = $sql->db_Select("user", "*", "`user_forums` > 0 ORDER BY user_forums DESC LIMIT ".$from.", ".$view.""); $text = "\n\t\t\t<div>\n\t\t\t<table style='width:95%' class='table table-striped fborder'>\n\t\t\t<tr>\n\t\t\t<th style='width:10%; text-align:center' class='forumheader3'> </th>\n\t\t\t<th style='width:50%' class='forumheader3'>" . TOP_LAN_1 . "</th>\n\t\t\t<th style='width:10%; text-align:center' class='forumheader3'>" . TOP_LAN_2 . "</th>\n\t\t\t<th style='width:30%; text-align:center' class='forumheader3'>" . TOP_LAN_6 . "</th>\n\t\t\t</tr>\n"; $counter = 1 + $this->from; if ($sql2->gen($qry)) { while ($row = $sql2->fetch()) { //$ldata = get_level($row['user_id'], $row['user_plugin_forum_posts'], $row['user_comments'], $row['user_chats'], $row['user_visits'], $row['user_join'], $row['user_admin'], $row['user_perms'], $pref); $ldata = $rank->getRanks($row, USER && $forum->isModerator(USERID)); if (vartrue($ldata['special'])) { $r = $ldata['special']; } else { $r = $ldata['pic'] ? $ldata['pic'] : defset($ldata['name'], $ldata['name']); } if (!$r) { $r = 'n/a'; } $text .= "<tr>\n\t\t\t\t\t<td style='width:10%; text-align:center' class='forumheader3'>{$counter}</td>\n\t\t\t\t\t<td style='width:50%' class='forumheader3'><a href='" . e107::getUrl()->create('user/profile/view', 'id=' . $row['user_id'] . '&name=' . $row['user_name']) . "'>{$row['user_name']}</a></td>\n\t\t\t\t\t<td style='width:10%; text-align:center' class='forumheader3'>{$row['user_plugin_forum_posts']}</td>\n\t\t\t\t\t<td style='width:30%; text-align:center' class='forumheader3'>{$r}</td>\n\t\t\t\t\t</tr>"; $counter++; } } $text .= "</table>\n</div>"; if ($this->subaction == 'forum') { $ftotal = $sql->count('user', '(*)', 'WHERE `user_forums` > 0'); $parms = "{$ftotal},{$this->view},{$this->from}," . e_SELF . '?[FROM].top.forum.' . $this->view; $text .= "<div class='nextprev'>" . $tp->parseTemplate("{NEXTPREV={$parms}}") . '</div>'; } $ns->tablerender(TOP_LAN_0, $text); } }