public static function GetTopicData($TopicID) { $Statement = Forums::$DBConnection->prepare('SELECT fc.*, f.forum_name, f.forum_type, ft.topic FROM forum_comments fc, forums f, forum_topics ft WHERE ft.forum_id = fc.forum_id AND fc.forum_id = f.forum_id AND topic_id = :topicid'); $Statement->bindParam(':topicid', $TopicID); $Statement->execute(); $Result = $Statement->fetchAll(PDO::FETCH_ASSOC); $ArrayIndex = 0; foreach ($Result as $Topic) { $Result[$ArrayIndex]['forum_type_name'] = Forums::GetForumTypeTranslated($Topic['forum_id']); $Result[$ArrayIndex]['forum_name'] = Forums::$TM->GetConfigVars($Topic['forum_name']); $ArrayIndex++; } $ArrayIndex = 0; $TopicData = array('type' => array('id' => $Result[0]['forum_type'], 'name' => $Result[0]['forum_type_name']), 'category' => array('id' => $Result[0]['forum_id'], 'name' => $Result[0]['forum_name']), 'topic' => array('id' => $Result[0]['topic_id'], 'name' => $Result[0]['topic']), 'replies' => array()); foreach ($Result as $Reply) { $CharacterData = Characters::GetShortProfileInfo($Reply['posted_by']); $Result[$ArrayIndex]['class'] = $CharacterData['class']; $Result[$ArrayIndex]['race'] = $CharacterData['race']; $Result[$ArrayIndex]['class_name'] = $CharacterData['class_name']; $Result[$ArrayIndex]['race_name'] = $CharacterData['race_name']; $Result[$ArrayIndex]['gender'] = $CharacterData['gender']; $Result[$ArrayIndex]['level'] = $CharacterData['level']; $Result[$ArrayIndex]['apoints'] = $CharacterData['apoints']; $Result[$ArrayIndex]['post_message'] = Forums::ParseBBCode($Reply['post_message']); $ArrayIndex++; } $TopicData['replies'] = String::MassUnset($Result, array('forum_type', 'forum_type_name', 'forum_id', 'forum_name', 'topic', 'topic_id')); return $TopicData; }