Файл: include/stena.php
Строк: 328
<?php
if($authorize) {
if(empty($_GET['stenid']))
{
$sten = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE username='".$username."'"));
$stenid=$sten['id'];
} else {
$stenid=intval($_GET['stenid']);
}
switch($_GET['d'])
{
default:
$num = mysql_query("SELECT * FROM `users` WHERE `id`='$stenid'");
$array = mysql_fetch_array($num);
$usersten=$array['username'];
if($version == "xhtml")
{
$thisPageSize = 1500;
}
else
{
$thisPageSize = 1500;
}
if($version == "wml")
{
header("content-type: text/vnd.wap.wml; charset=utf-8");
header("Cache-Control: no-cache");
echo(doctype("Личная стена ".$usersten).$tag);
echo('<a href="./?p=29&d=1&stenid='.$stenid.'&sid='.$sid.'&v=wml">Написать на стене</a><br />
<a href="./?p=29&v=wml&sid='.$sid.'&rnd='.$ref."">Начало</a><br /><br />rn");
if( isset($_GET['clear']) AND ($username == $usersten))
{
echo("Вы уверены, что хотите удалить все сообщения?rn");
echo("<a href='./?p=29&stenid=".$stenid."&d=4&v=wml&sid=$sid'>Да</a> | <a href='./?p=29&stenid=".$stenid."&v=wml&sid=$sid'>Нет</a><br />rn");
}
$sql = "SELECT *
FROM stena
WHERE stenid = '".$stenid."'
ORDER BY `id` DESC ";
$count = mysql_num_rows(mysql_query($sql));
$start = intval($_GET['s']);
if(!empty($start))
{
$limit = "LIMIT ".$start.", ".abs($count - $start);
$int = $start;
}
else
{
$int = 0;
}
$sql .= $limit;
$query = mysql_query($sql);
while($mess = mysql_fetch_assoc($query))
{
static $s;
echo(date("d.m H:i", $mess['time']).']');
if($mess['mod'] == "o" AND preg_match("|^$username|iu", $mess['name']))
{
echo("<b>Я</b>");
if($username == $usersten OR ($status == "moderator" or $status == "admin")){
echo(' <a href="./?p=29&id='.$mess['id'].'&v='.$version.'&sid='.$sid."&d=5">X</a>rn");
}
echo("<br />rn");
}
else
{
echo("<b><a href="./?p=24&v=wml&sid=".$sid."&d=1&uid=".username2id($mess['name'])."">".$mess['name']."</a></b>");
if($username == $usersten OR ($status == "moderator" or $status == "admin")){
echo(' <a href="./?p=29&id='.$mess['id'].'&v='.$version.'&sid='.$sid."&d=5">X</a>rn");
}
echo("<br />rn");
}
echo(nl2br($mess['mess'])."<br />rn");
$int++;
$s += strlen($mess['time'].$mess['name'].$mess['name'].$mess['mess']);
if($s + $thisPageSize + (110 * abs($int - $start)) > $pageSize)
{
if($int != $count)
{
$next = $int;
}
break;
}
}
echo("- - - - <br />rn");
if(!empty($next))
{
echo("<a accesskey="3" href="" . $_SERVER['PHP_SELF'] . "?p=29&stenid=".$stenid."&v=wml&sid=".$sid."&s=".$next."">Дальше...(3)</a><br />rn");
}
if($usersten == $username){
echo("<a href='./?p=29&stenid=".$stenid."&sid=$sid&v=wml&clear=1'>Очистить личную стену</a><br />rn");
}
echo("<a href="./?p=0&v=wml&sid=".$sid."" accesskey="1">В форум (1)</a>rn");
echo($tagC."</p></card></wml>");
} elseif($version == "xhtml")
{
header("Content-type: text/html; charset=utf-8");
header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-cache, must-relative");
echo('<html>
<head>
<title>Личная стена '.$usersten.'</title>
</head>
<body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
<table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
<tr><td align="center" bgcolor="'.$style['title'].'">
<font color="#FFFFFF"><b>Личная стена '.$usersten.'</b></font>
</td></tr>
<tr><td bgcolor="'.$style['bottom'].'">'.$tag.'
<a href="./?p=29&d=1&stenid='.$stenid.'&v=xhtml&sid='.$sid.'">Написать на стене</a><br />
<a href="./?p=29&stenid='.$stenid.'&v=xhtml&sid='.$sid.'&rnd='.$ref.'">Начало</a><br />');
if( isset($_GET['clear']) AND $usersten == $username)
{
echo("Вы уверены, что хотите удалить все сообщения?rn");
echo("<a href='./?p=29&stenid=".$stenid."&d=4&v=html&sid=$sid'>Да</a> | <a href='./?p=29&stenid=".$stenid."&v=html&sid=$sid'>Нет</a><br />rn");
}
echo($tagC.'</td></tr>
<tr bgcolor="'.$style['text'].'"><td>'.$tag);
$sql = "SELECT *
FROM stena
WHERE stenid = '".$stenid."'
ORDER BY `id` DESC ";
$count = mysql_num_rows(mysql_query($sql));
$start = intval($_GET['s']);
if(!empty($start))
{
$limit = "LIMIT ".$start.", ".abs($count - $start);
$int = $start;
}
else
{
$int = 0;
}
$sql .= $limit;
$query = mysql_query($sql);
while($mess = mysql_fetch_assoc($query))
{
static $s;
echo(date("d.m H:i", $mess['time']).']');
if($mess['mod'] == "o" AND preg_match("|^$username|iu", $mess['name']))
{
echo("<b>Я</b>");
if($username == $usersten OR ($status == "moderator" or $status == "admin")){
echo(' <a href="./?p=29&id='.$mess['id'].'&v='.$version.'&sid='.$sid."&d=5">X</a>rn");
}
echo("<br />rn");
}
else
{
echo("<b><a href="./?p=24&v=xhtml&sid=".$sid."&d=1&uid=".username2id($mess['name'])."">".$mess['name']."</a></b>");
if($username == $usersten OR ($status == "moderator" or $status == "admin")){
echo(' <a href="./?p=29&id='.$mess['id'].'&v='.$version.'&sid='.$sid."&d=5">X</a>rn");
}
echo("<br />rn");
}
echo(nl2br($mess['mess'])."<br />rn");
$int++;
$s += strlen($mess['time'].$mess['name'].$mess['name'].$mess['mess']);
if($s + $thisPageSize + (110 * abs($int - $start)) > $pageSize)
{
if($int != $count)
{
$next = $int;
}
break;
}
}
echo($tagC.'</td></tr>
<tr bgcolor="'.$style['bottom'].'"><td>'.$tag);
if(!empty($next))
{
echo("<a href="" . $_SERVER['PHP_SELF'] . "?p=29&stenid=".$stenid."&v=xhtml&sid=".$sid."&s=".$next."">Дальше...</a><br />rn");
}
if($usersten == $username){
echo("<a href='./?p=29&stenid=".$stenid."&sid=$sid&v=xhtml&clear=1'>Очистить личную стену</a><br />rn");
}
echo("<a href="./?p=0&v=xhtml&sid=".$sid."">В форум</a>rn");
echo($tagC.'</td></tr></table>
</body></html>');
}
if($usersten == $username){
mysql_query("UPDATE stena SET s=0 WHERE stenid='".$stenid."'");
}
break;
case 1:
$sten = mysql_query("SELECT * FROM users WHERE id = '".$stenid."'");
$stenrow = mysql_fetch_array($sten);
$usersten=$stenrow['username'];
if($version == "wml")
{
header("content-type: text/vnd.wap.wml; charset=utf-8");
header("Cache-Control: no-cache");
echo(doctype("Личная стена ".$usersten).$tag);
echo("<br />" . $tag."Сообщение:".$tagC." <input type="text" name="mess" /><br />
<anchor>[Написать на личной стене]
<go href="./?p=29&stenid=".$stenid."&v=wml&sid=".$sid."&d=2" method="post">
<postfield name="mess" value="$(mess)" />
<postfield name="stenid" value="$(stenid)".$stenid."" />
</go></anchor><br />
".$tag."- - - - <br />
<anchor>Назад<prev /></anchor><br />
<a href="./?p=29&stenid=".$stenid."&v=wml&sid=".$sid."&rnd=".$ref."">Стена</a>
".$tagC."</p>
</card></wml>");
} elseif($version == "xhtml")
{
header("Content-type: text/html; charset=utf-8");
header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-cache, must-relative");
echo('<html>
<head>
<title>Личная стена '.$usersten.'</title>
</head>
<body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
<form action="./?p=29&stenid='.$stenid.'&v=xhtml&sid='.$sid.'&d=2" method="post">
<table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
<tr bgcolor="'.$style['title'].'"><td align="center" colspan="2">
<font color="#FFFFFF"><b>Личная стена '.$usersten.'</b></font>
<tr bgcolor="'.$style['bottom'].'">
<td colspan="2">');
echo("<tr bgcolor="".$style['text'].""><td>
".$tag."Сообщение:".$tagC."</td><td><textarea name="mess" cols="30" rows="5"></textarea></td></tr>
<tr bgcolor="".$style['text'].""><td align="center" colspan="2">
".$hidden."
<input type="submit" value="Написать на личной стене" /></td></tr>
<tr bgcolor="".$style['bottom'].""><td colspan="2">
$tag");
echo("
<a href='javascript:history.back(1)'>Назад</a><br/>
<a href="./?p=29&stenid=".$stenid."&v=xhtml&sid=".$sid."&rnd=".$ref."">Стена</a> $tagC
</td></tr></table>
</form>
</body></html>");
}
break;
case 2:
$mess = $_POST['mess'];
if($transl == "on")
{
$mess = translate($mess);
}
$mess = preg_replace("|[rn]+|", " rn", $mess);
$mess = preg_replace("|[n]+|", "n", $mess);
$mess = sql(htmlspecialchars(trim(cutString($mess, 1024))));
$mess = preg_replace_callback("|<(d{1,20})>|", "smile", $mess);
if($status == "admin" or $starus == "moderator")
{
$mess = preg_replace("|[url=(.*)](.*)[/url]|is", "<a href="go/?\1">\2</a>", $mess);
$mess = preg_replace("|[b](.*)[/b]|i", "<b>\1</b>", $mess);
$mess = preg_replace("|[i](.*)[/i]|i", "<i>\1</i>", $mess);
}
if(strpos($mess, "http://") !== false)
{
if($status == "admin" or $starus == "moderator")
{
$mess = preg_replace("|[url=(.*)](.*)[/url]|is", "<a href="go/?\1">\2</a>", $mess);
}
$mess = preg_replace("|(http://[^s]+)|i", "<a href="go/?\1">\1</a>", $mess);
}
////////////////////////////////////////////////////////Антифлуд
$R = mysql_query("SELECT * FROM `stena`
WHERE `stenid`='".$stenid."'");
$aR = mysql_fetch_array($R);
$messR=$aR['mess'];
////////////////////////////////////////////////////////
if($status == "admin") $ip = "127.0.0.1"; else $ip = empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['REMOTE_ADDR'] : $_SERVER['HTTP_X_FORWARDED_FOR'] ;
$ip = htmlspecialchars(sql($ip));
if($status == "admin") $user = "Admin"; else $user = htmlspecialchars(sql($_SERVER['HTTP_USER_AGENT']));
if(ban($username, $user, $ip))
{
if($version == "wml")
{
header('Content-type: text/vnd.wap.wml; charset=utf-8');
header("Cache-Control: no-cache");
echo(doctype("Ошибка").$tag.'
Ошибка! Вы заблокированы модератором '.$modername.'. <br />
Причина: '.$banmess.'! <br />
-
<a href="'.$_SERVER['HTTP_REFERER'].'">Назад</a><br />
<a href="./?p=0&v=wml&sid='.$sid.'">Форумы</a>
'.$tagC.'</p></card></wml>');
} elseif($version == "xhtml")
{
header("Content-type: text/html; charset=utf-8");
header("Last-Modified:".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-cache, must-relative");
echo('<html>
<head>
<title>Ошибка</title>
</head>
<body bgcolor="'.$style['background'].'" link="'.$style['link'].'" vlink="'.$style['link'].'" text="#000000">
<table align="center" border="0" cellspacing="1" cellpadding="5" width="350">
<tr align="center" bgcolor="'.$style['title'].'"><td colspan="2">
<font color="#FFFFFF"><b>Ошибка</b></font>
<tr bgcolor="'.$style['text'].'"><td colspan="2">'.$tag.'Вы заблокированы модератором '.$modername.'</td></tr>
<tr bgcolor="'.$style['text'].'"><td>'.$tag.'Причина:'.$tagC.'</td><td>'.$tag.$banmess.$tagC.'</td></tr>
<tr bgcolor="'.$style['bottom'].'"><td colspan="2">'.$tag.'
<a href="./?p=0&v=xhtml&sid='.$sid.'">Форумы</a>
'.$tagC.'</td></tr></table>
</body></html>');
}
}
else
{
if(!empty($_POST['mess']) && strtolower($mess) != strtolower($messR))
{
if(mysql_result(mysql_query("SELECT COUNT(*) FROM stena WHERE name='".$username."'"), 0) > 30)
{
mysql_query("DELETE FROM stena WHERE name='".$username."' ORDER BY id LIMIT 1");
}
mysql_query("INSERT INTO stena VALUES(0, '".$mess."', '".$stenid."', '".$username."', ".time().", '1')");
}
header("Location: ".$_SERVER['PHP_SELF'].'?p=29&stenid='.$stenid.'&v='.$version.'&sid='.$sid.'&rnd='.$ref);
}
break;
case 4:
$num = mysql_query("SELECT * FROM `users` WHERE `id`='$stenid'");
$array = mysql_fetch_array($num);
$usersten=$array['username'];
if($username == $usersten){
mysql_query("DELETE FROM stena WHERE stenid = '$stenid'");
}
header("Location: ".$_SERVER['PHP_SELF'].'?p=29&stenid='.$stenid.'&v='.$version.'&sid='.$sid.'&rnd='.$ref);
break;
case 5:
if($username == $usersten OR ($status == "moderator" or $status == "admin")){
if(!mysql_result(mysql_query("SELECT COUNT(*) FROM `stena` WHERE `id`=".intval($_GET['id'])), 0))
{
header("Location: ".$forumdir.'p=29&v='.$version.'&sid='.$sid.'&stenid='.$_GET['stenid'].'&s='.$_GET['s']);
} else
{
mysql_query("DELETE FROM `stena` WHERE `id`=".intval($_GET['id']));
header("Location: ".$forumdir.'p=29&v='.$version.'&sid='.$sid.'&stenid='.$_GET['stenid'].'&s='.$_GET['s']);
}
}
break;
}
}
?>