diff --git a/phpBB/common.php b/phpBB/common.php index 2c1c7c8599..62bc288885 100644 --- a/phpBB/common.php +++ b/phpBB/common.php @@ -31,7 +31,7 @@ unset($ip); include('template.inc'); // Setup what template to use. Currently just use default -$template = new Template("./templates/Default", "keep"); +$template = new Template("./templates/Default", "remove"); include('functions/error.'.$phpEx); include('functions/sessions.'.$phpEx); diff --git a/phpBB/config.php b/phpBB/config.php index 43dab2004c..9acdd8fac9 100644 --- a/phpBB/config.php +++ b/phpBB/config.php @@ -40,8 +40,8 @@ define(PUBLIC, 1); define(PRIVATE, 2); // Forum posting levels -define(ANONALLOWED, 1); -define(REGONLY, 2); +define(ANONALLOWED, 2); +define(REGONLY, 1); define(MODONLY, 3); // Topic state diff --git a/phpBB/language/lang_english.php b/phpBB/language/lang_english.php index 78d42b058d..d2166a5727 100755 --- a/phpBB/language/lang_english.php +++ b/phpBB/language/lang_english.php @@ -270,8 +270,10 @@ $l_htmlis = "$l_html is"; $l_bbcodeis = "$l_bbcode is"; $l_notify = "Notify by email when replies are posted"; - +// " // Newtopic +$l_postnew = "Post New Topic"; +$l_postnewin = "Post New Topic in:"; $l_emptymsg = "You must type a $l_message to post. You cannot post an empty $l_message."; $l_aboutpost = "About Posting"; $l_regusers = "All Registered users"; @@ -279,9 +281,9 @@ $l_anonusers = "Anonymous users"; $l_modusers = "Only Moderators and Administrators"; $l_anonhint = "
(To post anonymously simply do not enter a username and password)"; $l_inthisforum = "can post new topics and replies to this forum"; -$l_attachsig = "Show signature (This can be altered or added in your profile)"; +$l_attachsig = "Show signature (This can be altered or added in your profile)"; $l_cancelpost = "Cancel Post"; - +$l_preview = "Preview Post"; // Reply $l_nopostlock = "You cannot post a reply to this topic, it has been locked."; $l_topicreview = "Topic Review"; diff --git a/phpBB/page_header.php b/phpBB/page_header.php index e05aeca7d1..903ed4dd69 100644 --- a/phpBB/page_header.php +++ b/phpBB/page_header.php @@ -121,7 +121,14 @@ switch($pagetype) "TOPIC_TITLE" => $topic_title)); $template->pparse("output", "header"); break; - + case 'newtopic': + $template->set_file(array("header" => "newtopic_header.tpl", + "body" => "posting_body.tpl")); + $template->set_var(array("FORUM_ID" => $forum_id, + "FORUM_NAME" => $forum_name, + "L_POSTNEWIN" => $l_postnewin)); + $template->pparse("output", "header"); + break; } ?> diff --git a/phpBB/posting.php b/phpBB/posting.php index b4278d1182..485b08e0d0 100644 --- a/phpBB/posting.php +++ b/phpBB/posting.php @@ -1,6 +1,6 @@ "; + + break; + case 'reply': + + break; + case 'editpost': + + break; + } +} +else +{ + + switch($mode) + { + case 'newtopic': + if(!isset($forum_id)) + { + error_die($db, GENERAL_ERROR, "Sorry, no there is no such forum"); + } + + $pagetype = "newtopic"; + $page_title = " $l_postnew"; + $sql = "SELECT forum_name, forum_access FROM forums WHERE forum_id = '$forum_id'"; + if(!$result = $db->sql_query($sql)) + { + error_die($db, QUERY_ERROR); + } + $forum_info = $db->sql_fetchrowset($result); + $forum_name = stripslashes($forum_info[0]["forum_name"]); + $forum_access = $forum_info[0]["forum_access"]; + + if($forum_access == ANONALLOWED) + { + $about_posting = "$l_anonusers $l_inthisforum $l_anonhint"; + } + if($forum_access == REGONLY) + { + $about_posting = "$l_regusers $l_inthisforum"; + } + if($forum_access == MODONLY) + { + $about_posting = "$l_modusers $l_inthisforum"; + } + + include('page_header.'.$phpEx); + if($user_logged_in) + { + $username_input = $userdata["username"]; + $password_input = ""; + } + else + { + if(!isset($username)) + { + $username = $userdata["username"]; + } + $username_input = ''; + $password_input = ''; + $subject_input = ''; + $message_input = ''; + if($allow_html) + { + $html_status = $l_htmlis . " " . $l_on; + $html_toggle = 'set_var(array("L_ABOUTPOST" => $l_aboutpost, + "L_SUBJECT" => $l_subject, + "L_MESSAGEBODY" => $l_body, + "L_OPTIONS" => $l_options, + "L_PREVIEW" => $l_preview, + "L_SUBMIT" => $l_submit, + "L_CANCEL" => $l_cancelpost, + "MODE" => $mode, + "ABOUT_POSTING" => $about_posting, + "USERNAME_INPUT" => $username_input, + "PASSWORD_INPUT" => $password_input, + "SUBJECT_INPUT" => $subject_input, + "MESSAGE_INPUT" => $message_input, + "HTML_STATUS" => $html_status, + "HTML_TOGGLE" => $html_toggle, + "SMILE_TOGGLE" => $smile_toggle, + "SIG_TOGGLE" => $sig_toggle, + "NOTIFY_TOGGLE" => $notify_toggle, + "BBCODE_TOGGLE" => $bbcode_toggle, + "BBCODE_STATUS" => $bbcode_status)); + $template->pparse("output", "body"); + include('page_tail.'.$phpEx); + break; + case 'reply': + + break; + case 'editpost': + + break; + } +} ?> diff --git a/phpBB/templates/Default/newtopic_header.tpl b/phpBB/templates/Default/newtopic_header.tpl new file mode 100644 index 0000000000..3e3d70a706 --- /dev/null +++ b/phpBB/templates/Default/newtopic_header.tpl @@ -0,0 +1,18 @@ + + + + + + +
+ + + + +
+ {L_POSTNEWIN}
+ {FORUM_NAME} +
+
+ + diff --git a/phpBB/templates/Default/posting_body.tpl b/phpBB/templates/Default/posting_body.tpl new file mode 100644 index 0000000000..13cfc0acdd --- /dev/null +++ b/phpBB/templates/Default/posting_body.tpl @@ -0,0 +1,47 @@ + +
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
{L_ABOUTPOST}{ABOUT_POSTING}
{L_USERNAME}{USERNAME_INPUT}
{L_PASSWORD}{PASSWORD_INPUT}
{L_SUBJECT}{SUBJECT_INPUT}
{L_MESSAGEBODY}

+ {HTML_STATUS}
{BBCODE_STATUS}
{MESSAGE_INPUT}
{L_OPTIONS} + {HTML_TOGGLE}
{BBCODE_TOGGLE}
{SMILE_TOGGLE}
{SIG_TOGGLE}
{NOTIFY_TOGGLE}
+ + + +   +   +
+
+
+ diff --git a/phpBB/viewtopic.php b/phpBB/viewtopic.php index ebedb1b5c3..e93da664f5 100644 --- a/phpBB/viewtopic.php +++ b/phpBB/viewtopic.php @@ -1,48 +1,48 @@ sql_query($sql)) -{ +{ error_die($db, QUERY_ERROR); } // // Add checking for private forums here -// +// if(!$total_rows = $db->sql_numrows($result)) { @@ -50,6 +50,7 @@ if(!$total_rows = $db->sql_numrows($result)) } $forum_row = $db->sql_fetchrowset($result); +$forum_name = stripslashes($forum_row[0]["forum_name"]); for($x = 0; $x < $total_rows; $x++) { $moderators[] = array("user_id" => $forum_row[$x]["user_id"], @@ -64,19 +65,18 @@ if(!isset($start)) { $start = 0; } -$sql = "SELECT t.topic_title, t.topic_status, t.topic_replies, f.forum_name - FROM ".TOPICS_TABLE." t, ".FORUMS_TABLE." f - WHERE t.topic_id = '$topic_id' AND f.forum_id = t.forum_id"; +$sql = "SELECT topic_title, topic_status, topic_replies + FROM ".TOPICS_TABLE." + WHERE topic_id = '$topic_id'"; if(!$result = $db->sql_query($sql)) { - error_die($db, QUERY_ERROR); + error_die($db, QUERY_ERROR); } if(!$topic_info = $db->sql_fetchrowset($result)) { - error_die($db, GENERAL_ERROR, "Could not get topic data
$sql"); + error_die($db, GENERAL_ERROR, "Could not get topic data
$sql"); } -$forum_name = stripslashes($topic_info[0]["forum_name"]); $topic_title = stripslashes($topic_info[0]["topic_title"]); $total_replies = $topic_info[0]["topic_replies"] + 1; @@ -84,14 +84,15 @@ $pagetype = "viewtopic"; $page_title = "View Topic - $topic_title"; include('page_header.'.$phpEx); -$sql = "SELECT u.*, r.rank_title, r.rank_image, - p.post_time, p.post_id, pt.post_text - FROM ".POSTS_TABLE." p - LEFT JOIN ".USERS_TABLE." u ON p.poster_id = u.user_id - LEFT JOIN ".RANKS_TABLE." r ON (u.user_rank = r.rank_id) AND NOT (u.user_posts > r.rank_min AND u.user_posts < r.rank_max) - LEFT JOIN ".POSTS_TEXT_TABLE." pt ON p.post_id = pt.post_id - WHERE p.topic_id = '$topic_id' - ORDER BY p.post_time ASC LIMIT $start, $posts_per_page"; +$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_from, u.user_website, u.user_icq, u.user_aim, u.user_yim, + u.user_regdate, u.user_msnm, u.user_viewemail, r.rank_title, r.rank_image, + p.post_time, p.post_id, pt.post_text + FROM ".POSTS_TABLE." p + LEFT JOIN ".USERS_TABLE." u ON p.poster_id = u.user_id + LEFT JOIN ".RANKS_TABLE." r ON (u.user_rank = r.rank_id) AND NOT (u.user_posts > r.rank_min AND u.user_posts < r.rank_max) + LEFT JOIN ".POSTS_TEXT_TABLE." pt ON p.post_id = pt.post_id + WHERE p.topic_id = '$topic_id' + ORDER BY p.post_time ASC LIMIT $start, $posts_per_page"; if(!$result = $db->sql_query($sql)) { @@ -99,20 +100,20 @@ if(!$result = $db->sql_query($sql)) } if(!$total_posts = $db->sql_numrows($result)) { - error_die($db, GENERAL_ERROR, "Error getting post data."); + error_die($db, GENERAL_ERROR, "Error getting post data."); } $postrow = $db->sql_fetchrowset($result); $template->set_block("body", "postrow", "posts"); -for($x = 0; $x < $total_posts; $x++) +for($x = 0; $x < $total_posts; $x++) { $poster = stripslashes($postrow[$x]["username"]); $poster_id = $postrow[$x]["user_id"]; $poster_rank = stripslashes($postrow[$x]["rank_title"]); $rank_image = ($postrow[$x]["rank_image"]) ? "" : ""; $post_date = date($date_format, $postrow[$x]["post_time"]); - + $poster_posts = $postrow[$x]["user_posts"]; $poster_from = ($postrow[$x]["user_from"]) ? "$l_from: ".$postrow[$x]["user_from"] : ""; $poster_joined = $postrow[$x]["user_regdate"]; @@ -132,18 +133,18 @@ for($x = 0; $x < $total_posts; $x++) $icq_add_img = ""; } $aim_img = ($postrow[$x]["user_aim"]) ? "" : ""; - $msn_img = ($postrow[$x]["user_msn"]) ? "" : ""; + $msn_img = ($postrow[$x]["user_msnm"]) ? "" : ""; $yim_img = ($postrow[$x]["user_yim"]) ? "" : ""; - + $edit_img = "\"$l_editdelete\""; $quote_img = "\"$l_replyquote\""; $pmsg_img = "\"$l_sendpmsg\""; - if($is_moderator) + if($is_moderator) { $ip_img = "\"$l_viewip\""; $delpost_img = "\"$l_delete\""; } - + $message = stripslashes($postrow[$x]["post_text"]); if(!$allow_html) { @@ -153,7 +154,7 @@ for($x = 0; $x < $total_posts; $x++) { // do bbcode stuff here } - + if(!($x % 2)) { $color = "#DDDDDD"; @@ -162,7 +163,7 @@ for($x = 0; $x < $total_posts; $x++) { $color = "#CCCCCC"; } - + $message = eregi_replace("\[addsig]$", "
_________________
" . stripslashes($postrow[$x]["user_sig"]), $message); $template->set_var(array("TOPIC_TITLE" => $topic_title, @@ -193,44 +194,44 @@ for($x = 0; $x < $total_posts; $x++) $template->parse("posts", "postrow", true); } -if($total_replies > $posts_per_page) +if($total_replies > $posts_per_page) { $times = 0; for($x = 0; $x < $total_replies; $x += $posts_per_page) - { + { $times++; } $pages = $times . " pages"; - + $times = 1; $pagination = "$l_gotopage ("; - + $last_page = $start - $posts_per_page; - if($start > 0) + if($start > 0) { $pagination .= "$l_prevpage "; } - for($x = 0; $x < $total_replies; $x += $posts_per_page) + for($x = 0; $x < $total_replies; $x += $posts_per_page) { - if($times != 1) + if($times != 1) { $pagination .= " | "; } - if($start && ($start == $x)) + if($start && ($start == $x)) { $pagination .= $times; } - else if($start == 0 && $x == 0) + else if($start == 0 && $x == 0) { $pagination .= "1"; } - else + else { $pagination .= "$times"; } - $times++; - } - if(($start + $posts_per_page) < $total_replies) + $times++; + } + if(($start + $posts_per_page) < $total_replies) { $next_page = $start + $posts_per_page; $pagination .= " $l_nextpage"; @@ -245,9 +246,6 @@ $template->set_var(array("PAGES" => $pages, "PAGINATION" => $pagination)); $template->pparse("output", array("posts", "body")); -include('page_tail.'.$phpEx); - - - +include('page_tail.'.$phpEx); ?>