From b538fd4e27c896e113c771a4f1cdfa1e4ffb87c7 Mon Sep 17 00:00:00 2001 From: Shish Date: Sat, 18 Aug 2012 20:43:55 +0100 Subject: [PATCH] make the forum not *completely* broken... --- ext/forum/main.php | 24 ++++++++++++------------ ext/forum/theme.php | 6 +----- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/ext/forum/main.php b/ext/forum/main.php index cee5d5c8..9cd774aa 100644 --- a/ext/forum/main.php +++ b/ext/forum/main.php @@ -273,15 +273,15 @@ class Forum extends Extension { $threadsPerPage = $config->get_int('forumThreadsPerPage', 15); $threads = $database->get_all( - "SELECT f.id, f.sticky, f.title, f.date, f.uptodate, u.name AS user_name, u.email AS user_email, u.admin AS user_admin, sum(1) - 1 AS response_count ". + "SELECT f.id, f.sticky, f.title, f.date, f.uptodate, u.name AS user_name, u.email AS user_email, u.class AS user_class, sum(1) - 1 AS response_count ". "FROM forum_threads AS f ". "INNER JOIN users AS u ". "ON f.user_id = u.id ". "INNER JOIN forum_posts AS p ". "ON p.thread_id = f.id ". - "GROUP BY f.id, f.sticky, f.title, f.date, u.name, u.email, u.admin ". - "ORDER BY f.sticky ASC, f.uptodate DESC LIMIT ?, ?" - , array($pageNumber * $threadsPerPage, $threadsPerPage) + "GROUP BY f.id, f.sticky, f.title, f.date, u.name, u.email, u.class ". + "ORDER BY f.sticky ASC, f.uptodate DESC LIMIT :limit OFFSET :offset" + , array("limit"=>$threadsPerPage, "offset"=>$pageNumber * $threadsPerPage) ); $totalPages = ceil($database->get_one("SELECT COUNT(*) FROM forum_threads") / $threadsPerPage); @@ -305,14 +305,14 @@ class Forum extends Extension { $postsPerPage = $config->get_int('forumPostsPerPage', 15); $posts = $database->get_all( - "SELECT p.id, p.date, p.message, u.name as user_name, u.email AS user_email, u.admin AS user_admin ". + "SELECT p.id, p.date, p.message, u.name as user_name, u.email AS user_email, u.class AS user_class ". "FROM forum_posts AS p ". "INNER JOIN users AS u ". "ON p.user_id = u.id ". - "WHERE thread_id = ? ". + "WHERE thread_id = :thread_id ". "ORDER BY p.date ASC ". - "LIMIT ?, ? " - , array($threadID, $pageNumber * $postsPerPage, $postsPerPage) + "LIMIT :limit OFFSET :offset" + , array("thread_id"=>$threadID, "offset"=>$pageNumber * $postsPerPage, "limit"=>$postsPerPage) ); $totalPages = ceil($database->get_one("SELECT COUNT(*) FROM forum_posts WHERE thread_id = ?", array($threadID)) / $postsPerPage); @@ -375,14 +375,14 @@ class Forum extends Extension { $postsPerPage = $config->get_int('forumPostsPerPage', 15); return $database->get_all( - "SELECT p.id, p.date, p.message, u.name as user_name, u.email AS user_email, u.admin AS user_admin ". + "SELECT p.id, p.date, p.message, u.name as user_name, u.email AS user_email, u.class AS user_class ". "FROM forum_posts AS p ". "INNER JOIN users AS u ". "ON p.user_id = u.id ". - "WHERE thread_id = ? ". + "WHERE thread_id = :thread_id ". "ORDER BY p.date ASC ". - "LIMIT ?, ? " - , array($threadID, ($pageNumber - 1) * $postsPerPage, $postsPerPage)); + "LIMIT :limit OFFSET :offset " + , array("thread_id"=>$threadID, "offset"=>($pageNumber - 1) * $postsPerPage, "limit"=>$postsPerPage)); } private function delete_thread($threadID) diff --git a/ext/forum/theme.php b/ext/forum/theme.php index 6fe0ea4c..1ff6de51 100644 --- a/ext/forum/theme.php +++ b/ext/forum/theme.php @@ -113,11 +113,7 @@ class ForumTheme extends Themelet { $poster = User::by_name($post["user_name"]); $gravatar = $poster->get_avatar_html(); - if ($post["user_admin"] == "Y") { - $rank = "admin"; - } else { - $rank = "user"; - } + $rank = "{$post["user_class"]}"; $postID = $post['id'];