OSDN Git Service

Add Low View (Lo-Fi) version.
[idb/iDB.git.git] / inc / lowtopics.php
1 <?php
2 /*
3     This program is free software; you can redistribute it and/or modify
4     it under the terms of the Revised BSD License.
5
6     This program is distributed in the hope that it will be useful,
7     but WITHOUT ANY WARRANTY; without even the implied warranty of
8     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9     Revised BSD License for more details.
10
11     Copyright 2004-2008 Cool Dude 2k - http://idb.berlios.de/
12     Copyright 2004-2008 Game Maker 2k - http://intdb.sourceforge.net/
13
14     $FileInfo: lowtopics.php - Last Update: 5/01/2009 SVN 246 - Author: cooldude2k $
15 */
16 $File3Name = basename($_SERVER['SCRIPT_NAME']);
17 if ($File3Name=="lowtopics.php"||$File3Name=="/lowtopics.php") {
18         require('index.php');
19         exit(); }
20 $pstring = null; $pagenum = null;
21 if(!is_numeric($_GET['id'])) { $_GET['id'] = null; }
22 if(!is_numeric($_GET['page'])) { $_GET['page'] = null; }
23 $prequery = query("SELECT * FROM `".$Settings['sqltable']."forums` WHERE `id`=%i LIMIT 1", array($_GET['id']));
24 $preresult=mysql_query($prequery);
25 $prenum=mysql_num_rows($preresult);
26 if($prenum==0) { redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)); @mysql_free_result($preresult);
27 ob_clean(); @header("Content-Type: text/plain; charset=".$Settings['charset']);
28 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
29 if($prenum>=1) {
30 $ForumID=mysql_result($preresult,0,"id");
31 $ForumCatID=mysql_result($preresult,0,"CategoryID");
32 $ForumName=mysql_result($preresult,0,"Name");
33 $ForumType=mysql_result($preresult,0,"ForumType");
34 $RedirectURL=mysql_result($preresult,0,"RedirectURL");
35 $RedirectTimes=mysql_result($preresult,0,"Redirects");
36 $NumberViews=mysql_result($preresult,0,"NumViews");
37 $NumberPosts=mysql_result($preresult,0,"NumPosts");
38 $NumberTopics=mysql_result($preresult,0,"NumTopics");
39 $PostCountAdd=mysql_result($preresult,0,"PostCountAdd");
40 $CanHaveTopics=mysql_result($preresult,0,"CanHaveTopics");
41 $HotTopicPosts=mysql_result($preresult,0,"HotTopicPosts");
42 if($HotTopicPosts!=0&&is_numeric($HotTopicPosts)) {
43         $Settings['hot_topic_num'] = $HotTopicPosts; }
44 if(!is_numeric($Settings['hot_topic_num'])) {
45         $Settings['hot_topic_num'] = 15; }
46 $ForumPostCountView=mysql_result($preresult,0,"PostCountView");
47 $ForumKarmaCountView=mysql_result($preresult,0,"KarmaCountView");
48 @mysql_free_result($preresult);
49 $ForumType = strtolower($ForumType); $CanHaveTopics = strtolower($CanHaveTopics);
50 $catcheck = query("SELECT * FROM `".$Settings['sqltable']."categories` WHERE `id`=%i  LIMIT 1", array($ForumCatID));
51 $catresult=mysql_query($catcheck);
52 $CategoryName=mysql_result($catresult,0,"Name");
53 $CategoryType=mysql_result($catresult,0,"CategoryType");
54 $CategoryPostCountView=mysql_result($catresult,0,"PostCountView");
55 $CategoryKarmaCountView=mysql_result($catresult,0,"KarmaCountView");
56 @mysql_free_result($catresult);
57 if($GroupInfo['HasAdminCP']!="yes"||$GroupInfo['HasModCP']!="yes") {
58 if($MyPostCountChk==null) { $MyPostCountChk = 0; }
59 if($MyKarmaCount==null) { $MyKarmaCount = 0; }
60 if($ForumPostCountView!=0&&$MyPostCountChk<$ForumPostCountView) {
61 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)); }
62 if($CategoryPostCountView!=0&&$MyPostCountChk<$CategoryPostCountView) {
63 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)); }
64 if($ForumKarmaCountView!=0&&$MyKarmaCount<$ForumKarmaCountView) {
65 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)); }
66 if($CategoryKarmaCountView!=0&&$MyKarmaCount<$CategoryKarmaCountView) {
67 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)); } }
68 ?>
69 <div style="font-size: 1.0em; font-weight: bold; margin-bottom: 10px; padding-top: 3px; width: auto;">Full Version: <a href="<?php echo url_maker($exfile['forum'],$Settings['file_ext'],"act=view&id=".$ForumID."&page=".$_GET['page'],$Settings['qstr'],$Settings['qsep'],$prexqstr['forum'],$exqstr['forum']); ?>"><?php echo $Settings['board_name']; ?></a></div>
70 <div style="padding: 10px; border: 1px solid gray;"><?php echo $ThemeSet['NavLinkIcon']; ?><a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">Board index</a><?php echo $ThemeSet['NavLinkDivider']; ?><a href="<?php echo url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$ForumID."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType]); ?>"><?php echo $ForumName; ?></a></div>
71 <div>&nbsp;</div>
72 <?php
73 if(!isset($CatPermissionInfo['CanViewCategory'][$ForumCatID])) {
74         $CatPermissionInfo['CanViewCategory'][$ForumCatID] = "no"; }
75 if($CatPermissionInfo['CanViewCategory'][$ForumCatID]=="no"||
76         $CatPermissionInfo['CanViewCategory'][$ForumCatID]!="yes") {
77 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
78 ob_clean(); @header("Content-Type: text/plain; charset=".$Settings['charset']);
79 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
80 if(!isset($PermissionInfo['CanViewForum'][$ForumID])) {
81         $PermissionInfo['CanViewForum'][$ForumID] = "no"; }
82 if($PermissionInfo['CanViewForum'][$ForumID]=="no"||
83         $PermissionInfo['CanViewForum'][$ForumID]!="yes") {
84 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
85 ob_clean(); @header("Content-Type: text/plain; charset=".$Settings['charset']);
86 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
87 if($CatPermissionInfo['CanViewCategory'][$ForumCatID]=="yes"&&
88         $PermissionInfo['CanViewForum'][$ForumID]=="yes") {
89 if($ForumType!="redirect") {
90 if($NumberViews==0||$NumberViews==null) { $NewNumberViews = 1; }
91 if($NumberViews!=0&&$NumberViews!=null) { $NewNumberViews = $NumberViews + 1; }
92 $viewup = query("UPDATE `".$Settings['sqltable']."forums` SET `NumViews`=%i WHERE `id`=%i", array($NewNumberViews,$_GET['id']));
93 mysql_query($viewup); }
94 if($ForumType=="redirect") {
95 if($RedirectTimes==0||$RedirectTimes==null) { $NewRedirTime = 1; }
96 if($RedirectTimes!=0&&$RedirectTimes!=null) { $NewRedirTime = $RedirectTimes + 1; }
97 $redirup = query("UPDATE `".$Settings['sqltable']."forums` SET `Redirects`=%i WHERE `id`=%i", array($NewRedirTime,$_GET['id']));
98 mysql_query($redirup);
99 if($RedirectURL!="http://"&&$RedirectURL!="") {
100 redirect("location",$RedirectURL,0,null,false); ob_clean();
101 @header("Content-Type: text/plain; charset=".$Settings['charset']);
102 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
103 if($RedirectURL=="http://"||$RedirectURL=="") {
104 redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
105 ob_clean(); @header("Content-Type: text/plain; charset=".$Settings['charset']);
106 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); } }
107 if($ForumCheck!="skip") {
108 if($ForumType=="subforum") {
109 redirect("location",$basedir.url_maker($exfile['subforum'],$Settings['file_ext'],"act=".$_GET['act']."&id=".$_GET['id'],$Settings['qstr'],$Settings['qsep'],$prexqstr['subforum'],$exqstr['subforum'],FALSE));
110 ob_clean(); @header("Content-Type: text/plain; charset=".$Settings['charset']);
111 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); } }
112 if($_GET['act']=="lowview") {
113 if($NumberTopics==null) { 
114         $NumberTopics = 0; }
115 $num=$NumberTopics;
116 //Start Topic Page Code
117 if(!isset($Settings['max_topics'])) { $Settings['max_topics'] = 10; }
118 if($_GET['page']==null) { $_GET['page'] = 1; } 
119 if($_GET['page']<=0) { $_GET['page'] = 1; }
120 $nums = $_GET['page'] * $Settings['max_topics'];
121 if($nums>$num) { $nums = $num; }
122 $numz = $nums - $Settings['max_topics'];
123 if($numz<=0) { $numz = 0; }
124 //$i=$numz;
125 if($nums<$num) { $nextpage = $_GET['page'] + 1; }
126 if($nums>=$num) { $nextpage = $_GET['page']; }
127 if($numz>=$Settings['max_topics']) { $backpage = $_GET['page'] - 1; }
128 if($_GET['page']<=1) { $backpage = 1; }
129 $pnum = $num; $l = 1; $Pages = null;
130 while ($pnum>0) {
131 if($pnum>=$Settings['max_topics']) { 
132         $pnum = $pnum - $Settings['max_topics']; 
133         $Pages[$l] = $l; ++$l; }
134 if($pnum<$Settings['max_topics']&&$pnum>0) { 
135         $pnum = $pnum - $pnum; 
136         $Pages[$l] = $l; ++$l; } }
137 $snumber = $_GET['page'] - 1;
138 $PageLimit = $Settings['max_topics'] * $snumber;
139 if($PageLimit<0) { $PageLimit = 0; }
140 //End Topic Page Code
141 $i=0;
142 $query = query("SELECT * FROM `".$Settings['sqltable']."topics` WHERE `ForumID`=%i ORDER BY `Pinned` DESC, `LastUpdate` DESC LIMIT %i,%i", array($_GET['id'],$PageLimit,$Settings['max_topics']));
143 $result=mysql_query($query);
144 $num=mysql_num_rows($result);
145 //List Page Number Code Start
146 $pagenum=count($Pages);
147 if($_GET['page']>$pagenum) {
148         $_GET['page'] = $pagenum; }
149 $pagei=0; $pstring = null;
150 if($pagenum>1) {
151 $pstring = "<div class=\"PageList\"><span class=\"pagelink\">".$pagenum." Pages:</span> "; }
152 if($_GET['page']<4) { $Pagez[0] = null; }
153 if($_GET['page']>=4) { $Pagez[0] = "First"; }
154 if($_GET['page']>=3) {
155 $Pagez[1] = $_GET['page'] - 2; }
156 if($_GET['page']<3) {
157 $Pagez[1] = null; }
158 if($_GET['page']>=2) {
159 $Pagez[2] = $_GET['page'] - 1; }
160 if($_GET['page']<2) {
161 $Pagez[2] = null; }
162 $Pagez[3] = $_GET['page'];
163 if($_GET['page']<$pagenum) {
164 $Pagez[4] = $_GET['page'] + 1; }
165 if($_GET['page']>=$pagenum) {
166 $Pagez[4] = null; }
167 $pagenext = $_GET['page'] + 1;
168 if($pagenext<$pagenum) {
169 $Pagez[5] = $_GET['page'] + 2; }
170 if($pagenext>=$pagenum) {
171 $Pagez[5] = null; }
172 if($_GET['page']<$pagenum) { $Pagez[6] = "Last"; }
173 if($_GET['page']>=$pagenum) { $Pagez[6] = null; }
174 $pagenumi=count($Pagez);
175 if($NumberTopics==0) {
176 $pagenumi = 0;
177 $pstring = null; }
178 if($pagenum>1) {
179 while ($pagei < $pagenumi) {
180 if($_GET['page']!=1&&$pagei==1) {
181 $Pback = $_GET['page'] - 1;
182 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$_GET['id']."&page=".$Pback,$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType])."\">&lt;</a></span> "; }
183 if($Pagez[$pagei]!=null&&
184    $Pagez[$pagei]!="First"&&
185    $Pagez[$pagei]!="Last") {
186 if($pagei!=3) { 
187 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$_GET['id']."&page=".$Pagez[$pagei],$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType])."\">".$Pagez[$pagei]."</a></span> "; }
188 if($pagei==3) { 
189 $pstring = $pstring."<span class=\"pagecurrent\"><a href=\"".url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$_GET['id']."&page=".$Pagez[$pagei],$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType])."\">".$Pagez[$pagei]."</a></span> "; } }
190 if($Pagez[$pagei]=="First") {
191 $pstring = $pstring."<span class=\"pagelinklast\"><a href=\"".url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$_GET['id']."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType])."\">&laquo;</a></span> "; }
192 if($Pagez[$pagei]=="Last") {
193 $ptestnext = $pagenext + 1;
194 $paget = $pagei - 1;
195 $Pnext = $_GET['page'] + 1;
196 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$_GET['id']."&page=".$Pnext,$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType])."\">&gt;</a></span> ";
197 if($ptestnext<$pagenum) {
198 $pstring = $pstring."<span class=\"pagelinklast\"><a href=\"".url_maker($exfile[$ForumType],$Settings['file_ext'],"act=lowview&id=".$_GET['id']."&page=".$pagenum,$Settings['qstr'],$Settings['qsep'],$prexqstr[$ForumType],$exqstr[$ForumType])."\">&raquo;</a></span> "; } }
199         ++$pagei; } $pstring = $pstring."</div>"; }
200 ?>
201 <div style="padding: 10px; border: 1px solid gray;">
202 <?php echo $pstring; ?></div>
203 <div>&nbsp;</div>
204 <div style="padding: 10px; border: 1px solid gray;">
205 <?php if($num<=0) { ?>
206 <ul style="list-style-type: none;">
207 <li>There are now topics in this forum. :( </li>
208 <?php } if($num>0) { ?>
209 <ul style="list-style-type: decimal;">
210 <?php }
211 while ($i < $num) {
212 $TopicID=mysql_result($result,$i,"id");
213 $UsersID=mysql_result($result,$i,"UserID");
214 $GuestName=mysql_result($result,$i,"GuestName");
215 $TheTime=mysql_result($result,$i,"TimeStamp");
216 $TheTime=GMTimeChange("F j Y, g:i a",$TheTime,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
217 $NumReply=mysql_result($result,$i,"NumReply");
218 $NumberPosts=$NumReply + 1;
219 $prepagelist = null;
220 if(!isset($Settings['max_posts'])) { 
221         $Settings['max_posts'] = 10; }
222 if(!isset($ThemeSet['MiniPageAltStyle'])) { 
223         $ThemeSet['MiniPageAltStyle'] = "off"; }
224 if($ThemeSet['MiniPageAltStyle']!="on"||
225         $ThemeSet['MiniPageAltStyle']!="off") { 
226         $ThemeSet['MiniPageAltStyle'] = "off"; }
227 if($NumberPosts>$Settings['max_posts']) {
228 $NumberPages = ceil($NumberPosts/$Settings['max_posts']); }
229 if($NumberPosts<=$Settings['max_posts']) {
230 $NumberPages = 1; }
231 if($NumberPages>4) {
232         $prepagelist = " &nbsp;"; }
233 if($NumberPages>=2) {
234         if($ThemeSet['MiniPageAltStyle']=="off") { 
235         $prepagelist = "<span class=\"small\">(Pages: "; }
236         if($ThemeSet['MiniPageAltStyle']=="on") {
237         $prepagelist = $prepagelist."<span class=\"minipagelink\">"; }
238         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\">1</a>";
239         if($ThemeSet['MiniPageAltStyle']=="on") {
240         $prepagelist = $prepagelist."</span>"; }
241         if($ThemeSet['MiniPageAltStyle']=="off") { $prepagelist = $prepagelist." "; }
242         if($ThemeSet['MiniPageAltStyle']=="on") {
243         $prepagelist = $prepagelist."<span class=\"minipagelink\">"; }
244         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=2",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\">2</a>";
245         if($ThemeSet['MiniPageAltStyle']=="on") {
246         $prepagelist = $prepagelist."</span>"; }
247         if($NumberPages>=3) {
248         if($ThemeSet['MiniPageAltStyle']=="off") { $prepagelist = $prepagelist." "; }
249         if($ThemeSet['MiniPageAltStyle']=="on") {
250         $prepagelist = $prepagelist."<span class=\"minipagelink\">"; }
251         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=3",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\">3</a>";
252         if($ThemeSet['MiniPageAltStyle']=="on") {
253         $prepagelist = $prepagelist."</span>"; } }
254         if($NumberPages==4) {
255         if($ThemeSet['MiniPageAltStyle']=="off") { $prepagelist = $prepagelist." "; }
256         $prepagelist = $prepagelist."<span class=\"minipagelinklast\">";
257         if($ThemeSet['MiniPageAltStyle']=="on") {
258         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=4",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\">4</a>"; }
259         if($ThemeSet['MiniPageAltStyle']=="off") {
260         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=4",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\"> ...4</a>"; }
261         if($ThemeSet['MiniPageAltStyle']=="on") {
262         $prepagelist = $prepagelist."</span>"; } }
263         if($NumberPages>4) {
264         if($ThemeSet['MiniPageAltStyle']=="off") { $prepagelist = $prepagelist." "; }
265         if($ThemeSet['MiniPageAltStyle']=="on") {
266         $prepagelist = $prepagelist."<span class=\"minipagelinklast\">"; }
267         if($ThemeSet['MiniPageAltStyle']=="on") {
268         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=".$NumberPages,$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\">&raquo; ".$NumberPages."</a>"; }
269         if($ThemeSet['MiniPageAltStyle']=="off") {
270         $prepagelist = $prepagelist."<a href=\"".url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=".$NumberPages,$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'])."\"> ...".$NumberPages."</a>"; }
271         if($ThemeSet['MiniPageAltStyle']=="on") {
272         $prepagelist = $prepagelist."</span>"; } }
273         if($ThemeSet['MiniPageAltStyle']=="off") { 
274         $prepagelist = $prepagelist.")</span>"; } }
275 $TopicName=mysql_result($result,$i,"TopicName");
276 $TopicDescription=mysql_result($result,$i,"Description");
277 $PinnedTopic=mysql_result($result,$i,"Pinned");
278 $TopicStat=mysql_result($result,$i,"Closed");
279 $requery = query("SELECT * FROM `".$Settings['sqltable']."members` WHERE `id`=%i LIMIT 1", array($UsersID));
280 $reresult=mysql_query($requery);
281 $renum=mysql_num_rows($reresult);
282 $UserGroupID=mysql_result($reresult,0,"GroupID");
283 @mysql_free_result($reresult);
284 $gquery = query("SELECT * FROM `".$Settings['sqltable']."groups` WHERE `id`=%i LIMIT 1", array($UserGroupID));
285 $gresult=mysql_query($gquery);
286 $User1Group=mysql_result($gresult,0,"Name");
287 $GroupNamePrefix=mysql_result($gresult,0,"NamePrefix");
288 $GroupNameSuffix=mysql_result($gresult,0,"NameSuffix");
289 @mysql_free_result($gresult);
290 $UsersName = GetUserName($UsersID,$Settings['sqltable']);
291 if($UsersName=="Guest") { $UsersName=$GuestName;
292 if($UsersName==null) { $UsersName="Guest"; } }
293 if(isset($GroupNamePrefix)&&$GroupNamePrefix!=null) {
294         $UsersName = $GroupNamePrefix.$UsersName; }
295 if(isset($GroupNameSuffix)&&$GroupNameSuffix!=null) {
296         $UsersName = $UsersName.$GroupNameSuffix; }
297 $PreTopic = null;
298 if ($PinnedTopic>1) { $PinnedTopic = 1; } 
299 if ($PinnedTopic<0) { $PinnedTopic = 0; }
300 if(!is_numeric($PinnedTopic)) { $PinnedTopic = 0; }
301 if ($TopicStat>1) { $TopicStat = 1; } 
302 if ($TopicStat<0) { $TopicStat = 0; }
303 if(!is_numeric($TopicStat)) { $TopicStat = 1; }
304 if ($PinnedTopic==1) { $PreTopic="Pinned: "; }
305 if ($PinnedTopic==0) { $PreTopic=null; }
306 ?>
307 <li><a href="<?php echo url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$TopicID."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic']); ?>"><?php echo $PreTopic.$TopicName; ?></a>(<?php echo $NumReply; ?> replies)</li>
308 <?php ++$i; } ?>
309 </ul></div><div>&nbsp;</div>
310 <?php @mysql_free_result($result); }/*
311 if($_GET['act']=="maketopic"&&$_POST['act']=="maketopics") {
312 if($PermissionInfo['CanMakeTopics'][$ForumID]=="no"||$CanHaveTopics=="no") { redirect("location",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
313 ob_clean(); @header("Content-Type: text/plain; charset=".$Settings['charset']);
314 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
315 $MyUserID = $_SESSION['UserID']; if($MyUserID=="0"||$MyUserID==null) { $MyUserID = -1; }
316 $REFERERurl = parse_url($_SERVER['HTTP_REFERER']);
317 $URL['REFERER'] = $REFERERurl['host'];
318 $URL['HOST'] = $_SERVER["SERVER_NAME"];
319 $REFERERurl = null;
320 if(!isset($_POST['TopicName'])) { $_POST['TopicName'] = null; }
321 if(!isset($_POST['TopicDesc'])) { $_POST['TopicDesc'] = null; }
322 if(!isset($_POST['TopicPost'])) { $_POST['TopicPost'] = null; }
323 if(!isset($_POST['GuestName'])) { $_POST['GuestName'] = null; }
324 if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
325         $Settings['captcha_guest']=="on") {
326 require($SettDir['inc']."captcha.php"); }
327 ?>
328 <div class="Table1Border">
329 <?php if($ThemeSet['TableStyle']=="div") { ?>
330 <div class="TableRow1">
331 <span style="text-align: left;">
332 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['forum'],$Settings['file_ext'],"act=lowview&id=".$ForumID."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['forum'],$exqstr['forum']); ?>"><?php echo $ForumName; ?></a></span></div>
333 <?php } ?>
334 <table class="Table1">
335 <?php if($ThemeSet['TableStyle']=="table") { ?>
336 <tr class="TableRow1">
337 <td class="TableColumn1"><span style="text-align: left;">
338 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['forum'],$Settings['file_ext'],"act=lowview&id=".$ForumID."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['forum'],$exqstr['forum']); ?>"><?php echo $ForumName; ?></a></span>
339 </td>
340 </tr><?php } ?>
341 <tr class="TableRow2">
342 <th class="TableColumn2" style="width: 100%; text-align: left;">&nbsp;Make Topic Message: </th>
343 </tr>
344 <tr class="TableRow3">
345 <td class="TableColumn3">
346 <table style="width: 100%; height: 25%; text-align: center;">
347 <?php if (pre_strlen($_POST['TopicName'])>="30") { $Error="Yes";  ?>
348 <tr>
349         <td><span class="TableMessage">
350         <br />Your Topic Name is too big.<br />
351         </span>&nbsp;</td>
352 </tr>
353 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
354         $Settings['captcha_guest']=="on") {
355 if (PhpCaptcha::Validate($_POST['signcode'])) {
356 //echo 'Valid code entered';
357 } else { $Error="Yes"; ?>
358 <tr>
359         <td><span class="TableMessage">
360         <br />Invalid code entered<br />
361         </span>&nbsp;</td>
362 </tr>
363 <?php } } if (pre_strlen($_POST['TopicDesc'])>="45") { $Error="Yes";  ?>
364 <tr>
365         <td><span class="TableMessage">
366         <br />Your Topic Description is too big.<br />
367         </span>&nbsp;</td>
368 </tr>
369 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
370         pre_strlen($_POST['GuestName'])>="25") { $Error="Yes"; ?>
371 <tr>
372         <td><span class="TableMessage">
373         <br />You Guest Name is too big.<br />
374         </span>&nbsp;</td>
375 </tr>
376 <?php } if ($Settings['TestReferer']=="on") {
377         if ($URL['HOST']!=$URL['REFERER']) { $Error="Yes";  ?>
378 <tr>
379         <td><span class="TableMessage">
380         <br />Sorry the referering url dose not match our host name.<br />
381         </span>&nbsp;</td>
382 </tr>
383 <?php } }
384 $_POST['TopicName'] = stripcslashes(htmlspecialchars($_POST['TopicName'], ENT_QUOTES, $Settings['charset']));
385 //$_POST['TopicName'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['TopicName']);
386 $_POST['TopicName'] = @remove_spaces($_POST['TopicName']);
387 $_POST['TopicDesc'] = stripcslashes(htmlspecialchars($_POST['TopicDesc'], ENT_QUOTES, $Settings['charset']));
388 //$_POST['TopicDesc'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['TopicDesc']);
389 $_POST['TopicDesc'] = @remove_spaces($_POST['TopicDesc']);
390 $_POST['GuestName'] = stripcslashes(htmlspecialchars($_POST['GuestName'], ENT_QUOTES, $Settings['charset']));
391 //$_POST['GuestName'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['GuestName']);
392 $_POST['GuestName'] = @remove_spaces($_POST['GuestName']);
393 $_POST['TopicPost'] = stripcslashes(htmlspecialchars($_POST['TopicPost'], ENT_QUOTES, $Settings['charset']));
394 //$_POST['TopicPost'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['TopicPost']);
395 $_POST['TopicPost'] = remove_bad_entities($_POST['TopicPost']);
396 //$_POST['TopicPost'] = @remove_spaces($_POST['TopicPost']);
397 if($_SESSION['UserGroup']==$Settings['GuestGroup']) {
398 if(isset($_POST['GuestName'])&&$_POST['GuestName']!=null) {
399 @setcookie("GuestName", $_POST['GuestName'], time() + (7 * 86400), $cbasedir);
400 $_SESSION['GuestName']=$_POST['GuestName']; } }*/
401 /*    <_<  iWordFilter  >_>      
402    by Kazuki Przyborowski - Cool Dude 2k *//*
403 $katarzynaqy=query("SELECT * FROM `".$Settings['sqltable']."wordfilter`", array(null));
404 $katarzynart=mysql_query($katarzynaqy);
405 $katarzynanm=mysql_num_rows($katarzynart);
406 $katarzynas=0;
407 while ($katarzynas < $katarzynanm) {
408 $Filter=mysql_result($katarzynart,$katarzynas,"Filter");
409 $Replace=mysql_result($katarzynart,$katarzynas,"Replace");
410 $CaseInsensitive=mysql_result($katarzynart,$katarzynas,"CaseInsensitive");
411 if($CaseInsensitive=="on") { $CaseInsensitive = "yes"; }
412 if($CaseInsensitive=="off") { $CaseInsensitive = "no"; }
413 if($CaseInsensitive!="yes"||$CaseInsensitive!="no") { $CaseInsensitive = "no"; }
414 $WholeWord=mysql_result($katarzynart,$katarzynas,"WholeWord");
415 if($WholeWord=="on") { $WholeWord = "yes"; }
416 if($WholeWord=="off") { $WholeWord = "no"; }
417 if($WholeWord!="yes"&&$WholeWord!="no") { $WholeWord = "no"; }
418 $Filter = preg_quote($Filter, "/");
419 if($CaseInsensitive!="yes"&&$WholeWord=="yes") {
420 $_POST['TopicDesc'] = preg_replace("/\b(".$Filter.")\b/", $Replace, $_POST['TopicDesc']); 
421 $_POST['TopicPost'] = preg_replace("/\b(".$Filter.")\b/", $Replace, $_POST['TopicPost']); }
422 if($CaseInsensitive=="yes"&&$WholeWord=="yes") {
423 $_POST['TopicDesc'] = preg_replace("/\b(".$Filter.")\b/i", $Replace, $_POST['TopicDesc']); 
424 $_POST['TopicPost'] = preg_replace("/\b(".$Filter.")\b/i", $Replace, $_POST['TopicPost']); }
425 if($CaseInsensitive!="yes"&&$WholeWord!="yes") {
426 $_POST['TopicDesc'] = preg_replace("/".$Filter."/", $Replace, $_POST['TopicDesc']); 
427 $_POST['TopicPost'] = preg_replace("/".$Filter."/", $Replace, $_POST['TopicPost']); }
428 if($CaseInsensitive=="yes"&&$WholeWord!="yes") {
429 $_POST['TopicDesc'] = preg_replace("/".$Filter."/i", $Replace, $_POST['TopicDesc']); 
430 $_POST['TopicPost'] = preg_replace("/".$Filter."/i", $Replace, $_POST['TopicPost']); }
431 ++$katarzynas; } @mysql_free_result($katarzynart);
432 $lonewolfqy=query("SELECT * FROM `".$Settings['sqltable']."restrictedwords` WHERE `RestrictedTopicName`='yes' or `RestrictedUserName`='yes'", array(null));
433 $lonewolfrt=mysql_query($lonewolfqy);
434 $lonewolfnm=mysql_num_rows($lonewolfrt);
435 $lonewolfs=0; $RMatches = null; $RGMatches = null;
436 while ($lonewolfs < $lonewolfnm) {
437 $RWord=mysql_result($lonewolfrt,$lonewolfs,"Word");
438 $RCaseInsensitive=mysql_result($lonewolfrt,$lonewolfs,"CaseInsensitive");
439 if($RCaseInsensitive=="on") { $RCaseInsensitive = "yes"; }
440 if($RCaseInsensitive=="off") { $RCaseInsensitive = "no"; }
441 if($RCaseInsensitive!="yes"||$RCaseInsensitive!="no") { $RCaseInsensitive = "no"; }
442 $RWholeWord=mysql_result($lonewolfrt,$lonewolfs,"WholeWord");
443 if($RWholeWord=="on") { $RWholeWord = "yes"; }
444 if($RWholeWord=="off") { $RWholeWord = "no"; }
445 if($RWholeWord!="yes"||$RWholeWord!="no") { $RWholeWord = "no"; }
446 $RestrictedTopicName=mysql_result($lonewolfrt,$lonewolfs,"RestrictedTopicName");
447 if($RestrictedTopicName=="on") { $RestrictedTopicName = "yes"; }
448 if($RestrictedTopicName=="off") { $RestrictedTopicName = "no"; }
449 if($RestrictedTopicName!="yes"||$RestrictedTopicName!="no") { $RestrictedTopicName = "no"; }
450 $RestrictedUserName=mysql_result($lonewolfrt,$lonewolfs,"RestrictedUserName");
451 if($RestrictedUserName=="on") { $RestrictedUserName = "yes"; }
452 if($RestrictedUserName=="off") { $RestrictedUserName = "no"; }
453 if($RestrictedUserName!="yes"||$RestrictedUserName!="no") { $RestrictedUserName = "no"; }
454 $RWord = preg_quote($RWord, "/");
455 if($RCaseInsensitive!="yes"&&$RWholeWord=="yes") {
456 if($RestrictedTopicName=="yes") {
457 $RMatches = preg_match("/\b(".$RWord.")\b/", $_POST['TopicName']);
458         if($RMatches==true) { break 1; } }
459 if($RestrictedUserName=="yes") {
460 $RGMatches = preg_match("/\b(".$RWord.")\b/", $_POST['GuestName']);
461         if($RGMatches==true) { break 1; } } }
462 if($RCaseInsensitive=="yes"&&$RWholeWord=="yes") {
463 if($RestrictedTopicName=="yes") {
464 $RMatches = preg_match("/\b(".$RWord.")\b/i", $_POST['TopicName']);
465         if($RMatches==true) { break 1; } }
466 if($RestrictedUserName=="yes") {
467 $RGMatches = preg_match("/\b(".$RWord.")\b/i", $_POST['GuestName']);
468         if($RGMatches==true) { break 1; } } }
469 if($RCaseInsensitive!="yes"&&$RWholeWord!="yes") {
470 if($RestrictedTopicName=="yes") {
471 $RMatches = preg_match("/".$RWord."/", $_POST['TopicName']);
472         if($RMatches==true) { break 1; } }
473 if($RestrictedUserName=="yes") {
474 $RGMatches = preg_match("/".$RWord."/", $_POST['GuestName']);
475         if($RGMatches==true) { break 1; } } }
476 if($RCaseInsensitive=="yes"&&$RWholeWord!="yes") {
477 if($RestrictedTopicName=="yes") {
478 $RMatches = preg_match("/".$RWord."/i", $_POST['TopicName']);
479         if($RMatches==true) { break 1; } }
480 if($RestrictedUserName=="yes") {
481 $RGMatches = preg_match("/".$RWord."/i", $_POST['GuestName']);
482         if($RGMatches==true) { break 1; } } }
483 ++$lonewolfs; } @mysql_free_result($lonewolfrt);
484 if ($_POST['TopicName']==null) { $Error="Yes"; ?>
485 <tr>
486         <td><span class="TableMessage">
487         <br />You need to enter a Topic Name.<br />
488         </span>&nbsp;</td>
489 </tr>
490 <?php } if ($_POST['TopicDesc']==null) { $Error="Yes"; ?>
491 <tr>
492         <td><span class="TableMessage">
493         <br />You need to enter a Topic Description.<br />
494         </span>&nbsp;</td>
495 </tr>
496 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
497         $_POST['GuestName']==null) { $Error="Yes"; ?>
498 <tr>
499         <td><span class="TableMessage">
500         <br />You need to enter a Guest Name.<br />
501         </span>&nbsp;</td>
502 </tr>
503 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
504         $RGMatches==true) { $Error="Yes"; ?>
505 <tr>
506         <td><span class="TableMessage">
507         <br />This Guest Name is restricted to use.<br />
508         </span>&nbsp;</td>
509 </tr>
510 <?php } if($PermissionInfo['CanMakeTopics'][$ForumID]=="no"||$CanHaveTopics=="no") { $Error="Yes"; ?>
511 <tr>
512         <td><span class="TableMessage">
513         <br />You do not have permission to make a topic here.<br />
514         </span>&nbsp;</td>
515 </tr>
516 <?php } if ($_POST['TopicPost']==null) { $Error="Yes"; ?>
517 <tr>
518         <td><span class="TableMessage">
519         <br />You need to enter a Topic Post.<br />
520         </span>&nbsp;</td>
521 </tr>
522 <?php } if($RMatches==true) { $Error="Yes"; ?>
523 <tr>
524         <td><span class="TableMessage">
525         <br />This Topic Name is restricted to use.<br />
526         </span>&nbsp;</td>
527 </tr>
528 <?php } if ($Error=="Yes") {
529 @redirect("refresh",$basedir.url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false),"4"); ?>
530 <tr>
531         <td><span class="TableMessage">
532         <br />Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=lowview",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to goto index page.<br />&nbsp;
533         </span><br /></td>
534 </tr>
535 <?php } if ($Error!="Yes") { $LastActive = GMTimeStamp();
536 $topicid = getnextid($Settings['sqltable'],"topics");
537 $postid = getnextid($Settings['sqltable'],"posts");
538 $requery = query("SELECT * FROM `".$Settings['sqltable']."members` WHERE `id`=%i LIMIT 1", array($MyUserID));
539 $reresult=mysql_query($requery);
540 $renum=mysql_num_rows($reresult);
541 $rei=0;
542 while ($rei < $renum) {
543 $User1ID=$MyUserID;
544 $User1Name=mysql_result($reresult,$rei,"Name");
545 if($_SESSION['UserGroup']==$Settings['GuestGroup']) { $User1Name = $_POST['GuestName']; }
546 $User1Email=mysql_result($reresult,$rei,"Email");
547 $User1Title=mysql_result($reresult,$rei,"Title");
548 $User1GroupID=mysql_result($reresult,$rei,"GroupID");
549 $PostCount=mysql_result($reresult,$rei,"PostCount");
550 if($PostCountAdd=="on") { $NewPostCount = $PostCount + 1; }
551 if(!isset($NewPostCount)) { $NewPostCount = $PostCount; }
552 $gquery = query("SELECT * FROM `".$Settings['sqltable']."groups` WHERE `id`=%i LIMIT 1", array($User1GroupID));
553 $gresult=mysql_query($gquery);
554 $User1Group=mysql_result($gresult,0,"Name");
555 @mysql_free_result($gresult);
556 $User1IP=$_SERVER['REMOTE_ADDR'];
557 ++$rei; } @mysql_free_result($reresult);
558 $query = query("INSERT INTO `".$Settings['sqltable']."topics` VALUES (".$topicid.",%i,%i,0,%i,'%s',%i,%i,'%s','%s',0,0,0,0)", array($ForumID,$ForumCatID,$User1ID,$User1Name,$LastActive,$LastActive,$_POST['TopicName'],$_POST['TopicDesc']));
559 mysql_query($query);
560 $query = query("INSERT INTO `".$Settings['sqltable']."posts` VALUES (".$postid.",".$topicid.",%i,%i,%i,'%s',%i,%i,0,'%s','%s','%s','0')", array($ForumID,$ForumCatID,$User1ID,$User1Name,$LastActive,$LastActive,$_POST['TopicPost'],$_POST['TopicDesc'],$User1IP));
561 mysql_query($query);
562 if($User1ID!=0&&$User1ID!=-1) {
563 $queryupd = query("UPDATE `".$Settings['sqltable']."members` SET `LastActive`=%i,`IP`='%s',`PostCount`=%i WHERE `id`=%i", array($LastActive,$User1IP,$NewPostCount,$User1ID));
564 mysql_query($queryupd); }
565 $NewNumPosts = $NumberPosts + 1; $NewNumTopics = $NumberTopics + 1;
566 $queryupd = query("UPDATE `".$Settings['sqltable']."forums` SET `NumPosts`=%i,`NumTopics`=%i WHERE `id`=%i", array($NewNumPosts,$NewNumTopics,$ForumID));
567 mysql_query($queryupd);
568 @redirect("refresh",$basedir.url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$topicid."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic'],FALSE),"3");
569 ?><tr>
570         <td><span class="TableMessage"><br />
571         Topic <?php echo $_POST['TopicName']; ?> was started.<br />
572         Click <a href="<?php echo url_maker($exfile['topic'],$Settings['file_ext'],"act=lowview&id=".$topicid."&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['topic'],$exqstr['topic']); ?>">here</a> to continue to topic.<br />&nbsp;
573         </span><br /></td>
574 </tr>
575 <?php }  ?>
576 </ul></div>
577 <?php } */ } } ?>