Вход Регистрация
Файл: users/chat/index.php
Строк: 867
<?
require_once ("../../core/cuctema/core.php");
$kr ' | ';
if(isset(
$_GET['room/show'])) {
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `type` = 'room' AND `id` = '".intval($_GET['room/show'])."'"),0)==0) {
$err[]="Ошибка!
Комната не найдена или доступ к ней для Вас закрыт!"
;
$set['title'] = "Error!";
require_once (
"../../core/cuctema/head.php");
title();
aut();
err();

require_once (
"../../core/cuctema/foot.php");
exit();
}
$room=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `type` = 'room' AND `id` = '".intval($_GET['room/show'])."'"));

// Приход в комнату, уведомление о этом

mysql_query("DELETE FROM `chat_who` WHERE `time` < '".($time-120)."'");
if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_who` WHERE `id_user` = '$user[id]' AND `id_room` = '$room[id]'"),0)==&& isset($user))
{
mysql_query("DELETE FROM `chat_who` WHERE `id_user` = '$user[id]'");
mysql_query("INSERT INTO `chat_who` (`id_user`, `time`,  `id_room`) values('$user[id]', '$time', '$room[id]')");
$message="[b]$user[nick][/b] вош".($user['pol']==1?'eл':'ла')." в комнату";
$lpost=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id_user` = '2' AND `id_room` = '$room[id]' AND `type` = 'post' ORDER BY `time` DESC LIMIT 1"));
if (
$lpost['message']!=$message)mysql_query("INSERT INTO `chat` (`id_user`, `time`, `message`, `id_room`, `type`) values('0', '$time', '$message', '$room[id]', 'post')");
else 
mysql_query("UPDATE `chat` SET `time` = '$time' WHERE `id` = '$lpost[id]'");
}
elseif(isset(
$user))mysql_query("UPDATE `chat_who` SET `time` = '$time' WHERE `id_user` = '$user[id]' AND `id_room` = '$room[id]'");

// Выдаем оповещение о том, что вас киkнули

if(mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_kick` WHERE `id_room` = '$room[id]' AND `id_user`='$user[id]' AND `time` > '$time' LIMIT 1"),0)==1) {
$set['title'] = "Чат - Error!";
require_once (
"../../core/cuctema/head.php");
title();
aut();
echo 
"Вы нарушили правила общения в Чате (комната "<a href='/users/chat/?room/show=$room[id]'>".htmlspecialchars($room['name'])."</a>"), за что Вам закрыт доступ  к данной комнате!";
require_once (
"../../core/cuctema/foot.php");
exit();
}


// кто здесь?



if(isset($_GET['who_there']))
{
$set['title'] = "Чат - ".htmlspecialchars($room['name'])." - Кто здесь?";
require_once (
"../../core/cuctema/head.php");
title();
aut();
$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_who` WHERE `id_room` = '$room[id]'"), 0);
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=$set['p_str']*$page-$set['p_str'];
$q mysql_query("SELECT * FROM `chat_who` WHERE `id_room` = '$room[id]' ORDER BY `time` DESC LIMIT $start$set[p_str]");
echo 
"<table class='post'>n";
if (
$k_post==0)
{

echo 
'<div class="main123">';
echo 
"В комнате "$room[name]" никого нет !n";
echo 
"  </div>n";

}
while (
$ank mysql_fetch_array($q))
{
$post=get_user($ank['id_user']);
echo 
"  <div class='main123'>n";
echo 
"<a href='/info.php?id=$post[id]'>$post[nick]</a> ".online($post['id']);
echo 
"</div>n";
}
echo 
"</table>n";
echo 
"<div class='menu123'>&raquo; <a href='?room/show=$room[id]'>В комнату</a></div>n";
if (
$k_page>1)str("?room/show=$room[id]&who_there&",$k_page,$page); // Вывод страниц
require_once ("../../core/cuctema/foot.php");
exit();
}

// ответ на сообщение



if(isset($_GET['reply']))
{
$komm=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['reply'])."' AND `id_room` = '$room[id]' AND `type` = 'post' LIMIT 1"));
$ank=get_user($komm['id_user']);
if(
$user['id']!=$ank['id'])
{
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id` = '".intval($_GET['reply'])."' AND `id_room` = '$room[id]' LIMIT 1"),0)==0)
{
$set['title'] = "Чат - Error!";
require_once (
"../../core/cuctema/head.php");
title();
aut();
echo 
"Комментарий не найденn";
require_once (
"../../core/cuctema/foot.php");
exit();
}
$set['title'] = "Чат - ".htmlspecialchars($room['name'])." - Ответить";
require_once (
"../../core/cuctema/head.php");
title();
aut();
echo 
"<table class='post'>n";
echo 
"<tr>n";
echo 
"<td class='icon48'>n";
echo 
avatar($ank['id']);
echo 
"</td>n";
echo 
"<td class='p_t'>";
echo 
"<a href='/info.php?id=$ank[id]'>$ank[nick]</a> ".online($ank['id']);
echo 
"<br />n";
echo 
output_text($komm['message'])."n";
echo 
"</td>n";
echo 
"</tr>n";
echo 
"</table>n";
echo 
"<form method='post' name='message' action='?room/show=$room[id]' >n";
echo 
"Сообщение (1024 знаков)<br /><textarea name='message'></textarea><br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
if (
$user['set_translit']==1)echo "<label><input type='checkbox' 
name='translit' value='1' /> Транслит</label><br />n"
;
echo 
"<label><input type='checkbox' 
name='private' value='1' /> Приватно</label><br />n"
;
echo 
"<input type='hidden' name='reply' value='$ank[id]'>";
echo 
"<input type='hidden' name='komm_reply' value='$komm[id]'>";
echo 
"<input value='Отправить' type='submit' name='submited'/> <a href='?room/show=$room[id]'>Назад</a>n";
echo 
"</form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}




// редактирование комментария




if(isset($_GET['edit']))
{
$komm=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['edit'])."' AND `id_room` = '$room[id]' AND `type` = 'post' LIMIT 1"));
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id` = '$komm[id]' LIMIT 1"),0)==0)
{
$set['title'] = "Чат - Error!";
require_once (
"../../core/cuctema/head.php");
title();
aut();
echo 
"Комментарий не найден";
require_once (
"../../core/cuctema/foot.php");
exit();
}
$ank=get_user($komm['id_user']);
if(
$user['id']==$ank['id'] && $komm['time']>time()-600)
{
$set['title'] = "Чат - ".htmlspecialchars($room['name'])." - Редактировать";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(isset(
$_POST['submited']) && isset($_POST['message']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
$message=$_POST['message'];
if (isset(
$_POST['translit']) && $_POST['translit']==1)$message=translit($message);

$mat=antimat($message);
if (
$mat)$err[]='В тексте сообщения обнаружен мат: '.$mat;

if (
strlen2($message)>1024){$err[]='Сообщение слишком длинное';}
if (
strlen2($message)<1){$err[]='Короткое сообщение';}
$message=my_esc($message);

if(!isset(
$err)){
mysql_query("UPDATE `chat` SET `message` = '$message' WHERE `id` = '$komm[id]' AND `type` = 'post'");
header("Location:?room/show=$room[id]");
exit();
}
}
else 
err_rcfs();
}

echo 
"<form method='post' action='?room/show=$room[id]&edit=$komm[id]' name='message'>n";
echo 
"Сообщение (1024 знаков<br/><textarea name='message' rows='3' cols='23' >$komm[message]</textarea><br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
if (
$user['set_translit']==1)echo "<label><input type='checkbox' name='translit' value='1' /> Транслит</label><br />n";
echo 
"<input type='submit' name='submited' value='Сохранить'/> <a href='?room/show=$room[id]'>Назад</a><br /></form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}

// очистка kомнаты от сообщений

if(isset($_GET['clean']) && ($user['group_access']==|| $user['level']>=3))
{
$set['title'] = "Чат - ".htmlspecialchars($room['name'])." - Очистить";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(isset(
$_GET['all']))
{
if(isset(
$_POST['submited']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
mysql_query("DELETE FROM `chat` WHERE `id_room` = '$room[id]' AND `type` = 'post'");
header("Location:?room/show=$room[id]");
exit;
}
else 
err_rcfs();
}
else
{
echo 
"<form method='POST' action='?room/show=$room[id]&clean&all'>n";
echo 
"Очистить комнату <b>"$room[name]"</b> от сообщений?<br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Да'>n";
echo 
" <a href='?room/show=$room[id]'>Нет</a>";
echo 
"</form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}
else
{
if(isset(
$_POST['submited']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
$ch=intval($_POST['ch']);
$mn=intval($_POST['mn']);
$nt=$ch*$mn*3600;
$nt=$time-$nt;
mysql_query("DELETE FROM `chat` WHERE `time` < '$nt' AND `id_room` = '$room[id]' AND `type` = 'post'");
header("Location:?room/show=$room[id]");
exit;
}
else 
err_rcfs();
}
else
{
echo 
"<div class='foot'>n";
echo 
"<img src='/chat/img/cancel.png' /> <a href='?room/show=$room[id]&clean&all'>Очистить комнату полностю</a>n";
echo 
"<br/>n";
echo 
"</div>n";
echo 
"<form method='post' action='?room/show=$room[id]&clean&ok'>n";
echo 
"Будут удалены посты, написаные ... тому назад<br />n";
echo 
"<input type='text' name='ch' size='3' value='1' />n";
echo 
"<select name='mn'>n";
echo 
"<option value='1' selected='selected'>Часов</option>n";
echo 
"<option value='24'>Дней</option>n";
echo 
"<option value='168'>Недель</option>n";
echo 
"<option value='744'>Месяцев</option>n";
echo 
"</select><br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input value='Очистить' type='submit' name='submited' /> <a href='?room/show=$room[id]'>Назад</a></form>n";
}
require_once (
"../../core/cuctema/foot.php");
exit();
}
}

// kикнуть пользователя

if(isset($_GET['kick']) && mysql_result(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['mid'])."' AND `id_room` = '$room[id]' AND `id_user` = '".intval($_GET['kick'])."' LIMIT 1"),0)!=&& mysql_result(mysql_query("SELECT * FROM `user` WHERE `id` = '".intval($_GET['kick'])."' LIMIT 1"),0)!=0)
{
$komm=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['mid'])."' AND `id_room` = '$room[id]' AND `type` = 'post' LIMIT 1"));
$ank=get_user(intval($_GET['kick']));
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_kick` WHERE `id_room` = '$room[id]' AND `id_user`='".intval($_GET['kick'])."' AND `time` > '$time' LIMIT 1"),0)==1)$kick=1;else $kick=0;
if (
$user['group_access']==|| $user['level']>=3) {
if(isset(
$user) && $ank['id']!=$user['id'] && $ank['id']!=0)
{
if(isset(
$_POST['submited']))
{
if(
$kick==0) {
$msg=$_POST['msg'];
mysql_query("INSERT INTO `chat_kick` SET `id_room` = '$room[id]', `id_user` = '$ank[id]', `id_who` = '$user[id]', `time` = '".($time+3600)."'");
mysql_query("INSERT INTO `chat` SET `id_user` = '0', `time` = '$time', `message` = '[b]$user[nick][/b] кикнул пользователя [b]$ank[nick][/b].', `id_room` = '$room[id]', `type` = 'post'");
mysql_query("INSERT INTO `jurnal` (`id_user`, `id_kont`, `msg`, `time`) values('0', '$ank[id]', 'Вы были временно выгнаны с Чата (комната "<a href='/users/chat/?room/show=$room[id]'>".htmlspecialchars($room['name'])."</a>") за Ваше сообщение: $komm[message].
Причина: "
.my_esc($_POST['msg']).".
Пожалуйста, соблюдайте правила Чата!', '
$time')");
}
else {
mysql_query("DELETE FROM `chat_kick` WHERE `id_room` = '$room[id]' AND `id_user` = '".intval($_GET['kick'])."'");
mysql_query("INSERT INTO `chat` SET `id_user` = '0', `time` = '$time', `message` = '[b]$user[nick][/b] смиловался над [b]$ank[nick][/b].', `id_room` = '$room[id]', `type` = 'post'");
mysql_query("INSERT INTO `jurnal` (`id_user`, `id_kont`, `msg`, `time`) values('0', '$ank[id]', '[b]$user[nick][/b] смиловался над вами и теперь Вы можете общаться в Чате (комната "<a href='/users/chat/?room/show=$room[id]'>".htmlspecialchars($room['name'])."</a>").', '$time')");
}
header("Location: ?room/show=$room[id]");
exit();
}
$set['title'] = "Чат - ".htmlspecialchars($room['name'])." - Кикнуть";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(
$kick==0)
{
echo 
"<div class='main123'>";
echo 
"<a href='/info.php?id=$ank[id]'>$ank[nick]</a> ".online($ank['id']);
echo 
"<br />n";
echo 
output_text($komm['message'])."n";
echo 
"</div>n";
}
else {
echo 
"<div class='main123'>";
echo 
"Пользователь: ";
echo 
"<a href='/info.php?id=$ank[id]'>$ank[nick]</a>n";
echo 
"</div>n";
}
echo 
"<form method='POST'>n";
if(
$kick==0) {
echo 
"Причина (1000 симв)<br/>n";
echo 
"<textarea name='msg' cows='25' rows='5'></textarea><br/>n";
echo 
"<input type='submit' value='Кикнуть' name='submited'> <a href='?room/show=$room[id]'>Назад</a>";
}
else {
echo 
"<input type='submit' value='Смиловаться и венуть в Чат' name='submited'> <a href='?room/show=$room[id]'>Назад</a>";
}
echo 
"</form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}
}

// удалить комментарий

if (($user['group_access']==|| $user['level']>=3) && isset($_GET['delete']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id`='".intval($_GET['delete'])."' AND `id_room` = '$room[id]' AND `type` = 'post' LIMIT 1"),0)!=0)
{
mysql_query("DELETE FROM `chat` WHERE `id` = '".intval($_GET['delete'])."' LIMIT 1");
header("Location: ?room/show=$room[id]&$passgen");
}

// отправка комментария

if (isset($_POST['message']) && isset($user))
{
if(
$_POST['mdp']==md5($user['pass'])) {
$message=$_POST['message'];
if (isset(
$_POST['translit']) && $_POST['translit']==1)$message=translit($message);

$mat=antimat($message);
if (
$mat)$err[]='В тексте сообщения обнаружен мат: '.$mat;

if (
strlen2($message)>1024){$err[]='Сообщение слишком длинное';}
if (
strlen2($message)<1){$err[]='Короткое сообщение';}
if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id_user` = '$user[id]' AND `type` = 'post' AND `message` = '".mysql_escape_string($message)."' AND `time` > '".($time-300)."' LIMIT 1"),0)!=0){$err='Ваше сообщение повторяет предыдущее';}
if(!isset(
$err)){
// для ответа!
if(isset($_POST['reply']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '".intval($_POST['reply'])."'"),0)!=0)
{
$ru=get_user(intval($_POST['reply']));
if(
$ru['id']!=$user['id'])$reply=1;
if(isset(
$_POST['private']) && $_POST['private']==1)$private=1;else $private=0;
}
mysql_query("INSERT INTO `chat` (`id_user`, `time`, `message`, `id_room`, `type`".(isset($reply)?", `reply`, `private`":null).") values('$user[id]', '$time', '".my_esc($message)."', '$room[id]', 'post'".(isset($reply)?", '$ru[id]', '$private'":null).")");
}
}
else 
err_rcfs();
}


$set['title'] = "Чат - $room[name]";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(isset(
$_GET['mdelete']) && ($user['level']>=|| $user['group_access']==2))$mdelete=1;

if(isset(
$mdelete) && isset($_POST['m_d_okey']))
{
if(
$_POST['mdp']==md5($user['pass']))
{
foreach (
$_POST as $key => $value)
{
if (
preg_match('#^mdelelte_komm_([0-9]*)$#',$key,$kid) && $value='1')
{
if (
mysql_result(mysql_query("SELECT * FROM `chat` WHERE `id` = '$kid[1]' AND `id_room` = '$room[id]' AND`type` = 'post' LIMIT 1"),0)!=0)
{
$komm=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '$kid[1]' AND `id_room` = '$room[id]' AND`type` = 'post' LIMIT 1"));
mysql_query("DELETE FROM `chat` WHERE `id` = '$komm[id]' AND `id_room` = '$room[id]' AND `type` = 'post'");
}
}
}
}
else 
err_rcfs();
}
if (
$room['umnik']=='1')include 'inc/umnik.php';
if (
$room['shutnik']=='1')include 'inc/shutnik.php';
?>
<script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
$(document).ready(function(){
    $("input[name='check_all']").click( function() {
        if($(this).is(':checked')){
            $("input[name^='mdelelte_komm']").each(function() { $(this).attr('checked', true); });
        } else {
            $("input[name^='mdelelte_komm']").each(function() { $(this).attr('checked', false); });
        }

    });
});
  </script>
<?
echo "<div class='menu123'>n";
echo 
"<a href='?room/show=$room[id]&who_there'>Кто здесь?</a> | <a href='/smiles.php'>Список смайлов</a> | <a href='?room/show=$room[id]&rand_num=".rand(1000,9999)."'>Обновить</a>n";
if(isset(
$mdelete))echo "<br />n<input type='checkbox' name='check_all' value='1'> Отметить всеn";

if(isset(
$user))
{
echo 
"<form method='POST' action='/users/chat/?room/show=$room[id]'>n";
echo 
"<textarea name='message' id= 'message'></textarea>n";
echo 
"<br/>n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Отправить'>n";
echo 
"</form>n";
}
echo 
"</div>n";
$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id_room` = '$room[id]' AND `type` = 'post'".($user['group_access']==|| $user['level']>=3?NULL:" AND (`private` = '1' AND (`id_user` = '$user[id]' OR `reply` = '$user[id]') OR `private` = '0')").""),0);
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=$set['p_str']*$page-$set['p_str'];
echo 
"<table class='post'>n";
if(isset(
$mdelete))
{
echo 
"<form method='post'>n";
}
if (
$k_post==0)
{
echo 
"   <tr>n";
echo 
"  <td class='p_t'>n";
echo 
"Нет сообщенийn";
echo 
"  </td>n";
echo 
"   </tr>n";
}
if (
$set['time_chat']!=&& !isset($mdelete))header("Refresh: $set[time_chat]; url=/users/chat/?room/show=$room[id]&rand_num=".rand(1000,9999)); // автообновление
$q=mysql_query("SELECT * FROM `chat` WHERE `id_room` = '$room[id]' AND `type` = 'post'".($user['group_access']==|| $user['level']>=3?NULL:" AND (`private` = '1' AND (`id_user` = '$user[id]' OR `reply` = '$user[id]') OR `private` = '0')")." ORDER BY `time` DESC LIMIT $start$set[p_str]");
while (
$post mysql_fetch_array($q))
{
if (
$post['umnik_st']==&& $post['shutnik']==0)$ank=get_user($post['id_user']);


echo 
"<div class='main123'>n";
if (
$post['umnik_st']==&& $post['shutnik']==0)
{


?>
<span style='float:right'>
<?
if(isset($user) && ($user['group_access']==|| $user['level']>=3))
{
echo 
"<a href='?room/show=$room[id]&delete=$post[id]' style='color:#933;'>Удалить</a>n";
}
if(isset(
$user) && $user['id']==$ank['id'] && $post['time']>time()-600)
{
echo (isset(
$user) && ($user['group_access']==|| $user['level']>=3)?$kr:NULL)."<a href='?room/show=$room[id]&edit=$post[id]' style='color:green;'>Ред</a>n";
}
?>
</span>
<?


if(isset($mdelete))echo "n<input type='checkbox' name='mdelelte_komm_$post[id]' value='1'>n";
echo 
"<span style='color:#666666'>[".vremja($post['time'])."]</span> <a href='/info.php?id=$ank[id]'>".($ank['id']==$user['id']?'<span style="color: #209143"><b>':NULL)."$ank[nick]".($ank['id']==$user['id']?'</b></span>':NULL)."</a>";
echo 
" ".($post['private']==1?" <span style='color: red;'>[!]</span>":NULL)."<br/>n";
if(
$post['reply']!=&& mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '$post[reply]'"),0))
{
$ru=get_user($post['reply']);
echo (
$post['private']==&& ($post['id_user']==$user['id'] || $post['reply']==$user['id'])?'<span style="color: #f30000">':NULL)."$ru[nick], ".($post['private']==&& ($post['id_user']==$user['id'] || $post['reply']==$user['id'])?'</span>':NULL);
}
}
elseif (
$post['umnik_st']!=0)
echo 
"$set[chat_umnik] <span style='color:green'>".vremja($post['time'])."</span><br />n";
elseif (
$post['shutnik']==1)
echo 
"$set[chat_shutnik] <span style='color:green'>".vremja($post['time'])."</span><br />n";
echo (
$post['private']==&& $post['reply']==$user['id']?'<span style="color: #f30000">':NULL).output_text($post['message']).($post['private']==&& $post['reply']==$user['id']?'</span>':NULL);
echo 
"n<br/>n";
if (
$post['umnik_st']==&& $post['shutnik']==0)
{




if(isset(
$user) && $ank['id']!=$user['id'] && $ank['id']!=0)
{
echo 
"<a href='?room/show=$room[id]&reply=$post[id]'>Ответить</a>n";
}
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_kick` WHERE `id_room` = '$room[id]' AND `id_user`='$ank[id]' AND `time` > '$time' LIMIT 1"),0)==1)$kick=1;else $kick=0;
if(isset(
$user) && $ank['id']!=$user['id'] && $ank['id']!=&& ($user['group_access']==|| $user['level']>=3))
{
echo (isset(
$user) && $ank['id']!=$user['id'] && $ank['id']!=0?$kr:NULL)."<a href='?room/show=$room[id]&kick=$ank[id]&mid=$post[id]'>".($kick==1?"Впустить":"Кикнуть")."</a>n";
}

}
echo 
"</div>n";
}
echo 
"</table>n";
if(isset(
$mdelete))echo "<input type='submit' name='m_d_okey' value='Удалить'> <a href='?room/show=$room[id]&page=$page'>Отмена</a>n
<input type='hidden' name='mdp' value='"
.md5($user['pass'])."'/>n
</form>n"
;
if (
$k_page>1)str("/users/chat/?room/show=$room[id]".(isset($mdelete)?"&mdelete=1":null)."&rand_num=".rand(1000,9999)."&",$k_page,$page); // Вывод страниц
if($user['group_access']==|| $user['level']>=3)
{
echo 
"<div class='menu123'>n";
echo 
"<img src='/uers/chat/img/edit.png' /> <a href='?room/edit=$room[id]'>Редактировать комнату</a><br />n";
echo 
"<img src='/users/chat/img/cancel.png' /> <a href='?room/delete=$room[id]'>Удалить комнату</a> | <a href='?room/show=$room[id]&clean'>Очистить комнату</a><br />n";
echo 
"<img src='/users/chat/img/move.png' /> <a href='?room/show=$room[id]&page=$page&mdelete=start'>Выбрать комментарии</a><br />n";
echo 
"</div>n";
}
echo 
"<div class='menu123'>n";
echo 
"&raquo; <a href='/users/chat/'>Список комнат</a><br />n";
echo 
"</div>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}

// редактировать комнату

if(isset($_GET['room/edit']))
{
$room=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['room/edit'])."' AND `type` = 'room' LIMIT 1"));
if(
$user['group_access']==|| $user['level']>=3)
{
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id` = '$room[id]' LIMIT 1"),0)==0)
{
$set['title'] = "Чат - Error!";
require_once (
"../../core/cuctema/head.php");
title();
aut();
echo 
"Комната не найденa";
require_once (
"../../core/cuctema/foot.php");
exit();
}
$set['title'] = "Чат - Редактировать комнату";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(isset(
$_GET['icon']))
{
if(isset(
$_POST['submited']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
if(isset(
$_FILES['file']))
{
if (
$_FILES['file']['type']!=='image/jpeg' && $_FILES['file']['type']!=='image/jpg' && $_FILES['file']['type']!=='image/gif' && $_FILES['file']['type']!=='image/png')$err[]='Это не картинка';
}
else 
$err[]='Выберите картинку';
if (!isset(
$err))
{
$tmp $_FILES['file']['tmp_name'];
unlink(H."/users/chat/icons/r".$room['id']."_rs".$room['rs_code'].".png");
$room['new_rs_code']=rand(123456,987654);
mysql_query("UPDATE `chat` SET `rs_code` = '$room[new_rs_code]' WHERE `id` = '$room[id]'");
move_uploaded_file($tmp
H."/users/chat/icons/r".$room['id']."_rs".$room['new_rs_code'].".png");
chmod(H."/users/chat/icons/r".$room['id']."_rs".$room['new_rs_code'].".png",0777);
admin_log('Чат','Параметры комнат',"Изменение иконки комнаты "$room[name]"");
header("Location:?room/edit=$room[id]");
}
}
else 
err_rcfs();
}
err();
echo 
"<form method='post' enctype='multipart/form-data'>n";
echo 
"<span style='color:grey'><b>Выберите новую иконку:</b></span><br/><input type='file' name='file' /><br/>n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Сохранить' /> <a href='?room/edit=$room[id]'>Назад</a></form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
if(isset(
$_POST['submited']) && isset($_POST['message']) && isset($_POST['name']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
$message=$_POST['message'];
$name=$_POST['name'];
if (
strlen2($name)>50){$err[]='Название слишком длинное';}
if (
strlen2($name)<1){$err[]='Название слишком короткое';}
if (
strlen2($message)>512){$err[]='Описание слишком длинное';}
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `name` = '".my_esc($name)."' AND`type` = 'room' AND `id` != '$room[id]' LIMIT 1"),0)!=0)$err[]='Комната с таким названием уже существует';
$message=my_esc($message);
$name=my_esc($name);
if (
$_POST['bots']==|| $_POST['bots']==3)$umnik=1;else $umnik=0;
if (
$_POST['bots']==|| $_POST['bots']==3)$shutnik=1;else $shutnik=0;
if(!isset(
$err)){
admin_log('Чат','Параметры комнат',"Изменение комнаты "$name"");
mysql_query("UPDATE `chat` SET `message` = '$message', `name` = '$name', `umnik` = '$umnik', `shutnik` = '$shutnik' WHERE `id` = '$room[id]' AND `type` = 'room'");
header("Location:?$passgen");
exit();
}
}
else 
err_rcfs();
}

if (
is_file(H."users/chat/icons/r".$room['id']."_rs".$room['rs_code'].".png"))$icon_name="r".$room['id']."_rs".$room['rs_code'];else $icon_name="default";
/*
if(isset($_GET['rotate']) && ($_GET['rotate']=='right' || $_GET['rotate']=='left') && $icon_name!='default')
{
$rotate=$_GET['rotate'];
if($rotate=='left')$degrees=90;else $degrees=270;

// Файл и угол поворота
$icon = H."chat/icons/r".$room['id']."_rs".$room['rs_code'].".png";
// Загрузка изображения
$source = imagecreatefromstring(file_get_contents($icon));
// Поворот
$rotate = imagerotate($source, $degrees, 0);
$color = imagecolorallocate($rotate, 0, 0, 0);
imagecolortransparent($rotate,$color);
// Ввод
imagepng($rotate,H."chat/icons/r".$room['id']."_rs".$room['rs_code'].".png");
}
*/
echo  "<table>n";
echo  
"<tr>n";
echo  
"<td class='icon48'>n";
echo  
"<img src='/users/chat/icons/".$icon_name.".png' height='32' width='32'/><br />n";
/*
if ($icon_name!='default')
{
?>
<style>
img.rotate {
border: 2px solid #CCEDEC;
border-radius: 3px;
}
img.rotate:hover {
border: 2px solid #CCEDEC;
background: #CCEDEC;
border-radius: 3px;
}
</style>
<?
echo "<center><a href='?room/edit=$room[id]&rotate=left'><img src='/chat/img/rotate_left.png' class='rotate' /></a> <a href='?room/edit=$room[id]&rotate=right'><img src='/chat/img/rotate_right.png' class='rotate' /></a></center>n";
}
*/
echo  "</td>n";
echo  
"<td class='p_t'>n";
echo  
"&raquo; <a href='?room/edit=$room[id]&icon'>Заменить иконку</a>n";
echo  
"</td>n";
echo  
"</tr>n";
echo  
"</table>n";
err();
echo 
"<form method='post' action='?room/edit=$room[id]' name='message'>n";
echo 
"Названиe (256 знаков)<br />n";
echo 
"<input type='text' name='name' value='$room[name]' />n";
echo 
"Описание (1024 знаков)<br/>n";
echo 
"<textarea name='message' rows='3' cols='23' >$room[message]</textarea><br />n";
echo 
"Боты<br />n";
echo 
"<select name="bots">n";
echo 
"<option value='0'".(($room['umnik']==&& $room['shutnik']==0)?' selected="selected"':null).">Нет</option>n";
echo 
"<option value='1'".(($room['umnik']==&& $room['shutnik']==0)?' selected="selected"':null).">$set[chat_umnik]</option>n";
echo 
"<option value='2'".(($room['umnik']==&& $room['shutnik']==1)?' selected="selected"':null).">$set[chat_shutnik]</option>n";
echo 
"<option value='3'".(($room['umnik']==&& $room['shutnik']==1)?' selected="selected"':null).">$set[chat_umnik] и $set[chat_shutnik]</option>n";
echo 
"</select><br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Сохранить'/> <a href='?'>Назад</a><br /></form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}

// удалить комнату

if (isset($_GET['room/delete']))
{
$room=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['room/delete'])."' AND `type` = 'room' LIMIT 1"));
if(
$user['group_access']==|| $user['level']>=3)
{
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `id` = '$room[id]' LIMIT 1"),0)==0)
{
$set['title'] = "Чат - Error!";
require_once (
"../../core/cuctema/head.php");
title();
aut();
echo 
"Комната не найденa";
require_once (
"../../core/cuctema/foot.php");
exit();
}
$set['title'] = "Чат - Удалить комнату";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if (isset(
$_POST['submited']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
if (
is_file(H."users/chat/icons/r".$room['id']."_rs".$room['rs_code'].".png"))unlink(H."users/icons/r".$room['id']."_rs".$room['rs_code'].".png");
mysql_query("DELETE FROM `chat` WHERE `id` = '$room[id]' AND `type` = 'room' LIMIT 1");
mysql_query("DELETE FROM `chat` WHERE `id_room` = '$room[id]' AND `type` = 'post' LIMIT 1");
mysql_query("DELETE FROM `chat_kick` WHERE `id_room` = '$room[id]' LIMIT 1");
mysql_query("DELETE FROM `chat_who` WHERE `id_room` = '$room[id]' LIMIT 1");
$rooms mysql_query("SELECT * FROM `chat` WHERE `type` = 'room' AND `pos` > '$room[pos]' ORDER BY `pos` ASC");
while (
$p mysql_fetch_array($rooms))
{
mysql_query("UPDATE `chat` SET `pos` = '".($p['pos']-1)."' WHERE `id` = '$p[id]' LIMIT 1");
}
admin_log('Чат','Параметры комнат',"Удалена комната "$room[name]"");
header("Location: ?$passgen");
exit;
}
else 
err_rcfs();
}
err();
echo 
"<form method='post'>n";
echo 
"Вы действительно хотите удалить эту комнату?<br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Да, подтверждаю' /> <a href='?'>Отмена</a><br />n";
echo 
"</form>";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}

// создать комнату

if(isset($_GET['room/create']))
{
if(
$user['group_access']==|| $user['level']>=3)
{
$set['title'] = "Чат - Создать комнату";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(isset(
$_POST['submited']) && isset($_POST['message']) && isset($_POST['name']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
$message=$_POST['message'];
$name=$_POST['name'];
if (
strlen2($name)>50){$err[]='Название слишком длинное';}
if (
strlen2($name)<1){$err[]='Название слишком короткое';}
if (
strlen2($message)>512){$err[]='Описание слишком длинное';}
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `name` = '".my_esc($name)."' AND`type` = 'room' LIMIT 1"),0)!=0)$err[]='Комната с таким названием уже существует';
$message=my_esc($message);
$name=my_esc($name);
if (isset(
$_POST['icon']) && $_POST['icon']==1)$icon=1;else $icon=0;
$rs_code=0;
if(
$icon==1)
{
$rs_code=rand(123456,987654);
if (
$_FILES['file']['type']!=='image/jpeg' && $_FILES['file']['type']!=='image/jpg' && $_FILES['file']['type']!=='image/gif' && $_FILES['file']['type']!=='image/png')$err[]='Это не картинка';
}
if (
$_POST['bots']==|| $_POST['bots']==3)$umnik=1;else $umnik=0;
if (
$_POST['bots']==|| $_POST['bots']==3)$shutnik=1;else $shutnik=0;
if(!isset(
$err)){
$pos=mysql_result(mysql_query("SELECT MAX(`pos`) FROM `chat` WHERE `type` = 'room'"), 0)+1;
mysql_query("INSERT INTO `chat` SET `message` = '$message', `name` = '$name', `type` = 'room', `umnik` = '$umnik', `shutnik` = '$shutnik', `pos` = '$pos', `rs_code` = '$rs_code'");
$room=array();
$room['id']=mysql_insert_id();
admin_log('Чат','Параметры комнат',"Добавлена комната "$name"");
if(
$icon==1)
{
$room['new_rs_code']=$rs_code;
$tmp $_FILES['file']['tmp_name'];
move_uploaded_file($tmp
H."users/chat/icons/r".$room['id']."_rs".$room['new_rs_code'].".png");
chmod(H."users/chat/icons/r".$room['id']."_rs".$room['new_rs_code'].".png",0777);
}
header("Location:?$passgen");
exit();
}
}
else 
err_rcfs();
}
err();
echo 
"<form method='post' enctype='multipart/form-data'>n";
echo 
"Название (256 знаков)<br />n";
echo 
"<input type='text' name='name' value='' />n";
echo 
"Описание (1024 знаков)<br/>n";
echo 
"<textarea name='message' rows='3' cols='23' ></textarea><br />n";
echo 
"Боты<br />n";
echo 
"<select name="bots">n";
echo 
"<option value='0'>Нет</option>n";
echo 
"<option value='1'>$set[chat_umnik]</option>n";
echo 
"<option value='2'>$set[chat_shutnik]</option>n";
echo 
"<option value='3'>$set[chat_umnik] и $set[chat_shutnik]</option>n";
echo 
"</select><br />n";
echo 
"Выберите иконку</b><br />n";
echo 
"<input type='file' name='file' /><br />n";
echo 
"<label><input type='checkbox' name='icon' value='1' /> Заменить иконку<br /></label>n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Создать'/> <a href='?'>Назад</a><br /></form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}
if(isset(
$_GET['clean']) && ($user['group_access']==|| $user['level']>=3))
{
$set['title'] = "Чат - Очистить";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if(isset(
$_GET['all']))
{
if(isset(
$_POST['submited']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
mysql_query("DELETE FROM `chat` WHERE `type` = 'post'");
header("Location:?");
exit;
}
else 
err_rcfs();
}
else
{
echo 
"<form method='POST' action='?clean&all'>n";
echo 
"Очистить <b>Чат</b> от сообщений?<br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input type='submit' name='submited' value='Да'>n";
echo 
" <a href='?'>Нет</a>";
echo 
"</form>n";
require_once (
"../../core/cuctema/foot.php");
exit();
}
}
else
{
if(isset(
$_POST['submited']))
{
if(
$_POST['mdp']==md5($user['pass'])) {
$ch=intval($_POST['ch']);
$mn=intval($_POST['mn']);
$nt=$ch*$mn*3600;
$nt=$time-$nt;
mysql_query("DELETE FROM `chat` WHERE `time` < '$nt' AND `type` = 'post'");
header("Location:?");
exit;
}
else 
err_rcfs();
}
else
{
echo 
"<div class='foot'>n";
echo 
"<img src='/chat/img/cancel.png' /> <a href='?clean&all'>Очистить Чат полностю</a>n";
echo 
"<br/>n";
echo 
"</div>n";
echo 
"<form method='post' action='?clean&ok'>n";
echo 
"Будут удалены посты, написаные ... тому назад<br />n";
echo 
"<input type='text' name='ch' size='3' value='1' />n";
echo 
"<select name='mn'>n";
echo 
"<option value='1' selected='selected'>Часов</option>n";
echo 
"<option value='24'>Дней</option>n";
echo 
"<option value='168'>Недель</option>n";
echo 
"<option value='744'>Месяцев</option>n";
echo 
"</select><br />n";
echo 
"<input type='hidden' name='mdp' value='".md5($user['pass'])."'>n";
echo 
"<input type='hidden' name='uid' value='$user[id]'>n";
echo 
"<input value='Очистить' type='submit' name='submited' /> <a href='?'>Назад</a></form>n";
}
require_once (
"../../core/cuctema/foot.php");
exit();
}
}

// kто в Чате

if(isset($_GET['who_there']))
{
$set['title'] = "Чат - Кто здесь?";
require_once (
"../../core/cuctema/head.php");
title();
aut();
$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_who`"), 0);
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=$set['p_str']*$page-$set['p_str'];
$q mysql_query("SELECT * FROM `chat_who` ORDER BY `time` DESC LIMIT $start$set[p_str]");
echo 
"<table class='post'>n";
if (
$k_post==0)
{
echo 
"   <tr>n";
echo 
'<td class="p_t">';
echo 
"В Чате никого нет !n";
echo 
"  </td>n";
echo 
"   </tr>n";
}
while (
$ank mysql_fetch_array($q))
{
$room=mysql_fetch_array(mysql_query("SELECT * FROM `chat` WHERE `id` = '$ank[id_room]' AND `type` = 'room' LIMIT 1"));
$post=get_user($ank['id_user']);
echo 
"   <tr>n";
echo 
'<td class="icon48    ">';
avatar($post['id']);
echo 
"</td>";
echo 
"  <td class='p_t'>n";
echo 
"<a href='/info.php?id=$post[id]'>$post[nick]</a> ".online($post['id']);
echo 
"<br />n";
echo 
"Комната "<a href='?room/show=$room[id]'>$room[name]</a>"n";
echo 
"</td>n";
echo 
"   </tr>n";
}
echo 
"</table>n";
echo 
"<div class='foot'>&raquo; <a href='?'>Список комнат</a></div>n";
if (
$k_page>1)str("?who_there&",$k_page,$page); // Вывод страниц
require_once ("../../core/cuctema/foot.php");
exit();
}

// список комнат + перемещение вверх-вниз 

$set['title'] = "Чат";
require_once (
"../../core/cuctema/head.php");
title();
aut();
if (isset(
$_GET['up']) && isset($user) && ($user['group_access']==|| $user['level']>=3))
{
$up=mysql_fetch_assoc(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['up'])."' AND `type` = 'room' LIMIT 1"));
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `pos` < '$up[pos]' AND `type` = 'room' LIMIT 1"),0)!=0)
{
mysql_query("UPDATE `chat` SET `pos` = '".($up['pos'])."' WHERE `pos` = '".($up['pos']-1)."' AND `type` = 'room' LIMIT 1");
mysql_query("UPDATE `chat` SET `pos` = '".($up['pos']-1)."' WHERE `id` = '".intval($_GET['up'])."' AND `type` = 'room' LIMIT 1");
}
}
elseif (isset(
$_GET['down']) && isset($user) && ($user['group_access']==|| $user['level']>=3))
{
$down=mysql_fetch_assoc(mysql_query("SELECT * FROM `chat` WHERE `id` = '".intval($_GET['down'])."' AND `type` = 'room' LIMIT 1"));
if(
mysql_result(mysql_query("SELECT COUNT(*) FROM `chat` WHERE `pos` > '$down[pos]' AND `type` = 'room' LIMIT 1"),0)!=0)
{
mysql_query("UPDATE `chat` SET `pos` = '".($down['pos'])."' WHERE `pos` = '".($down['pos']+1)."' AND `type` = 'room' LIMIT 1");
mysql_query("UPDATE `chat` SET `pos` = '".($down['pos']+1)."' WHERE `id` = '".intval($_GET['down'])."' AND `type` = 'room' LIMIT 1");
}
}

$i=1;
$q=mysql_query("SELECT * FROM `chat` WHERE `type` = 'room' ORDER BY `pos` ASC");
echo 
"<table class='post'>n";
if (
mysql_num_rows($q)==0) {
echo 
"<div class='hide'>n";
echo 
"Нет комнатn";
echo 
"</div>n";
}
while (
$post=mysql_fetch_array($q))
{
mysql_query("UPDATE `chat` SET `pos` = '$i' WHERE `id` = '$post[id]' AND `type` = 'room'"); // на всякий случай
if (is_file(H."users/chat/icons/r".$post['id']."_rs".$post['rs_code'].".png"))$icon_name="r".$post['id']."_rs".$post['rs_code'];else $icon_name="default";
echo 
"<div class='main123'>n";
echo 
$i.") <a href='?room/show=$post[id]'>".htmlspecialchars($post['name'])."</a> <a href='?room/show=$post[id]&who_there'>(".mysql_result(mysql_query("SELECT COUNT(*) FROM `chat_who` WHERE `id_room` = '$post[id]'"), 0).")</a>    n";
if(isset(
$_GET['moderate']) && isset($user) && ($user['group_access']==|| $user['level']>=3))echo "<span style='float: right;'><a href='?moderate&up=$post[id]'><img src='/users/chat/img/up.png' alt='o'></a> <a href='?moderate&down=$post[id]'><img src='/users/chat/img/down.png' alt='o'></a></span>";
echo 
"<br />n";
echo 
output_text($post['message']);
echo 
"</div>n";
$i++;
}
echo 
"</table>n";
if(
$user['group_access']==|| $user['level']>=3)
{
echo 
"<div class='menu123'>n";
echo 
"<img src='/users/chat/img/add.png' /> <a href='?room/create'>Создать комнату</a><br />n";
echo 
"<img src='/users/chat/img/cancel.png' /> <a href='?clean'>Очистить Чат</a><br />n";
echo 
"<img src='/users/chat/img/configure.png' /> ".(isset($_GET['moderate'])?"<a href='?'>Отмена</a>":"<a href='?moderate'>Управление</a>")."<br />n";
echo 
"</div>n";
}
echo 
"<div class='menu123'>n";
echo 
"<img src='/users/chat/img/who_there.png' /> <a href='?who_there'>Кто в Чате?</a><br />n";
echo 
"</div>n";
require_once (
"../../core/cuctema/foot.php");
exit();
?>
Онлайн: 0
Реклама