Small update to stats box. :)
[iDB.git] / inc / messages.php
blobdddca81ded817ff4cac087f7d7e5763e47ea6664
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.
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.
11 Copyright 2004-2010 iDB Support - http://idb.berlios.de/
12 Copyright 2004-2010 Game Maker 2k - http://gamemaker2k.org/
14 $FileInfo: messages.php - Last Update: 10/09/2010 SVN 586 - Author: cooldude2k $
16 $File3Name = basename($_SERVER['SCRIPT_NAME']);
17 if ($File3Name=="messages.php"||$File3Name=="/messages.php") {
18 require('index.php');
19 exit(); }
20 if(!is_numeric($_GET['id'])) { $_GET['id'] = null; }
21 if(!is_numeric($_GET['post'])) { $_GET['post'] = null; }
22 if(!is_numeric($_GET['page'])) { $_GET['page'] = 1; }
23 // Check if we can read/send PM
24 if($_SESSION['UserGroup']==$Settings['GuestGroup']||$GroupInfo['CanPM']=="no") {
25 redirect("location",$rbasedir.url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
26 ob_clean(); header("Content-Type: text/plain; charset=".$Settings['charset']);
27 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); session_write_close(); die(); }
28 $_SESSION['ViewingPage'] = url_maker(null,"no+ext","act=view","&","=",$prexqstr['index'],$exqstr['index']);
29 if($Settings['file_ext']!="no+ext"&&$Settings['file_ext']!="no ext") {
30 $_SESSION['ViewingFile'] = $exfile['index'].$Settings['file_ext']; }
31 if($Settings['file_ext']=="no+ext"||$Settings['file_ext']=="no ext") {
32 $_SESSION['ViewingFile'] = $exfile['index']; }
33 $_SESSION['PreViewingTitle'] = "Viewing";
34 $_SESSION['ViewingTitle'] = "Messages";
35 if($_GET['act']=="view"||$_GET['act']=="viewsent"||$_GET['act']=="read") {
37 <div class="NavLinks"><?php echo $ThemeSet['NavLinkIcon']; ?><a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">Board index</a><?php echo $ThemeSet['NavLinkDivider']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">Mailbox</a></div>
38 <div class="DivNavLinks">&nbsp;</div>
39 <table class="Table3">
40 <tr style="width: 100%; vertical-align: top;">
41 <td style="width: 15%; vertical-align: top;">
42 <div class="TableSMenuBorder">
43 <?php if($ThemeSet['TableStyle']=="div") { ?>
44 <div class="TableSMenuRow1">
45 <?php echo $ThemeSet['TitleIcon']; ?>Messenger</div>
46 <?php } ?>
47 <table id="ProfileLinks" class="TableSMenu" style="width: 100%; text-align: left; vertical-align: top;">
48 <?php if($ThemeSet['TableStyle']=="table") { ?>
49 <tr class="TableSMenuRow1">
50 <td class="TableSMenuColumn1"><?php echo $ThemeSet['TitleIcon']; ?>Messenger</td>
51 </tr><?php } ?>
52 <tr class="TableSMenuRow2">
53 <td class="TableSMenuColumn2">&nbsp;</td>
54 </tr><tr class="TableSMenuRow3">
55 <td class="TableSMenuColumn3"><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">View MailBox</a></td>
56 </tr><tr class="TableSMenuRow3">
57 <td class="TableSMenuColumn3"><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">View SentBox</a></td>
58 </tr><tr class="TableSMenuRow3">
59 <td class="TableSMenuColumn3"><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=create",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">Send Message</a></td>
60 </tr><tr class="TableSMenuRow4">
61 <td class="TableSMenuColumn4">&nbsp;</td>
62 </tr></table></div>
63 </td>
64 <td style="width: 85%; vertical-align: top;">
65 <?php
66 if($_GET['act']=="view") {
67 //Get SQL LIMIT Number
68 $nums = $_GET['page'] * $Settings['max_pmlist'];
69 $PageLimit = $nums - $Settings['max_pmlist'];
70 $query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."messenger\" WHERE \"ReciverID\"=%i ORDER BY \"DateSend\" DESC ".$SQLimit, array($_SESSION['UserID'],$PageLimit,$Settings['max_pmlist']));
71 $rnquery = sql_pre_query("SELECT COUNT(*) FROM \"".$Settings['sqltable']."messenger\" WHERE \"ReciverID\"=%i", array($_SESSION['UserID']));
72 $result=sql_query($query,$SQLStat);
73 $rnresult=sql_query($rnquery,$SQLStat);
74 $NumberMessage = sql_result($rnresult,0);
75 sql_free_result($rnresult);
76 if($NumberMessage==null) {
77 $NumberMessage = 0; }
78 $num = $NumberMessage;
79 $num=sql_num_rows($result);
80 //Start MessengerList Page Code
81 if(!isset($Settings['max_pmlist'])) { $Settings['max_pmlist'] = 10; }
82 if($_GET['page']==null) { $_GET['page'] = 1; }
83 if($_GET['page']<=0) { $_GET['page'] = 1; }
84 $nums = $_GET['page'] * $Settings['max_pmlist'];
85 if($nums>$num) { $nums = $num; }
86 $numz = $nums - $Settings['max_pmlist'];
87 if($numz<=0) { $numz = 0; }
88 //$i=$numz;
89 if($nums<$num) { $nextpage = $_GET['page'] + 1; }
90 if($nums>=$num) { $nextpage = $_GET['page']; }
91 if($numz>=$Settings['max_pmlist']) { $backpage = $_GET['page'] - 1; }
92 if($_GET['page']<=1) { $backpage = 1; }
93 $pnum = $num; $l = 1; $Pages = null;
94 while ($pnum>0) {
95 if($pnum>=$Settings['max_pmlist']) {
96 $pnum = $pnum - $Settings['max_pmlist'];
97 $Pages[$l] = $l; ++$l; }
98 if($pnum<$Settings['max_pmlist']&&$pnum>0) {
99 $pnum = $pnum - $pnum;
100 $Pages[$l] = $l; ++$l; } }
101 //End MessengerList Page Code
102 $num=sql_num_rows($result);
103 $i=0;
104 //List Page Number Code Start
105 $pagenum=count($Pages);
106 if($_GET['page']>$pagenum) {
107 $_GET['page'] = $pagenum; }
108 $pagei=0; $pstring = null;
109 if($pagenum>1) {
110 $pstring = "<div class=\"PageList\"><span class=\"pagelink\">".$pagenum." Pages:</span> "; }
111 if($_GET['page']<4) { $Pagez[0] = null; }
112 if($_GET['page']>=4) { $Pagez[0] = "First"; }
113 if($_GET['page']>=3) {
114 $Pagez[1] = $_GET['page'] - 2; }
115 if($_GET['page']<3) {
116 $Pagez[1] = null; }
117 if($_GET['page']>=2) {
118 $Pagez[2] = $_GET['page'] - 1; }
119 if($_GET['page']<2) {
120 $Pagez[2] = null; }
121 $Pagez[3] = $_GET['page'];
122 if($_GET['page']<$pagenum) {
123 $Pagez[4] = $_GET['page'] + 1; }
124 if($_GET['page']>=$pagenum) {
125 $Pagez[4] = null; }
126 $pagenext = $_GET['page'] + 1;
127 if($pagenext<$pagenum) {
128 $Pagez[5] = $_GET['page'] + 2; }
129 if($pagenext>=$pagenum) {
130 $Pagez[5] = null; }
131 if($_GET['page']<$pagenum) { $Pagez[6] = "Last"; }
132 if($_GET['page']>=$pagenum) { $Pagez[6] = null; }
133 $pagenumi=count($Pagez);
134 if($num==0) {
135 $pagenumi = 0;
136 $pstring = null; }
137 if($pagenum>1) {
138 while ($pagei < $pagenumi) {
139 if($_GET['page']!=1&&$pagei==1) {
140 $Pback = $_GET['page'] - 1;
141 $pstring = $pstring."<span class=\"pagelink\">a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=".$Pback,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&lt;</a></span> "; }
142 if($Pagez[$pagei]!=null&&
143 $Pagez[$pagei]!="First"&&
144 $Pagez[$pagei]!="Last") {
145 if($pagei!=3) {
146 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=".$Pagez[$pagei],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">".$Pagez[$pagei]."</a></span> "; }
147 if($pagei==3) {
148 $pstring = $pstring."<span class=\"pagecurrent\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=".$Pagez[$pagei],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">".$Pagez[$pagei]."</a></span> "; } }
149 if($Pagez[$pagei]=="First") {
150 $pstring = $pstring."<span class=\"pagelinklast\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&laquo;</a></span> "; }
151 if($Pagez[$pagei]=="Last") {
152 $ptestnext = $pagenext + 1;
153 $paget = $pagei - 1;
154 $Pnext = $_GET['page'] + 1;
155 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=".$Pnext,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&gt;</a></span> ";
156 if($ptestnext<$pagenum) {
157 $pstring = $pstring."<span class=\"pagelinklast\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=".$pagenum,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&raquo;</a></span> "; } }
158 ++$pagei; } $pstring = $pstring."</div>"; }
159 //echo $pstring;
160 //List Page Number Code end
161 echo $pstring;
162 if($pagenum>1) {
164 <div class="DivPageLinks">&nbsp;</div>
165 <?php } ?>
166 <div class="TableMenuBorder">
167 <?php if($ThemeSet['TableStyle']=="div") { ?>
168 <div class="TableMenuRow1">
169 <span style="float: left;">
170 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">MailBox&nbsp;(<?php echo $PMNumber; ?>)</a>
171 </span>&nbsp;</div>
172 <?php } ?>
173 <table class="TableMenu" style="width: 100%;">
174 <?php if($ThemeSet['TableStyle']=="table") { ?>
175 <tr class="TableMenuRow1">
176 <td class="TableMenuColumn1" colspan="4"><span style="float: left;">
177 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">MailBox&nbsp;(<?php echo $PMNumber; ?>)</a>
178 </span>&nbsp;</td>
179 </tr><?php } ?>
180 <tr id="Messenger" class="TableMenuRow2">
181 <th class="TableMenuColumn2" style="width: 4%;">State</th>
182 <th class="TableMenuColumn2" style="width: 46%;">Message Name</th>
183 <th class="TableMenuColumn2" style="width: 25%;">Sender</th>
184 <th class="TableMenuColumn2" style="width: 25%;">Time</th>
185 </tr>
186 <?php
187 while ($i < $num) {
188 $PMID=sql_result($result,$i,"id");
189 $SenderID=sql_result($result,$i,"SenderID");
190 $SenderIP=sql_result($result,$i,"IP");
191 $PreSenderName = GetUserName($SenderID,$Settings['sqltable'],$SQLStat);
192 if($PreSenderName['Name']===null) { $SenderID = -1;
193 $PreSenderName = GetUserName($SenderID,$Settings['sqltable'],$SQLStat); }
194 $SenderName = $PreSenderName['Name'];
195 $SenderHidden = $PreSenderName['Hidden'];
196 $ReciverID=sql_result($result,$i,"ReciverID");
197 $PreReciverName = GetUserName($ReciverID,$Settings['sqltable'],$SQLStat);
198 if($PreReciverName['Name']===null) { $ReciverID = -1;
199 $PreReciverName = GetUserName($ReciverID,$Settings['sqltable'],$SQLStat); }
200 $ReciverName = $PreReciverName['Name'];
201 $ReciverHidden = $PreReciverName['Hidden'];
202 $PMGuest=sql_result($result,$i,"GuestName");
203 $MessageName=sql_result($result,$i,"MessageTitle");
204 $MessageDesc=sql_result($result,$i,"Description");
205 $DateSend=sql_result($result,$i,"DateSend");
206 $DateSend=GMTimeChange("F j, Y, g:i a",$DateSend,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
207 $MessageStat=sql_result($result,$i,"Read");
208 if($SenderName=="Guest") { $SenderName=$PMGuest;
209 if($SenderName==null) { $SenderName="Guest"; } }
210 $PreMessage = $ThemeSet['MessageUnread'];
211 if ($MessageStat==0) {
212 $PreMessage=$ThemeSet['MessageUnread']; }
213 if ($MessageStat==1) {
214 $PreMessage=$ThemeSet['MessageRead']; }
216 <tr class="TableMenuRow3" id="Message<?php echo $PMID; ?>">
217 <td class="TableMenuColumn3"><div class="messagestate">
218 <?php echo $PreMessage; ?></div></td>
219 <td class="TableMenuColumn3"><div class="messagename">
220 <a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=read&id=".$PMID,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>"><?php echo $MessageName; ?></a></div>
221 <div class="messagedesc"><?php echo $MessageDesc; ?></div></td>
222 <td class="TableMenuColumn3" style="text-align: center;"><?php
223 if($SenderID>0&&$SenderHidden=="no") {
224 echo "<a href=\"";
225 echo url_maker($exfile['member'],$Settings['file_ext'],"act=view&id=".$SenderID,$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member']);
226 echo "\">".$SenderName."</a>"; }
227 if($SenderID<=0||$SenderHidden=="yes") {
228 echo "<span>".$SenderName."</span>"; }
229 ?></td>
230 <td class="TableMenuColumn3" style="text-align: center;"><?php echo $DateSend; ?></td>
231 </tr>
232 <?php ++$i; } sql_free_result($result); ?>
233 <tr id="MessengerEnd" class="TableMenuRow4">
234 <td class="TableMenuColumn4" colspan="4">&nbsp;</td>
235 </tr>
236 <?php }
237 if($_GET['act']=="viewsent") {
238 //Get SQL LIMIT Number
239 $nums = $_GET['page'] * $Settings['max_pmlist'];
240 $PageLimit = $nums - $Settings['max_pmlist'];
241 $query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."messenger\" WHERE \"SenderID\"=%i ORDER BY \"DateSend\" DESC ".$SQLimit, array($_SESSION['UserID'],$PageLimit,$Settings['max_pmlist']));
242 $rnquery = sql_pre_query("SELECT COUNT(*) FROM \"".$Settings['sqltable']."messenger\" WHERE \"SenderID\"=%i", array($_SESSION['UserID']));
243 $result=sql_query($query,$SQLStat);
244 $rnresult=sql_query($rnquery,$SQLStat);
245 $NumberMessage = sql_result($rnresult,0);
246 sql_free_result($rnresult);
247 if($NumberMessage==null) {
248 $NumberMessage = 0; }
249 $num = $NumberMessage;
250 $num=sql_num_rows($result);
251 //Start MessengerList Page Code
252 if(!isset($Settings['max_pmlist'])) { $Settings['max_pmlist'] = 10; }
253 if($_GET['page']==null) { $_GET['page'] = 1; }
254 if($_GET['page']<=0) { $_GET['page'] = 1; }
255 $nums = $_GET['page'] * $Settings['max_pmlist'];
256 if($nums>$num) { $nums = $num; }
257 $numz = $nums - $Settings['max_pmlist'];
258 if($numz<=0) { $numz = 0; }
259 //$i=$numz;
260 if($nums<$num) { $nextpage = $_GET['page'] + 1; }
261 if($nums>=$num) { $nextpage = $_GET['page']; }
262 if($numz>=$Settings['max_pmlist']) { $backpage = $_GET['page'] - 1; }
263 if($_GET['page']<=1) { $backpage = 1; }
264 $pnum = $num; $l = 1; $Pages = null;
265 while ($pnum>0) {
266 if($pnum>=$Settings['max_pmlist']) {
267 $pnum = $pnum - $Settings['max_pmlist'];
268 $Pages[$l] = $l; ++$l; }
269 if($pnum<$Settings['max_pmlist']&&$pnum>0) {
270 $pnum = $pnum - $pnum;
271 $Pages[$l] = $l; ++$l; } }
272 //End MessengerList Page Code
273 $num=sql_num_rows($result);
274 $i=0;
275 //List Page Number Code Start
276 $pagenum=count($Pages);
277 if($_GET['page']>$pagenum) {
278 $_GET['page'] = $pagenum; }
279 $pagei=0; $pstring = null;
280 if($pagenum>1) {
281 $pstring = "<div class=\"PageList\"><span class=\"pagelink\">".$pagenum." Pages:</span> "; }
282 if($_GET['page']<4) { $Pagez[0] = null; }
283 if($_GET['page']>=4) { $Pagez[0] = "First"; }
284 if($_GET['page']>=3) {
285 $Pagez[1] = $_GET['page'] - 2; }
286 if($_GET['page']<3) {
287 $Pagez[1] = null; }
288 if($_GET['page']>=2) {
289 $Pagez[2] = $_GET['page'] - 1; }
290 if($_GET['page']<2) {
291 $Pagez[2] = null; }
292 $Pagez[3] = $_GET['page'];
293 if($_GET['page']<$pagenum) {
294 $Pagez[4] = $_GET['page'] + 1; }
295 if($_GET['page']>=$pagenum) {
296 $Pagez[4] = null; }
297 $pagenext = $_GET['page'] + 1;
298 if($pagenext<$pagenum) {
299 $Pagez[5] = $_GET['page'] + 2; }
300 if($pagenext>=$pagenum) {
301 $Pagez[5] = null; }
302 if($_GET['page']<$pagenum) { $Pagez[6] = "Last"; }
303 if($_GET['page']>=$pagenum) { $Pagez[6] = null; }
304 $pagenumi=count($Pagez);
305 if($num==0) {
306 $pagenumi = 0;
307 $pstring = null; }
308 if($pagenum>1) {
309 while ($pagei < $pagenumi) {
310 if($_GET['page']!=1&&$pagei==1) {
311 $Pback = $_GET['page'] - 1;
312 $pstring = $pstring."<span class=\"pagelink\">a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=".$Pback,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&lt;</a></span> "; }
313 if($Pagez[$pagei]!=null&&
314 $Pagez[$pagei]!="First"&&
315 $Pagez[$pagei]!="Last") {
316 if($pagei!=3) {
317 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=".$Pagez[$pagei],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">".$Pagez[$pagei]."</a></span> "; }
318 if($pagei==3) {
319 $pstring = $pstring."<span class=\"pagecurrent\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=".$Pagez[$pagei],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">".$Pagez[$pagei]."</a></span> "; } }
320 if($Pagez[$pagei]=="First") {
321 $pstring = $pstring."<span class=\"pagelinklast\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&laquo;</a></span> "; }
322 if($Pagez[$pagei]=="Last") {
323 $ptestnext = $pagenext + 1;
324 $paget = $pagei - 1;
325 $Pnext = $_GET['page'] + 1;
326 $pstring = $pstring."<span class=\"pagelink\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=".$Pnext,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&gt;</a></span> ";
327 if($ptestnext<$pagenum) {
328 $pstring = $pstring."<span class=\"pagelinklast\"><a href=\"".url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=".$pagenum,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger'])."\">&raquo;</a></span> "; } }
329 ++$pagei; } $pstring = $pstring."</div>"; }
330 //echo $pstring;
331 //List Page Number Code end
332 echo $pstring;
333 if($pagenum>1) {
335 <div class="DivPageLinks">&nbsp;</div>
336 <?php } ?>
337 <div class="TableMenuBorder">
338 <?php if($ThemeSet['TableStyle']=="div") { ?>
339 <div class="TableMenuRow1">
340 <span style="float: left;">
341 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">MailBox&nbsp;(<?php echo $PMNumber; ?>)</a>
342 </span>&nbsp;</div>
343 <?php } ?>
344 <table class="TableMenu" style="width: 100%;">
345 <?php if($ThemeSet['TableStyle']=="table") { ?>
346 <tr class="TableMenuRow1">
347 <td class="TableMenuColumn1" colspan="4"><span style="float: left;">
348 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=viewsent&page=1",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">MailBox&nbsp;(<?php echo $PMNumber; ?>)</a>
349 </span>&nbsp;</td>
350 </tr><?php } ?>
351 <tr id="Messenger" class="TableMenuRow2">
352 <th class="TableMenuColumn2" style="width: 4%;">State</th>
353 <th class="TableMenuColumn2" style="width: 46%;">Message Name</th>
354 <th class="TableMenuColumn2" style="width: 25%;">Sent To</th>
355 <th class="TableMenuColumn2" style="width: 25%;">Time</th>
356 </tr>
357 <?php
358 while ($i < $num) {
359 $PMID=sql_result($result,$i,"id");
360 $SenderID=sql_result($result,$i,"SenderID");
361 $SenderIP=sql_result($result,$i,"IP");
362 $PreSenderName = GetUserName($SenderID,$Settings['sqltable'],$SQLStat);
363 if($PreSenderName['Name']===null) { $SenderID = -1;
364 $PreSenderName = GetUserName($SenderID,$Settings['sqltable'],$SQLStat); }
365 $SenderName = $PreSenderName['Name'];
366 $SenderHidden = $PreSenderName['Hidden'];
367 $ReciverID=sql_result($result,$i,"ReciverID");
368 $PreReciverName = GetUserName($ReciverID,$Settings['sqltable'],$SQLStat);
369 if($PreReciverName['Name']===null) { $ReciverID = -1;
370 $PreReciverName = GetUserName($ReciverID,$Settings['sqltable'],$SQLStat); }
371 $ReciverName = $PreReciverName['Name'];
372 $ReciverHidden = $PreReciverName['Hidden'];
373 $PMGuest=sql_result($result,$i,"GuestName");
374 $MessageName=sql_result($result,$i,"MessageTitle");
375 $MessageDesc=sql_result($result,$i,"Description");
376 $DateSend=sql_result($result,$i,"DateSend");
377 $DateSend=GMTimeChange("F j, Y, g:i a",$DateSend,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
378 $MessageStat=sql_result($result,$i,"Read");
379 if($SenderName=="Guest") { $SenderName=$PMGuest;
380 if($SenderName==null) { $SenderName="Guest"; } }
381 $PreMessage = $ThemeSet['MessageUnread'];
382 if ($MessageStat==0) {
383 $PreMessage=$ThemeSet['MessageUnread']; }
384 if ($MessageStat==1) {
385 $PreMessage=$ThemeSet['MessageRead']; }
387 <tr class="TableMenuRow3" id="Message<?php echo $PMID; ?>">
388 <td class="TableMenuColumn3"><div class="messagestate">
389 <?php echo $PreMessage; ?></div></td>
390 <td class="TableMenuColumn3"><div class="messagename">
391 <a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=read&id=".$PMID,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>"><?php echo $MessageName; ?></a></div>
392 <div class="messagedesc"><?php echo $MessageDesc; ?></div></td>
393 <td class="TableMenuColumn3" style="text-align: center;"><?php
394 if($ReciverID>0&&$ReciverHidden=="no") {
395 echo "<a href=\"";
396 echo url_maker($exfile['member'],$Settings['file_ext'],"act=view&id=".$ReciverID,$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member']);
397 echo "\">".$ReciverName."</a>"; }
398 if($ReciverID<=0||$ReciverHidden=="yes") {
399 echo "<span>".$ReciverName."</span>"; }
400 ?></td>
401 <td class="TableMenuColumn3" style="text-align: center;"><?php echo $DateSend; ?></td>
402 </tr>
403 <?php ++$i; } ?>
404 <tr id="MessengerEnd" class="TableMenuRow4">
405 <td class="TableMenuColumn4" colspan="4">&nbsp;</td>
406 </tr>
407 <?php sql_free_result($result); }
408 if($_GET['act']=="read") {
409 $query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."messenger\" WHERE \"id\"=%i", array($_GET['id']));
410 $result=sql_query($query,$SQLStat);
411 $num=sql_num_rows($result);
412 $is=0;
413 if($num==0) { redirect("location",$rbasedir.url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
414 ob_clean(); header("Content-Type: text/plain; charset=".$Settings['charset']);
415 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); session_write_close(); die(); }
416 while ($is < $num) {
417 $PMID=sql_result($result,$is,"id");
418 $SenderID=sql_result($result,$is,"SenderID");
419 $SenderIP=sql_result($result,$is,"IP");
420 $PreSenderName = GetUserName($SenderID,$Settings['sqltable'],$SQLStat);
421 if($PreSenderName['Name']===null) { $SenderID = -1;
422 $PreSenderName = GetUserName($SenderID,$Settings['sqltable'],$SQLStat); }
423 $SenderName = $PreSenderName['Name'];
424 $SenderHidden = $PreSenderName['Hidden'];
425 $ReciverID=sql_result($result,$is,"ReciverID");
426 $PreReciverName = GetUserName($ReciverID,$Settings['sqltable'],$SQLStat);
427 if($PreReciverName['Name']===null) { $ReciverID = -1;
428 $PreReciverName = GetUserName($ReciverID,$Settings['sqltable'],$SQLStat); }
429 $ReciverName = $PreReciverName['Name'];
430 $ReciverHidden = $PreReciverName['Hidden'];
431 $PMGuest=sql_result($result,$is,"GuestName");
432 $MessageName=sql_result($result,$is,"MessageTitle");
433 $DateSend=sql_result($result,$is,"DateSend");
434 $DateSend=GMTimeChange("F j, Y, g:i a",$DateSend,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
435 $MessageText=sql_result($result,$is,"MessageText");
436 $MessageText = preg_replace("/\<br\>/", "<br />", nl2br($MessageText));
437 $MessageDesc=sql_result($result,$is,"Description");
438 $ipshow = "two";
439 $requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i", array($SenderID));
440 $reresult=sql_query($requery,$SQLStat);
441 $renum=sql_num_rows($reresult);
442 $rei=0;
443 if($_SESSION['UserID']!=$ReciverID&&
444 $_SESSION['UserID']!=$SenderID) {
445 redirect("location",$rbasedir.url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false));
446 ob_clean(); header("Content-Type: text/plain; charset=".$Settings['charset']);
447 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); session_write_close(); die(); }
448 while ($rei < $renum) {
449 $User1ID=$SenderID;
450 $User1Name=sql_result($reresult,$rei,"Name");
451 $SenderName = $User1Name;
452 $User1IP=sql_result($reresult,$rei,"IP");
453 if($User1IP==$SenderIP) { $ipshow = "one"; }
454 $User1Email=sql_result($reresult,$rei,"Email");
455 $User1Title=sql_result($reresult,$rei,"Title");
456 $User1Joined=sql_result($reresult,$rei,"Joined");
457 $User1Joined=GMTimeChange("M j Y",$User1Joined,$_SESSION['UserTimeZone'],0,$_SESSION['UserDST']);
458 $User1GroupID=sql_result($reresult,$rei,"GroupID");
459 $User1Hidden=sql_result($reresult,$rei,"HiddenMember");
460 $SenderHidden = $User1Hidden;
461 $gquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i", array($User1GroupID));
462 $gresult=sql_query($gquery,$SQLStat);
463 $User1Group=sql_result($gresult,0,"Name");
464 $GroupNamePrefix=sql_result($gresult,0,"NamePrefix");
465 $GroupNameSuffix=sql_result($gresult,0,"NameSuffix");
466 sql_free_result($gresult);
467 if($User1Title=="") { $User1Title = $User1Group; }
468 $User1Signature=sql_result($reresult,$rei,"Signature");
469 $User1Avatar=sql_result($reresult,$rei,"Avatar");
470 $User1AvatarSize=sql_result($reresult,$rei,"AvatarSize");
471 if ($User1Avatar=="http://"||$User1Avatar==null||
472 strtolower($User1Avatar)=="noavatar") {
473 $User1Avatar=$ThemeSet['NoAvatar'];
474 $User1AvatarSize=$ThemeSet['NoAvatarSize']; }
475 $AvatarSize1=explode("x", $User1AvatarSize);
476 $AvatarSize1W=$AvatarSize1[0]; $AvatarSize1H=$AvatarSize1[1];
477 $User1Website=sql_result($reresult,$rei,"Website");
478 $User1Website = urlcheck($User1Website);
479 $BoardWWWChCk = parse_url($Settings['idburl']);
480 $User1WWWChCk = parse_url($User1Website);
481 $opennew = " onclick=\"window.open(this.href);return false;\"";
482 if($BoardWWWChCk['host']==$User1WWWChCk['host']) {
483 $opennew = null; }
484 $User1PostCount=sql_result($reresult,$rei,"PostCount");
485 $User1Karma=sql_result($reresult,$rei,"Karma");
486 $User1IP=sql_result($reresult,$rei,"IP");
487 ++$rei; } sql_free_result($reresult);
488 ++$is; } sql_free_result($result);
489 if($_SESSION['UserID']==$ReciverID) {
490 $queryup = sql_pre_query("UPDATE \"".$Settings['sqltable']."messenger\" SET \"Read\"=%i WHERE \"id\"=%i", array(1,$_GET['id']));
491 sql_query($queryup,$SQLStat); }
492 if($User1Name=="Guest") { $User1Name=$PMGuest;
493 if($User1Name==null) { $User1Name="Guest"; } }
494 if(isset($GroupNamePrefix)&&$GroupNamePrefix!=null) {
495 $User1Name = $GroupNamePrefix.$User1Name; }
496 if(isset($GroupNameSuffix)&&$GroupNameSuffix!=null) {
497 $User1Name = $User1Name.$GroupNameSuffix; }
498 $MessageText = url2link($MessageText);
499 $MessageText = text2icons($MessageText,$Settings['sqltable'],$SQLStat);
500 $User1Signature = preg_replace("/\<br\>/", "<br />", nl2br($User1Signature));
501 $User1Signature = text2icons($User1Signature,$Settings['sqltable'],$SQLStat);
503 <div class="TableInfoMini1Border">
504 <?php if($ThemeSet['TableStyle']=="div") { ?>
505 <div class="TableInfoMiniRow1">
506 <span style="font-weight: bold; text-align: left;"><?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&id=".$_GET['id'],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>"><?php echo $MessageName; ?></a> ( <?php echo $MessageDesc; ?> )</span>
507 </div>
508 <?php } ?>
509 <table class="TableInfoMini1" style="width: 100%;">
510 <?php if($ThemeSet['TableStyle']=="table") { ?>
511 <tr class="TableInfoMiniRow1">
512 <td class="TableInfoMiniColumn1" colspan="2"><span style="font-weight: bold; text-align: left;"><?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=view&id=".$_GET['id'],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>"><?php echo $MessageName; ?></a> ( <?php echo $MessageDesc; ?> )</span>
513 </td>
514 </tr><?php } ?>
515 <tr class="TableInfoMiniRow2">
516 <td class="TableInfoMiniColumn2" style="vertical-align: middle; width: 160px;">
517 &nbsp;<?php
518 if($User1ID>0&&$User1Hidden=="no") {
519 echo "<a href=\"";
520 echo url_maker($exfile['member'],$Settings['file_ext'],"act=view&id=".$User1ID,$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member']);
521 echo "\">".$User1Name."</a>"; }
522 if($User1ID<=0||$User1Hidden=="yes") {
523 echo "<span>".$User1Name."</span>"; }
524 ?></td>
525 <td class="TableInfoMiniColumn2" style="vertical-align: middle;">
526 <div style="float: left; text-align: left;">
527 <span style="font-weight: bold;">Time Sent: </span><?php echo $DateSend; ?>
528 </div>
529 <div style="text-align: right;">
530 <?php if(isset($ThemeSet['Report'])&&$ThemeSet['Report']!=null) { ?>
531 <a href="#Act/Report"><?php echo $ThemeSet['Report']; ?></a>
532 <?php } if($GroupInfo['CanPM']=="yes"&&isset($ThemeSet['QuoteReply'])&&$ThemeSet['QuoteReply']!=null) {
533 echo $ThemeSet['LineDividerTopic']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=create&id=".$User1ID."&post=".$_GET['id'],$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>"><?php echo $ThemeSet['QuoteReply']; ?></a>
534 <?php } ?>&nbsp;</div>
535 </td>
536 </tr>
537 <tr class="TableInfoMiniRow3">
538 <td class="TableInfoMiniColumn3" style="vertical-align: top; width: 180px;">
539 <?php // Avatar Table Thanks For SeanJ's Help at http://seanj.jcink.com/
541 <table class="AvatarTable" style="width: 100px; height: 100px; text-align: center;">
542 <tr class="AvatarRow" style="width: 100%; height: 100%;">
543 <td class="AvatarRow" style="width: 100%; height: 100%; text-align: center; vertical-align: middle;">
544 <img src="<?php echo $User1Avatar; ?>" alt="<?php echo $User1Name; ?>'s Avatar" title="<?php echo $User1Name; ?>'s Avatar" style="border: 0px; width: <?php echo $AvatarSize1W; ?>px; height: <?php echo $AvatarSize1H; ?>px;" />
545 </td>
546 </tr>
547 </table><br />
548 <?php echo $User1Title; ?><br />
549 Group: <?php echo $User1Group; ?><br />
550 Member: <?php
551 if($User1ID>0&&$User1Hidden=="no") { echo $User1ID; }
552 if($User1ID<=0||$User1Hidden=="yes") { echo 0; }
553 ?><br />
554 Posts: <?php echo $User1PostCount; ?><br />
555 Karma: <?php echo $User1Karma; ?><br />
556 Joined: <?php echo $User1Joined; ?><br />
557 <?php if($GroupInfo['HasAdminCP']=="yes") { ?>
558 User IP: <a onclick="window.open(this.href);return false;" href="<?php echo sprintf($IPCheckURL,$User1IP); ?>">
559 <?php echo $User1IP; ?></a><br />
560 <?php if($ipshow=="two") { ?>
561 Message IP: <a onclick="window.open(this.href);return false;" href="<?php echo sprintf($IPCheckURL,$SenderIP); ?>">
562 <?php echo $SenderIP; ?></a><br />
563 <?php } } ?><br />
564 </td>
565 <td class="TableInfoMiniColumn3" style="vertical-align: middle;">
566 <div class="pmpost"><?php echo $MessageText; ?></div>
567 <?php if(isset($User1Signature)&&$User1Signature!="") { ?> <br />--------------------
568 <div class="signature"><?php echo $User1Signature; ?></div><?php } ?>
569 </td>
570 </tr>
571 <tr class="TableInfoMiniRow4">
572 <td class="TableInfoMiniColumn4" colspan="2">
573 <span style="text-align: left;">&nbsp;<a href="<?php
574 if($User1ID>0&&$User1Hidden=="no"&&isset($ThemeSet['Profile'])&&$ThemeSet['Profile']!=null) {
575 echo url_maker($exfile['member'],$Settings['file_ext'],"act=view&id=".$User1ID,$Settings['qstr'],$Settings['qsep'],$prexqstr['member'],$exqstr['member']); }
576 if(($User1ID<=0||$User1Hidden=="yes")&&isset($ThemeSet['Profile'])&&$ThemeSet['Profile']!=null) {
577 echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); }
578 ?>"><?php echo $ThemeSet['Profile']; ?></a>
579 <?php if(isset($ThemeSet['WWW'])&&$ThemeSet['WWW']!=null) {
580 echo $ThemeSet['LineDividerTopic']; ?><a href="<?php echo $User1Website; ?>"<?php echo $opennew; ?>><?php echo $ThemeSet['WWW']; ?></a><?php } echo $ThemeSet['LineDividerTopic']; ?><a href="<?php
581 if($User1ID>0&&$User1Hidden=="no"&&isset($ThemeSet['PM'])&&$ThemeSet['PM']!=null) {
582 echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=create&id=".$User1ID,$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); }
583 if(($User1ID<=0||$User1Hidden=="yes")&&isset($ThemeSet['PM'])&&$ThemeSet['PM']!=null) {
584 echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); }
585 ?>"><?php echo $ThemeSet['PM']; ?></a></span>
586 </td></tr>
587 <?php } ?>
588 </table></div>
589 </td></tr>
590 </table>
591 <?php } if($_GET['act']=="create") {
592 $SendMessageTo = null;
593 if($_GET['id']!=null&&$_GET['id']!=-1) {
594 $requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"id\"=%i", array($_GET['id']));
595 $reresult=sql_query($requery,$SQLStat);
596 $renum=sql_num_rows($reresult);
597 $rei=0;
598 while ($rei < $renum) {
599 $SendMessageTo = sql_result($reresult,$rei,"Name");
600 $SendMessageTo = htmlspecialchars($SendMessageTo, ENT_QUOTES, $Settings['charset']);
601 $SendToGroupID = sql_result($reresult,$rei,"GroupID");
602 ++$rei; } sql_free_result($reresult); }
603 if(!isset($renum)) { $renum = 0; }
604 if($renum==0) { $SendMessageTo = null; }
605 $QuoteReply = null; $QuoteDescription = null; $QuoteTitle = null;
606 if($_GET['post']!=null) {
607 if(isset($SendMessageTo)) {
608 $QuoteUserName = $SendMessageTo; }
609 if(!isset($SendMessageTo)) {
610 $QuoteUserName = "Unknown"; }
611 $query = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."messenger\" WHERE \"id\"=%i", array($_GET['post']));
612 $result=sql_query($query,$SQLStat);
613 $num=sql_num_rows($result);
614 $QuoteTitle=sql_result($result,0,"MessageTitle");
615 $MessageText=sql_result($result,0,"MessageText");
616 $QuoteReply = preg_replace("/\<br\>/", "<br />", nl2br($MessageText));
617 $QuoteDescription=sql_result($result,0,"Description");
618 $result=sql_query($query,$SQLStat);
619 $num=sql_num_rows($result);
620 $QuoteReply = remove_bad_entities($QuoteReply);
621 $QuoteDescription = str_replace("Re: ","",$QuoteDescription);
622 $QuoteDescription = "Re: ".$QuoteDescription;
623 $QuoteTitle = str_replace("Re: ","",$QuoteTitle);
624 $QuoteTitle = "Re: ".$QuoteTitle;
625 $QuoteReply = null; }
626 $UFID = rand_uuid("rand");
627 $_SESSION['UserFormID'] = $UFID;
629 <div class="Table1Border">
630 <?php if($ThemeSet['TableStyle']=="div") { ?>
631 <div class="TableRow1">
632 <span style="text-align: left;">
633 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=create",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">Seanding a Message</a></span></div>
634 <?php } ?>
635 <table class="Table1" id="MakeMessage">
636 <?php if($ThemeSet['TableStyle']=="table") { ?>
637 <tr class="TableRow1" id="MessageStart">
638 <td class="TableColumn1" colspan="2"><span style="text-align: left;">
639 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=create",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">Seanding a Message</a></span>
640 </td>
641 </tr><?php } ?>
642 <tr id="MakeMessageRow" class="TableRow2">
643 <td class="TableColumn2" colspan="2" style="width: 100%;">Making a Message</td>
644 </tr>
645 <tr class="TableRow3" id="MkMessage">
646 <td class="TableColumn3" style="width: 15%; vertical-align: middle; text-align: center;">
647 <div style="width: 100%; height: 160px; overflow: auto;">
648 <table style="width: 100%; text-align: center;"><?php
649 $renee_query=sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."smileys\" WHERE \"Display\"='yes'", array(null));
650 $renee_result=sql_query($renee_query,$SQLStat);
651 $renee_num=sql_num_rows($renee_result);
652 $renee_s=0; $SmileRow=0; $SmileCRow=0;
653 while ($renee_s < $renee_num) { ++$SmileRow;
654 $FileName=sql_result($renee_result,$renee_s,"FileName");
655 $SmileName=sql_result($renee_result,$renee_s,"SmileName");
656 $SmileText=sql_result($renee_result,$renee_s,"SmileText");
657 $SmileDirectory=sql_result($renee_result,$renee_s,"Directory");
658 $ShowSmile=sql_result($renee_result,$renee_s,"Display");
659 $ReplaceType=sql_result($renee_result,$renee_s,"ReplaceCI");
660 if($SmileRow==1) { ?><tr>
661 <?php } if($SmileRow<5) { ++$SmileCRow; ?>
662 <td><img src="<?php echo $SmileDirectory."".$FileName; ?>" style="vertical-align: middle; border: 0px; cursor: pointer;" title="<?php echo $SmileName; ?>" alt="<?php echo $SmileName; ?>" onclick="addsmiley('ReplyPost','&nbsp;<?php echo htmlspecialchars($SmileText, ENT_QUOTES, $Settings['charset']); ?>&nbsp;')" /></td>
663 <?php } if($SmileRow==5) { ++$SmileCRow; ?>
664 <td><img src="<?php echo $SmileDirectory."".$FileName; ?>" style="vertical-align: middle; border: 0px; cursor: pointer;" title="<?php echo $SmileName; ?>" alt="<?php echo $SmileName; ?>" onclick="addsmiley('ReplyPost','&nbsp;<?php echo htmlspecialchars($SmileText, ENT_QUOTES, $Settings['charset']); ?>&nbsp;')" /></td></tr>
665 <?php $SmileCRow=0; $SmileRow=0; }
666 ++$renee_s; }
667 if($SmileCRow<5&&$SmileCRow!=0) {
668 $SmileCRowL = 5 - $SmileCRow;
669 echo "<td colspan=\"".$SmileCRowL."\">&nbsp;</td></tr>"; }
670 echo "</table>";
671 sql_free_result($renee_result);
672 ?></div></td>
673 <td class="TableColumn3" style="width: 85%;">
674 <form style="display: inline;" method="post" id="MkReplyForm" action="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=sendmessage",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">
675 <table style="text-align: left;">
676 <tr style="text-align: left;">
677 <td style="width: 50%;"><label class="TextBoxLabel" for="SendMessageTo">Insert UserName:</label></td>
678 <td style="width: 50%;"><input maxlength="25" type="text" name="SendMessageTo" class="TextBox" id="SendMessageTo" size="20" value="<?php echo $SendMessageTo; ?>" /></td>
679 </tr><tr style="text-align: left;">
680 <td style="width: 50%;"><label class="TextBoxLabel" for="MessageName">Insert Message Name:</label></td>
681 <td style="width: 50%;"><input maxlength="30" type="text" name="MessageName" class="TextBox" id="MessageName" size="20" value="<?php echo $QuoteTitle; ?>" /></td>
682 </tr><tr style="text-align: left;">
683 <td style="width: 50%;"><label class="TextBoxLabel" for="MessageDesc">Insert Message Description:</label></td>
684 <td style="width: 50%;"><input maxlength="45" type="text" name="MessageDesc" class="TextBox" id="MessageDesc" size="20" value="<?php echo $QuoteDescription; ?>" /></td>
685 </tr><?php if($_SESSION['UserGroup']==$Settings['GuestGroup']) { ?><tr style="text-align: left;">
686 <td style="width: 50%;"><label class="TextBoxLabel" for="GuestName">Insert Guest Name:</label></td>
687 <?php if(!isset($_SESSION['GuestName'])) { ?>
688 <td style="width: 50%;"><input maxlength="25" type="text" name="GuestName" class="TextBox" id="GuestName" size="20" /></td>
689 <?php } if(isset($_SESSION['GuestName'])) { ?>
690 <td style="width: 50%;"><input maxlength="25" type="text" name="GuestName" class="TextBox" id="GuestName" size="20" value="<?php echo $_SESSION['GuestName']; ?>" /></td>
691 <?php } ?></tr><?php } ?>
692 </table>
693 <table style="text-align: left;">
694 <tr style="text-align: left;">
695 <td style="width: 100%;">
696 <label class="TextBoxLabel" for="Message">Insert Your Message:</label><br />
697 <textarea rows="10" name="Message" id="Message" cols="40" class="TextBox"><?php echo $QuoteReply; ?></textarea><br />
698 <?php if($_SESSION['UserGroup']==$Settings['GuestGroup']&&$Settings['captcha_guest']=="on") { ?>
699 <label class="TextBoxLabel" for="signcode"><img src="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=MkCaptcha",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>" alt="CAPTCHA Code" title="CAPTCHA Code" /></label><br />
700 <input maxlength="25" type="text" class="TextBox" name="signcode" size="20" id="signcode" value="Enter SignCode" /><br />
701 <?php } ?>
702 <input type="hidden" name="act" value="sendmessages" style="display: none;" />
703 <?php if($_SESSION['UserGroup']!=$Settings['GuestGroup']) { ?>
704 <input type="hidden" name="GuestName" value="null" style="display: none;" />
705 <?php } ?>
706 <input type="submit" class="Button" value="Send Message" name="send_message" />
707 <input type="hidden" style="display: none;" name="fid" value="<?php echo $UFID; ?>" />
708 <input type="reset" value="Reset Form" class="Button" name="Reset_Form" />
709 </td></tr></table>
710 </form></td></tr>
711 <tr id="MkReplyEnd" class="TableRow4">
712 <td class="TableColumn4" colspan="2">&nbsp;</td>
713 </tr>
714 </table></div>
715 <?php } if($_GET['act']=="sendmessage"&&$_POST['act']=="sendmessages") {
716 $REFERERurl = parse_url($_SERVER['HTTP_REFERER']);
717 $URL['REFERER'] = $REFERERurl['host'];
718 $URL['HOST'] = $_SERVER["SERVER_NAME"];
719 $REFERERurl = null;
720 if(!isset($_POST['SendMessageTo'])) { $_POST['SendMessageTo'] = null; }
721 if(!isset($_POST['MessageName'])) { $_POST['MessageName'] = null; }
722 if(!isset($_POST['MessageDesc'])) { $_POST['MessageDesc'] = null; }
723 if(!isset($_POST['Message'])) { $_POST['Message'] = null; }
724 if(!isset($_POST['GuestName'])) { $_POST['GuestName'] = null; }
725 if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
726 $Settings['captcha_guest']=="on") {
727 require($SettDir['inc']."captcha.php"); }
729 <div class="Table1Border">
730 <?php if($ThemeSet['TableStyle']=="div") { ?>
731 <div class="TableRow1">
732 <span style="text-align: left;">
733 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=sendmessage",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">Making a Message</a></span></div>
734 <?php } ?>
735 <table class="Table1">
736 <?php if($ThemeSet['TableStyle']=="table") { ?>
737 <tr class="TableRow1">
738 <td class="TableColumn1"><span style="text-align: left;">
739 <?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker($exfile['messenger'],$Settings['file_ext'],"act=sendmessage",$Settings['qstr'],$Settings['qsep'],$prexqstr['messenger'],$exqstr['messenger']); ?>">Making a Message</a></span>
740 </td>
741 </tr><?php } ?>
742 <tr class="TableRow2">
743 <th class="TableColumn2" style="width: 100%; text-align: left;">&nbsp;Make Message: </th>
744 </tr>
745 <tr class="TableRow3">
746 <td class="TableColumn3">
747 <table style="width: 100%; height: 25%; text-align: center;">
748 <?php if (pre_strlen($_POST['SendMessageTo'])>="25") { $Error="Yes"; ?>
749 <tr>
750 <td><span class="TableMessage">
751 <br />Send to user name too big.<br />
752 </span>&nbsp;</td>
753 </tr>
754 <?php } if($_POST['fid']!=$_SESSION['UserFormID']) { $Error="Yes"; ?>
755 <tr>
756 <td><span class="TableMessage">
757 <br />Sorry the referering url dose not match our host name.<br />
758 </span>&nbsp;</td>
759 </tr>
760 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
761 $Settings['captcha_guest']=="on") {
762 if (PhpCaptcha::Validate($_POST['signcode'])) {
763 //echo 'Valid code entered';
764 } else { $Error="Yes"; ?>
765 <tr>
766 <td><span class="TableMessage">
767 <br />Invalid code entered<br />
768 </span>&nbsp;</td>
769 </tr>
770 <?php } } if ($_POST['SendMessageTo']==null) { $Error="Yes"; ?>
771 <tr>
772 <td><span class="TableMessage">
773 <br />You need to enter a user name to send message to.<br />
774 </span>&nbsp;</td>
775 </tr>
776 <?php } if (pre_strlen($_POST['MessageName'])>="30") { $Error="Yes"; ?>
777 <tr>
778 <td><span class="TableMessage">
779 <br />Message Name is too big.<br />
780 </span>&nbsp;</td>
781 </tr>
782 <?php } if (pre_strlen($_POST['MessageDesc'])>="45") { $Error="Yes"; ?>
783 <tr>
784 <td><span class="TableMessage">
785 <br />Message Description is too big.<br />
786 </span>&nbsp;</td>
787 </tr>
788 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
789 pre_strlen($_POST['GuestName'])>="25") { $Error="Yes"; ?>
790 <tr>
791 <td><span class="TableMessage">
792 <br />You Guest Name is too big.<br />
793 </span>&nbsp;</td>
794 </tr>
795 <?php } if ($Settings['TestReferer']=="on") {
796 if ($URL['HOST']!=$URL['REFERER']) { $Error="Yes"; ?>
797 <tr>
798 <td><span class="TableMessage">
799 <br />Sorry the referering url dose not match our host name.<br />
800 </span>&nbsp;</td>
801 </tr>
802 <?php } }
803 $_POST['MessageName'] = stripcslashes(htmlspecialchars($_POST['MessageName'], ENT_QUOTES, $Settings['charset']));
804 //$_POST['MessageName'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['MessageName']);
805 $_POST['MessageName'] = remove_spaces($_POST['MessageName']);
806 $_POST['MessageDesc'] = stripcslashes(htmlspecialchars($_POST['MessageDesc'], ENT_QUOTES, $Settings['charset']));
807 //$_POST['MessageDesc'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['MessageDesc']);
808 $_POST['MessageDesc'] = remove_spaces($_POST['MessageDesc']);
809 $_POST['SendMessageTo'] = stripcslashes(htmlspecialchars($_POST['SendMessageTo'], ENT_QUOTES, $Settings['charset']));
810 //$_POST['SendMessageTo'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['SendMessageTo']);
811 $_POST['SendMessageTo'] = remove_spaces($_POST['SendMessageTo']);
812 $_POST['GuestName'] = stripcslashes(htmlspecialchars($_POST['GuestName'], ENT_QUOTES, $Settings['charset']));
813 //$_POST['GuestName'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['GuestName']);
814 $_POST['GuestName'] = remove_spaces($_POST['GuestName']);
815 $_POST['Message'] = stripcslashes(htmlspecialchars($_POST['Message'], ENT_QUOTES, $Settings['charset']));
816 //$_POST['Message'] = preg_replace("/&amp;#(x[a-f0-9]+|[0-9]+);/i", "&#$1;", $_POST['Message']);
817 //$_POST['Message'] = remove_spaces($_POST['Message']);
818 $_POST['Message'] = remove_bad_entities($_POST['Message']);
819 if($_SESSION['UserGroup']==$Settings['GuestGroup']) {
820 if(isset($_POST['GuestName'])&&$_POST['GuestName']!=null) {
821 if($cookieDomain==null) {
822 setcookie("GuestName", $_POST['GuestName'], time() + (7 * 86400), $cbasedir); }
823 if($cookieDomain!=null) {
824 if($cookieSecure===true) {
825 setcookie("GuestName", $_POST['GuestName'], time() + (7 * 86400), $cbasedir, $cookieDomain, 1); }
826 if($cookieSecure===false) {
827 setcookie("GuestName", $_POST['GuestName'], time() + (7 * 86400), $cbasedir, $cookieDomain); } }
828 $_SESSION['GuestName']=$_POST['GuestName']; } }
829 /* <_< iWordFilter >_>
830 by Kazuki Przyborowski - Cool Dude 2k */
831 $katarzynaqy=sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."wordfilter\"", array(null));
832 $katarzynart=sql_query($katarzynaqy,$SQLStat);
833 $katarzynanm=sql_num_rows($katarzynart);
834 $katarzynas=0;
835 while ($katarzynas < $katarzynanm) {
836 $Filter=sql_result($katarzynart,$katarzynas,"FilterWord");
837 $Replace=sql_result($katarzynart,$katarzynas,"Replacement");
838 $CaseInsensitive=sql_result($katarzynart,$katarzynas,"CaseInsensitive");
839 if($CaseInsensitive=="on") { $CaseInsensitive = "yes"; }
840 if($CaseInsensitive=="off") { $CaseInsensitive = "no"; }
841 if($CaseInsensitive!="yes"||$CaseInsensitive!="no") { $CaseInsensitive = "no"; }
842 $WholeWord=sql_result($katarzynart,$katarzynas,"WholeWord");
843 if($WholeWord=="on") { $WholeWord = "yes"; }
844 if($WholeWord=="off") { $WholeWord = "no"; }
845 if($WholeWord!="yes"&&$WholeWord!="no") { $WholeWord = "no"; }
846 $Filter = preg_quote($Filter, "/");
847 if($CaseInsensitive!="yes"&&$WholeWord=="yes") {
848 $_POST['Message'] = preg_replace("/\b(".$Filter.")\b/", $Replace, $_POST['Message']);
849 $_POST['MessageDesc'] = preg_replace("/\b(".$Filter.")\b/", $Replace, $_POST['MessageDesc']); }
850 if($CaseInsensitive=="yes"&&$WholeWord=="yes") {
851 $_POST['Message'] = preg_replace("/\b(".$Filter.")\b/i", $Replace, $_POST['Message']);
852 $_POST['MessageDesc'] = preg_replace("/\b(".$Filter.")\b/i", $Replace, $_POST['MessageDesc']); }
853 if($CaseInsensitive!="yes"&&$WholeWord!="yes") {
854 $_POST['Message'] = preg_replace("/".$Filter."/", $Replace, $_POST['Message']);
855 $_POST['MessageDesc'] = preg_replace("/".$Filter."/", $Replace, $_POST['MessageDesc']); }
856 if($CaseInsensitive=="yes"&&$WholeWord!="yes") {
857 $_POST['Message'] = preg_replace("/".$Filter."/i", $Replace, $_POST['Message']);
858 $_POST['MessageDesc'] = preg_replace("/".$Filter."/i", $Replace, $_POST['MessageDesc']); }
859 ++$katarzynas; } sql_free_result($katarzynart);
860 $lonewolfqy=sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."restrictedwords\" WHERE \"RestrictedMessageName\"='yes' or \"RestrictedUserName\"='yes'", array(null));
861 $lonewolfrt=sql_query($lonewolfqy,$SQLStat);
862 $lonewolfnm=sql_num_rows($lonewolfrt);
863 $lonewolfs=0; $RMatches = null; $RGMatches = null;
864 while ($lonewolfs < $lonewolfnm) {
865 $RWord=sql_result($lonewolfrt,$lonewolfs,"Word");
866 $RCaseInsensitive=sql_result($lonewolfrt,$lonewolfs,"CaseInsensitive");
867 if($RCaseInsensitive=="on") { $RCaseInsensitive = "yes"; }
868 if($RCaseInsensitive=="off") { $RCaseInsensitive = "no"; }
869 if($RCaseInsensitive!="yes"||$RCaseInsensitive!="no") { $RCaseInsensitive = "no"; }
870 $RWholeWord=sql_result($lonewolfrt,$lonewolfs,"WholeWord");
871 if($RWholeWord=="on") { $RWholeWord = "yes"; }
872 if($RWholeWord=="off") { $RWholeWord = "no"; }
873 if($RWholeWord!="yes"||$RWholeWord!="no") { $RWholeWord = "no"; }
874 $RestrictedMessageName=sql_result($lonewolfrt,$lonewolfs,"RestrictedMessageName");
875 if($RestrictedMessageName=="on") { $RestrictedMessageName = "yes"; }
876 if($RestrictedMessageName=="off") { $RestrictedMessageName = "no"; }
877 if($RestrictedMessageName!="yes"||$RestrictedMessageName!="no") { $RestrictedMessageName = "no"; }
878 $RestrictedUserName=sql_result($lonewolfrt,$lonewolfs,"RestrictedUserName");
879 if($RestrictedUserName=="on") { $RestrictedUserName = "yes"; }
880 if($RestrictedUserName=="off") { $RestrictedUserName = "no"; }
881 if($RestrictedUserName!="yes"||$RestrictedUserName!="no") { $RestrictedUserName = "no"; }
882 $RWord = preg_quote($RWord, "/");
883 if($RCaseInsensitive!="yes"&&$RWholeWord=="yes") {
884 if($RestrictedMessageName=="yes") {
885 $RMatches = preg_match("/\b(".$RWord.")\b/", $_POST['MessageName']);
886 if($RMatches==true) { break 1; } }
887 if($RestrictedUserName=="yes") {
888 $RGMatches = preg_match("/\b(".$RWord.")\b/", $_POST['GuestName']);
889 if($RGMatches==true) { break 1; } } }
890 if($RCaseInsensitive=="yes"&&$RWholeWord=="yes") {
891 if($RestrictedMessageName=="yes") {
892 $RMatches = preg_match("/\b(".$RWord.")\b/i", $_POST['MessageName']);
893 if($RMatches==true) { break 1; } }
894 if($RestrictedUserName=="yes") {
895 $RGMatches = preg_match("/\b(".$RWord.")\b/i", $_POST['GuestName']);
896 if($RGMatches==true) { break 1; } } }
897 if($RCaseInsensitive!="yes"&&$RWholeWord!="yes") {
898 if($RestrictedMessageName=="yes") {
899 $RMatches = preg_match("/".$RWord."/", $_POST['MessageName']);
900 if($RMatches==true) { break 1; } }
901 if($RestrictedUserName=="yes") {
902 $RGMatches = preg_match("/".$RWord."/", $_POST['GuestName']);
903 if($RGMatches==true) { break 1; } } }
904 if($RCaseInsensitive=="yes"&&$RWholeWord!="yes") {
905 if($RestrictedMessageName=="yes") {
906 $RMatches = preg_match("/".$RWord."/i", $_POST['MessageName']);
907 if($RMatches==true) { break 1; } }
908 if($RestrictedUserName=="yes") {
909 $RGMatches = preg_match("/".$RWord."/i", $_POST['GuestName']);
910 if($RGMatches==true) { break 1; } } }
911 ++$lonewolfs; } sql_free_result($lonewolfrt);
912 $requery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."members\" WHERE \"Name\"='%s'", array($_POST['SendMessageTo']));
913 $reresult=sql_query($requery,$SQLStat);
914 $renum=sql_num_rows($reresult);
915 $rei=0;
916 while ($rei < $renum) {
917 $SendMessageToID = sql_result($reresult,$rei,"id");
918 $SendToGroupID = sql_result($reresult,$rei,"GroupID");
919 $gquery = sql_pre_query("SELECT * FROM \"".$Settings['sqltable']."groups\" WHERE \"id\"=%i", array($SendToGroupID));
920 $gresult=sql_query($gquery,$SQLStat);
921 $SendUserCanPM=sql_result($gresult,0,"CanPM");
922 $SendUserCanPM = strtolower($SendUserCanPM);
923 if($SendUserCanPM!="yes"&&$SendUserCanPM!="no") {
924 $SendUserCanPM = "no"; }
925 sql_free_result($gresult);
926 ++$rei; } sql_free_result($reresult);
927 if($renum==0) { $Error="Yes"; ?>
928 <tr>
929 <td><span class="TableMessage">
930 <br />Cound not find users name.<br />
931 </span>&nbsp;</td>
932 </tr>
933 <?php } if ($_POST['MessageName']==null) { $Error="Yes"; ?>
934 <tr>
935 <td><span class="TableMessage">
936 <br />You need to enter a Message Name.<br />
937 </span>&nbsp;</td>
938 </tr>
939 <?php } if ($_POST['MessageDesc']==null) { $Error="Yes"; ?>
940 <tr>
941 <td><span class="TableMessage">
942 <br />You need to enter a Message Description.<br />
943 </span>&nbsp;</td>
944 </tr>
945 <?php } if ($SendUserCanPM=="no") { $Error="Yes"; ?>
946 <tr>
947 <td><span class="TableMessage">
948 <br />User Name enter can not get messages.<br />
949 </span>&nbsp;</td>
950 </tr>
951 <?php } if ($_POST['Message']==null) { $Error="Yes"; ?>
952 <tr>
953 <td><span class="TableMessage">
954 <br />You need to enter a Message.<br />
955 </span>&nbsp;</td>
956 </tr>
957 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
958 $_POST['GuestName']==null) { $Error="Yes"; ?>
959 <tr>
960 <td><span class="TableMessage">
961 <br />You need to enter a Guest Name.<br />
962 </span>&nbsp;</td>
963 </tr>
964 <?php } if($_SESSION['UserGroup']==$Settings['GuestGroup']&&
965 $RGMatches==true) { $Error="Yes"; ?>
966 <tr>
967 <td><span class="TableMessage">
968 <br />This Guest Name is restricted to use.<br />
969 </span>&nbsp;</td>
970 </tr>
971 <?php } if($RMatches==true) { $Error="Yes"; ?>
972 <tr>
973 <td><span class="TableMessage">
974 <br />This Message Name is restricted to use.<br />
975 </span>&nbsp;</td>
976 </tr>
977 <?php } if ($Error=="Yes") {
978 redirect("refresh",$rbasedir.url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false),"4"); ?>
979 <tr>
980 <td><span class="TableMessage">
981 <br />Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to goto index page.<br />&nbsp;
982 </span><br /></td>
983 </tr>
984 <?php } if ($Error!="Yes") { $LastActive = GMTimeStamp();
985 if($_SESSION['UserGroup']==$Settings['GuestGroup']) { $User1Name = $_POST['GuestName']; }
986 if($_SESSION['UserGroup']!=$Settings['GuestGroup']) { $User1Name = $_SESSION['MemberName']; }
987 $User1IP=$_SERVER['REMOTE_ADDR'];
988 $query = sql_pre_query("INSERT INTO \"".$Settings['sqltable']."messenger\" (\"SenderID\", \"ReciverID\", \"GuestName\", \"MessageTitle\", \"MessageText\", \"Description\", \"DateSend\", \"Read\", \"IP\") VALUES
989 (%i, %i, '%s', '%s', '%s', '%s', %i, %i, '%s')", array($_SESSION['UserID'],$SendMessageToID,$_SESSION['MemberName'],$_POST['MessageName'],$_POST['Message'],$_POST['MessageDesc'],$LastActive,0,$User1IP));
990 sql_query($query,$SQLStat);
991 $messageid = sql_get_next_id($Settings['sqltable'],"messenger",$SQLStat);
992 ?><tr>
993 <td><span class="TableMessage"><br />
994 Message sent to user <?php echo $_POST['SendMessageTo']; ?>.<br />
995 Click <a href="<?php echo url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']); ?>">here</a> to go back to index.<br />&nbsp;
996 </span><br /></td>
997 </tr>
998 <?php } ?>
999 </table>
1000 </td></tr>
1001 <tr class="TableRow4">
1002 <td class="TableColumn4">&nbsp;</td>
1003 </tr>
1004 </table></div>
1005 <?php } ?>
1006 <div class="DivMessages">&nbsp;</div>