2022-06-07 00:30:34 +03:00
< ? php
2022-12-19 20:26:14 +02:00
2022-12-30 21:03:37 +02:00
use Core\Db ;
2022-12-19 20:26:14 +02:00
2023-01-10 19:26:14 +02:00
//
2022-12-19 20:26:14 +02:00
const GAME = true ;
2022-07-01 12:45:43 +00:00
require_once '_incl_data/__config.php' ;
require_once '_incl_data/class/__db_connect.php' ;
2022-12-19 20:26:14 +02:00
$u = User :: start ();
$filter = new Filter ();
$chat = new Chat ();
2022-07-01 12:45:43 +00:00
if (
! isset ( $u -> info [ 'id' ]) ||
$u -> info [ 'banned' ] > 0 ||
! isset ( $_COOKIE [ 'login' ]) ||
$u -> info [ 'repass' ] > 0
) {
exit ( json_encode ([ 'js' => 'top.location="bk?exit=' . $code . '";' ]));
}
if ( $u -> info [ 'bithday' ] == '01.01.1800' ) {
unset ( $_GET [ 'msg' ], $_POST [ 'msg' ], $_POST [ 'warnMsg' ]);
$_GET [ 'r3' ] = 1 ;
}
if ( $u -> info [ 'online' ] < time () - 60 ) {
mysql_query ( 'UPDATE users SET online = unix_timestamp() WHERE id = ' . $u -> info [ 'id' ]);
2022-12-19 20:26:14 +02:00
$filter -> setOnline ( $u -> info [ 'online' ], $u -> info [ 'id' ]);
2022-07-01 12:45:43 +00:00
}
2022-12-19 20:26:14 +02:00
function isModerOrAdmin ( $uinfo )
{
return $uinfo [ 'admin' ] > 0 ||
2022-07-01 12:45:43 +00:00
(
2022-12-19 20:26:14 +02:00
$uinfo [ 'align' ] > 1 &&
$uinfo [ 'align' ] < 2 ) ||
2022-07-01 12:45:43 +00:00
(
2022-12-19 20:26:14 +02:00
$uinfo [ 'align' ] > 3 &&
$uinfo [ 'align' ] < 4
);
}
if ( isset ( $_POST [ 'delMsg' ]) && isModerOrAdmin ( $u -> info )) {
2022-07-01 12:45:43 +00:00
if ((( int ) $_POST [ 'delMsg' ]) > 0 ) {
2022-12-19 20:26:14 +02:00
mysql_query (
'UPDATE `chat` SET `delete` = "' . $u -> info [ 'id' ] . '" WHERE `id` = "' . mysql_real_escape_string (
(( int ) $_POST [ 'delMsg' ])
) . '" LIMIT 1'
);
2022-07-01 12:45:43 +00:00
} else {
2022-12-19 20:26:14 +02:00
mysql_query (
'UPDATE `users` SET `molch3` = "' . ( time () + 3600 * 3 ) . '" WHERE `id` = "' . mysql_real_escape_string (
- (( int ) $_POST [ 'delMsg' ])
) . '" LIMIT 1'
);
2022-07-01 12:45:43 +00:00
}
}
$r = [
'rnd' => $code ,
'rn' => null ,
'list' => null ,
'msg' => null ,
'js' => null ,
2022-12-19 20:26:14 +02:00
'xu' => 0 ,
2022-07-01 12:45:43 +00:00
];
2023-01-10 18:29:32 +02:00
2022-07-01 12:45:43 +00:00
if ( $u -> info [ 'battle' ] > 0 ) {
2022-12-19 20:26:14 +02:00
$btl = mysql_fetch_array (
mysql_query ( 'SELECT `id` FROM `battle` WHERE `id` = "' . $u -> info [ 'battle' ] . '" AND `time_over` = 0 LIMIT 1' )
);
2022-07-01 12:45:43 +00:00
if ( ! isset ( $btl [ 'id' ])) {
$r [ 'js' ] .= 'top.frames["main"].location="main.php";' ;
}
}
if ( isset ( $_POST [ 'msg' ]) && str_replace ( ' ' , '' , $_POST [ 'msg' ]) != '' ) {
$msg = [];
$_POST [ 'msg' ] = str_replace ( '\x3C' , '<' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '\x3' , '>' , $_POST [ 'msg' ]);
function tolink ( $buf )
{
$x = explode ( " " , $buf );
$newbuf = '' ;
for ( $j = 0 ; $j < count ( $x ); $j ++ ) {
2023-01-10 18:29:32 +02:00
$uname = '<Внутренн� � � � ылка>' ;
2022-07-01 12:45:43 +00:00
//
if ( strripos ( $x [ $j ], 'new-combats.com/info/' )) {
$ulogin = explode ( '/info/' , $x [ $j ]);
$ulogin = $ulogin [ 1 ];
2022-12-19 20:26:14 +02:00
$ulogin = mysql_fetch_array (
mysql_query (
'SELECT `login` FROM `users` WHERE `id` = "' . mysql_real_escape_string (
$ulogin
) . '" OR `login` = "' . mysql_real_escape_string ( $ulogin ) . '" LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $ulogin [ 'login' ])) {
$ulogin = htmlspecialchars ( $ulogin [ 'login' ]);
2023-01-10 18:29:32 +02:00
$uname = '<font color=#831db7><Ð?нформациÑ� о "' . $ulogin . '"></font>' ;
2022-07-01 12:45:43 +00:00
}
2023-01-10 18:29:32 +02:00
} elseif ( strripos ( $x [ $j ], 'audio_1610649509.mp3' )) { //ТУТ аудио
$uname = '<font color=#FF851B><Голо� овое � ообщение></font>' ;
2022-07-01 12:45:43 +00:00
} elseif ( strripos ( $x [ $j ], 'new-combats.com/item/' )) {
$ulogin = explode ( '/item/' , $x [ $j ]);
$ulogin = $ulogin [ 1 ];
2022-12-19 20:26:14 +02:00
$ulogin = mysql_fetch_array (
mysql_query (
'SELECT `name` FROM `items_main` WHERE `id` = "' . mysql_real_escape_string (
$ulogin
) . '" LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $ulogin [ 'name' ])) {
$ulogin = htmlspecialchars ( $ulogin [ 'name' ]);
2023-01-10 18:29:32 +02:00
$uname = '<font color=#5f9b00><Предмет "' . $ulogin . '"></font>' ;
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
$uname = '<font color=#5f9b00><Библиотека предметов></font>' ;
2022-07-01 12:45:43 +00:00
}
} elseif ( strripos ( $x [ $j ], 'new-combats.com/news' )) {
$ulogin = explode ( '/news' , $x [ $j ]);
$ulogin = $ulogin [ 1 ];
$ulogin = ltrim ( $ulogin , '/' );
2022-12-19 20:26:14 +02:00
$ulogin = mysql_fetch_array (
mysql_query (
'SELECT `title` FROM `events_news` WHERE `id` = "' . mysql_real_escape_string (
$ulogin
) . '" LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $ulogin [ 'title' ])) {
$ulogin = htmlspecialchars ( $ulogin [ 'title' ]);
2023-01-10 18:29:32 +02:00
$uname = '<font color=#b57300><� ово� ть "' . $ulogin . '"></font>' ;
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
$uname = '<font color=#b57300><� ово� тна� лента></font>' ;
2022-07-01 12:45:43 +00:00
}
} elseif ( strripos ( $x [ $j ], 'new-combats.com/lib' )) {
$ulogin = explode ( '/lib' , $x [ $j ]);
$ulogin = $ulogin [ 1 ];
$ulogin = ltrim ( $ulogin , '/' );
$ulogin = rtrim ( $ulogin , '/' );
2022-12-19 20:26:14 +02:00
$ulogin = mysql_fetch_array (
mysql_query (
'SELECT `title` FROM `library_content` WHERE `url_name` = "' . mysql_real_escape_string (
$ulogin
) . '" AND `moder` > 0 LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $ulogin [ 'title' ])) {
$ulogin = htmlspecialchars ( $ulogin [ 'title' ]);
2023-01-10 18:29:32 +02:00
$uname = '<font color=#4c6e00><Библиотека "' . $ulogin . '"></font>' ;
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
$uname = '<font color=#4c6e00><Библиотека></font>' ;
2022-07-01 12:45:43 +00:00
}
} elseif ( strripos ( $x [ $j ], 'new-combats.com/forum' )) {
$ulogin = explode ( '/forum?read=' , $x [ $j ]);
$ulogin = $ulogin [ 1 ];
$ulogin = explode ( '&' , $ulogin );
$ulogin = $ulogin [ 0 ];
//
2022-12-19 20:26:14 +02:00
$ulogin = mysql_fetch_array (
mysql_query (
'SELECT `title` FROM `forum_msg` WHERE `id` = "' . mysql_real_escape_string (
$ulogin
) . '" AND `delete` = 0 LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $ulogin [ 'title' ])) {
$ulogin = htmlspecialchars ( $ulogin [ 'title' ]);
2023-01-10 18:29:32 +02:00
$uname = '<font color=#0055b5><Форум "' . $ulogin . '"></font>' ;
2022-07-01 12:45:43 +00:00
} else {
$ulogin = explode ( '/forum?r=' , $x [ $j ]);
$ulogin = $ulogin [ 1 ];
$ulogin = explode ( '&' , $ulogin );
$ulogin = $ulogin [ 0 ];
//
2022-12-19 20:26:14 +02:00
$ulogin = mysql_fetch_array (
mysql_query (
'SELECT `name` FROM `forum_menu` WHERE `id` = "' . mysql_real_escape_string (
$ulogin
) . '" LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $ulogin [ 'name' ])) {
2023-01-10 18:29:32 +02:00
$uname = '<font color=#0055b5><Конференци� форума "' . $ulogin [ 'name' ] . '"></font>' ;
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
$uname = '<font color=#0055b5><Форум проекта></font>' ;
2022-07-01 12:45:43 +00:00
}
}
}
//
$newbuf .= preg_match
2022-12-19 20:26:14 +02:00
(
" /(https: \\ / \\ /)?(new-combats+ \\ .com(([ \" '> \r \n \t ])|( \\ /([^ \" '> \r \n \t ]*)?)))/ " ,
$x [ $j ], $ok
) ? str_replace (
$ok [ 2 ], " <small><a href=https:// $ok[2] target=_blank ><i> " . $uname . " </i></a></small> " ,
str_replace ( " https:// " , " " , $x [ $j ])
) . " " : $x [ $j ] . " " ;
2022-07-01 12:45:43 +00:00
}
return $newbuf ;
}
$_POST [ 'msg' ] = $chat -> expworld ( $_POST [ 'msg' ], 120 );
$_POST [ 'msg' ] = str_replace ( '\\' , '\\\\' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '"' , '[s1;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( " ' " , '[s2;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '<' , '[s3;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '>' , '[s4;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( ' ' , ' ' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '>' , '[s4;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '<' , '[s3;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( " \r " , '[s3;]br[s4;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( " \ b " , '[s3;]br[s4;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( " " , '[s3;]TAB[s4;]' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( " " , '[s3;]TAB[s4;]' , $_POST [ 'msg' ]);
2023-01-10 19:26:14 +02:00
$_POST [ 'msg' ] = htmlspecialchars ( $_POST [ 'msg' ], null );
2022-07-01 12:45:43 +00:00
$_POST [ 'msg' ] = str_replace ( '%usersmile%' , '' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = tolink ( $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '::' , '' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '[s1;]' , '"' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( " [s2;] " , '"' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '[s3;]' , '<' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( '[s4;]' , '>' , $_POST [ 'msg' ]);
$_POST [ 'msg' ] = str_replace ( ' ' , ' ' , $_POST [ 'msg' ]);
2022-12-19 20:26:14 +02:00
$smg = mysql_fetch_array (
mysql_query (
'SELECT * FROM `chat` WHERE `login` = "' . $u -> info [ 'login' ] . '" AND `time` > ' . ( time (
) - 20 ) . ' ORDER BY `time` DESC LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( $u -> info [ 'exp' ] < 499999999 ) {
2022-12-19 20:26:14 +02:00
$lmg = mysql_fetch_array (
mysql_query (
'SELECT COUNT(`id`) FROM `chat` WHERE `login` = "' . $u -> info [ 'login' ] . '" AND `time` > ' . ( time (
) - 5 ) . ' LIMIT 2'
)
);
2022-07-01 12:45:43 +00:00
} else {
$lmg [ 0 ] = 0 ;
}
$testsmg = ' ' . $_POST [ 'msg' ] . ' ' ;
if ( $testsmg == $smg [ 'text' ] && $u -> info [ 'exp' ] > 100000 ) {
if ( $u -> info [ 'molch1' ] < time ()) {
2023-01-10 18:29:32 +02:00
//Молчанка за флуд на 5 минут
2022-07-01 12:45:43 +00:00
$u -> info [ 'molch1' ] = time () + 1200 ;
2022-12-19 20:26:14 +02:00
$r [ 'js' ] .= 'chat.sendMsg(["new","' . time (
2023-01-10 18:29:32 +02:00
) . '","6","","' . $u -> info [ 'login' ] . '","<small>Вы наказаны за � пам на 20 минут </small>","Black","1","1","0"]);' ;
2022-07-01 12:45:43 +00:00
2022-12-19 20:26:14 +02:00
mysql_query (
'UPDATE `users` SET `molch1` = "' . $u -> info [ 'molch1' ] . '" WHERE `id` = "' . $u -> info [ 'id' ] . '" LIMIT 1'
);
2022-07-01 12:45:43 +00:00
mysql_query ( " UPDATE `chat` SET `delete` = 1 WHERE `login` = ' " . $u -> info [ 'login' ] . " ' LIMIT 1000 " );
2023-01-10 18:29:32 +02:00
$_POST [ 'msg' ] = 'Я � памер ' . $u -> info [ ' login '] . ' и мен� нужно заблокировать https :// new - combats . com / info / ' . $u->info[' id '] . ' ';
2022-07-01 12:45:43 +00:00
2022-12-19 20:26:14 +02:00
mysql_query(
' INSERT INTO `chat` ( `nosee` , `invis` , `da` , `delete` , `molch` , `new` , `login` , `to` , `city` , `room` , `time` , `type` , `spam` , `text` , `toChat` , `color` , `typeTime` , `sound` , `global` ) VALUES (
2022-06-07 00:30:34 +03:00
" 0 " ,
2022-07-01 12:45:43 +00:00
" ' . $u->info ['invis'] . ' " ,
2022-06-07 00:30:34 +03:00
" 1 " ,
" 0 " ,
" 0 " ,
" 1 " ,
" " ,
" " ,
2022-07-01 12:45:43 +00:00
" ' . $u->info ['city'] . ' " ,
2022-06-07 00:30:34 +03:00
" 0 " ,
2022-07-01 12:45:43 +00:00
" ' . time() . ' " ,
2022-06-07 00:30:34 +03:00
" 6 " ,
" 0 " ,
2022-07-01 12:45:43 +00:00
" ' . mysql_real_escape_string( $_POST['msg'] ) . ' " ,
2022-06-07 00:30:34 +03:00
" 0 " ,
" red " ,
" 0 " ,
" 0 " ,
2022-12-19 20:26:14 +02:00
" 0 " ) '
);
2022-07-01 12:45:43 +00:00
2023-01-10 18:29:32 +02:00
$_POST[' msg '] = ' Ðто Ñ� упер проект ! Ð’Ñ� ем уÑ� пехов ! ';
2022-07-01 12:45:43 +00:00
2022-12-19 20:26:14 +02:00
mysql_query(
' INSERT INTO `chat` ( `nosee` , `invis` , `da` , `delete` , `molch` , `new` , `login` , `to` , `city` , `room` , `time` , `type` , `spam` , `text` , `toChat` , `color` , `typeTime` , `sound` , `global` ) VALUES (
2022-06-07 00:30:34 +03:00
" 0 " ,
2022-07-01 12:45:43 +00:00
" ' . $u->info ['invis'] . ' " ,
2022-06-07 00:30:34 +03:00
" 1 " ,
" 0 " ,
" 0 " ,
" 1 " ,
2022-07-01 12:45:43 +00:00
" ' . $u->info ['login'] . ' " ,
2022-06-07 00:30:34 +03:00
" " ,
2022-07-01 12:45:43 +00:00
" ' . $u->info ['city'] . ' " ,
2022-06-07 00:30:34 +03:00
" 0 " ,
2022-07-01 12:45:43 +00:00
" ' . time() . ' " ,
2022-06-07 00:30:34 +03:00
" 1 " ,
" 0 " ,
2022-07-01 12:45:43 +00:00
" ' . mysql_real_escape_string( $_POST['msg'] ) . ' " ,
2022-06-07 00:30:34 +03:00
" 0 " ,
" Black " ,
" 0 " ,
" 0 " ,
2022-12-19 20:26:14 +02:00
" 0 " ) '
);
2022-07-01 12:45:43 +00:00
}
} elseif ($lmg[0] > 0) {
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>Вы не можете отправл� ть так ча� то � ообщени� ... </small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
if ($u->info[' molch1 '] < time()) {
if ($u->info[' molch1 '] < -5) {
$u->info[' molch1 '] = time() + 300;
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>Вы наказаны за флуд на 5 минут </small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
} elseif ($u->info[' molch1 '] < 0) {
$u->info[' molch1 ']--;
} else {
$u->info[' molch1 '] = -1;
}
2022-12-19 20:26:14 +02:00
mysql_query(
' UPDATE `users` SET `molch1` = " ' . $u->info ['molch1'] . ' " WHERE `id` = " ' . $u->info ['id'] . ' " LIMIT 1 '
);
2022-07-01 12:45:43 +00:00
}
2022-12-19 20:26:14 +02:00
} elseif ((preg_match("/private\[(.*?)\]/", $_POST[' msg '], $msg[' to ']) || preg_match(
"/private \[(.*?)\]/", $_POST[' msg '], $msg[' to ']
)) && $u->info[' exp '] < 150000) {
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>Вы не можете отправл� ть приват до до� тижени� 150000 опыта.</small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
//Запи� ываем данные
2022-07-01 12:45:43 +00:00
$msg[' time '] = time();
$msg[' spam '] = 0;
$msg[' type '] = 1;
$msg[' toChat '] = 0;
$msg[' color '] = ' Black ';
$msg[' typeTime '] = 0;
$msg[' sound '] = 0;
$msg[' global '] = 0;
$msg[' molch '] = 0;
$msg[' login '] = $u->info[' login '];
$msg[' cancel '] = 0;
$msg[' delete '] = 0;
$msg[' to '] = ' ';
$msg[' da '] = 0;
$msg[' color '] = $u->info[' chatColor '];
2023-01-10 18:29:32 +02:00
//� ормируем типы � ообщений
2022-07-01 12:45:43 +00:00
if (preg_match("/private\[(.*?)\]/", $_POST[' msg '], $msg[' to '])) {
$msg[' to '] = $msg[' to '][1];
$_POST[' msg '] = str_replace(' private [ ' . $msg[' to '] . ' ] ', ' private [ ' . $msg[' to '] . ' ] ', $_POST[' msg ']);
$msg[' to '] = ' ';
} elseif (preg_match("/to\[(.*?)\]/", $_POST[' msg '], $msg[' to '])) {
$msg[' to '] = $msg[' to '][1];
$_POST[' msg '] = str_replace(' to [ ' . $msg[' to '] . ' ] ', ' to [ ' . $msg[' to '] . ' ] ', $_POST[' msg ']);
$msg[' to '] = ' ';
}
if (preg_match("/private \[(.*?)\]/", $_POST[' msg '], $msg[' to '])) {
$msg[' to '] = trim($msg[' to '][' 1 '], ' ');
$msg[' type '] = 3;
$_POST[' msg '] = str_replace(' private [ ' . $msg[' to '] . ' ] ', ' ', $_POST[' msg ']);
} elseif (preg_match("/to \[(.*?)\]/", $_POST[' msg '], $msg[' to '])) {
$msg[' to '] = trim($msg[' to '][' 1 '], ' ');
$msg[' type '] = 2;
$_POST[' msg '] = str_replace(' to [ ' . $msg[' to '] . ' ] ', ' ', $_POST[' msg ']);
}
2023-01-10 18:29:32 +02:00
if ($u->info[' admin '] == 0) { //ТУТ SPAM
2022-07-01 12:45:43 +00:00
if ($msg[' to '] != ' ' && !isset($admq[' id '])) {
2022-12-19 20:26:14 +02:00
$admq = Db::getRow(' select id , admin from users where login = ? and admin > 0 ', [$msg[' to ']]);
2022-07-01 12:45:43 +00:00
if ($msg[' type '] != 3) {
unset($admq);
}
}
if (!isset($admq[' id '])) {
2023-01-10 18:29:32 +02:00
$msg[' fspam '] = $filter->spamFiltr(str_replace(' точка ', ' . ', str_replace(' ру ', ' ru ', $_POST[' msg '])));
2022-07-01 12:45:43 +00:00
if ($msg[' fspam '] != ' 0 ') {
$msg[' spam '] = 1;
$msg[' delete '] = 1;
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>В нашем чате запрещает� � � ообщать � � ылки на атльтернативные проекты. Повторные попытки могут приве� ти к блокировке пер� онажа.</small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
}
if ($msg[' spam '] == 1 && $u->info[' molch1 '] < time() && $u->info[' admin '] == 0) {
2022-12-19 20:26:14 +02:00
$mban = $u->testAction(
' `uid` = " ' . $u->info ['id'] . ' " AND `time` >= ' . strtotime(
' now 00 : 00 : 00 '
) . ' AND `vars` = " msg_bans " LIMIT 1 ', 1
);
2022-07-01 12:45:43 +00:00
if (!isset($mban[' id '])) {
$u->addAction(time(), ' msg_bans ', ' 1 ');
$mban[' vals '] = 0;
} else {
2022-12-19 20:26:14 +02:00
mysql_query(
' UPDATE `actions` SET `vals` = `vals` + 1 WHERE `id` = " ' . $mban['id'] . ' " LIMIT 1 '
);
2022-07-01 12:45:43 +00:00
$msg[' delete '] = time();
}
if ($mban[' vals '] + 1 < 2) {
$msg[' fspam '] = str_replace(' % ', ' </ b > , < b > ', $msg[' fspam ']);
$msg[' fspam '] = ' < b > ' . ltrim($msg[' fspam '], ' 0 </ b > , < b > ') . ' </ b > ';
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>В нашем чате запрещает� � � ообщать � � ылки на атльтернативные проекты. Запрещенные � лова: ' . $msg['fspam'] . '. Предупреждени� [' . ( $mban['vals'] + 1) . '/1]</small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
} else {
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>В нашем чате запрещает� � � ообщать � � ылки на атльтернативные проекты. Вы наказаны за нарушение правил общени� .</small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-12-19 20:26:14 +02:00
mysql_query(
2023-01-10 18:29:32 +02:00
"INSERT INTO `chat` (`new`,`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`) VALUES (' 1 ',' " . $u->info ['city'] . " ',' 0 ',' ',' ',' < b > � втоинформатор </ b >: Пер� онаж " . $u->info ['login'] . " [ " . $u->info ['level'] . " ] был наказан за нарушение правил общени� . ',' - 1 ',' 6 ',' 0 ')"
2022-12-19 20:26:14 +02:00
);
mysql_query(
' UPDATE `users` SET `molch1` = " ' . (time() + 1 * 60 * 60) . ' " , `molch2` = " ' . (time(
) + 1 * 60 * 60) . ' " , `info_delete` = " ' . (time(
) + 1 * 60 * 60) . ' " WHERE `id` = " ' . $u->info ['id'] . ' " LIMIT 1 '
);
2023-01-10 18:29:32 +02:00
$rtxt = $rang . ' & quot ; ' . $u->info[' login '] . ' & quot ; < small >< font color = red > � втоинформатор </ font ></ small >: ' . $msg[' text '] . ' [ ' . $msg[' fspam '] . ' ] . ';
2022-12-19 20:26:14 +02:00
mysql_query(
"INSERT INTO `users_delo` (`uid`,`ip`,`city`,`time`,`text`,`login`,`type`) VALUES (' " . $u->info ['id'] . " ',' " . $_SERVER['REMOTE_ADDR'] . " ',' " . $u->info ['city'] . " ',' " . time(
) . " ',' " . $rtxt . " ',' " . $u->info ['login'] . " ',0)"
);
2022-07-01 12:45:43 +00:00
}
}
unset($admq);
} else {
unset($admq);
}
}
2022-12-19 20:26:14 +02:00
$qix = mysql_fetch_array(
mysql_query(
' SELECT `id` FROM `friends` WHERE `ignor` > 0 AND `login_ignor` = " ' . mysql_real_escape_string(
$pl['login']
) . ' " AND ( `user_ignor` = " ' . $u->info ['login'] . ' " OR `user` = " ' . $u->info ['id'] . ' " ) LIMIT 1 '
)
);
2022-07-01 12:45:43 +00:00
if (isset($qix[' id '])) {
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <b>Ва� добавили в игнор</b>: Вы не можете отправл� ть � ообщени� пер� онажу "' . htmlspecialchars(
2022-12-19 20:26:14 +02:00
$msg['to']
) . '". " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
$msg[' cancel ']++;
}
if ($msg[' type '] == 3 && $msg[' to '] == ' klan ') {
if ($u->info[' clan '] == 0) {
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>Вы не � вл� ете� ь ча� тью одного из <b>Кланов</b> и не можете общать� � по � тому каналу.</small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
$msg[' cancel ']++;
} else {
$msg[' to '] = ' k ' . $u->info[' clan '];
$msg[' da '] = 1;
}
}
if ($u->info[' molch1 '] > time()) {
if ($msg[' to '] != ' ' && !isset($admq[' id '])) {
2022-12-19 20:26:14 +02:00
$admq = mysql_fetch_array(
mysql_query(
' SELECT `id` , `admin` FROM `users` WHERE `login` = " ' . mysql_real_escape_string(
$msg['to']
) . ' " AND `admin` > 0 LIMIT 1 '
)
);
2022-07-01 12:45:43 +00:00
if ($msg[' type '] != 3) {
unset($admq);
}
}
if (!isset($admq[' id '])) {
$msg[' molch '] = 1;
}
}
if ($msg[' cancel '] == 0) {
if (is_array($msg[' to '])) {
$msg[' to '] = ' ';
}
if ($msg[' type '] == 3 && $msg[' da '] > 0) {
$msg[' type '] = -3;
}
$msw = $chat->smileText($_POST[' msg '], $msg[' to '], $u->info[' room '], $u->info[' city ']);
$nosend = 0;
if ($msw) {
$_POST[' msg '] = $msw;
$msg[' to '] = ' ';
$msg[' type '] = 21;
if ($msw == ' USER IS FALSE ') {
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small>Пер� онажа нет в данной комнате.</small> " , " Black " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
$nosend = 1;
}
} elseif ($chat->str_count($_POST[' msg '], 3) == ' / e ') {
$msg[' type '] = 21;
$_POST[' msg '] = ltrim($_POST[' msg '], ' / e ');
2023-01-10 18:29:32 +02:00
} elseif ($chat->str_count($_POST[' msg '], 3) == ' / е ') {
2022-07-01 12:45:43 +00:00
$msg[' type '] = 21;
2023-01-10 18:29:32 +02:00
$_POST[' msg '] = ltrim($_POST[' msg '], ' / е ');
2022-07-01 12:45:43 +00:00
} elseif ($chat->str_count($_POST[' msg '], 4) == ' / e ') {
$msg[' type '] = 21;
$_POST[' msg '] = ltrim($_POST[' msg '], ' / e ');
2023-01-10 18:29:32 +02:00
} elseif ($chat->str_count($_POST[' msg '], 4) == ' / е ') {
2022-07-01 12:45:43 +00:00
$msg[' type '] = 21;
2023-01-10 18:29:32 +02:00
$_POST[' msg '] = ltrim($_POST[' msg '], ' / е ');
2022-07-01 12:45:43 +00:00
}
if ($nosend == 0) {
2023-01-10 18:29:32 +02:00
//Ð?менные Ñ� майлики
$_POST[' msg '] = str_replace(' % usersmile %- ', ' % usеrsmilе %- ', $_POST[' msg ']);
2022-07-01 12:45:43 +00:00
$usml = explode(' , ', $u->info[' add_smiles ']);
$i = 0;
while ($i < count($usml)) {
2022-12-19 20:26:14 +02:00
$_POST[' msg '] = str_replace(
' : ' . $usml[$i] . ' : ', ' :% usersmile %- ' . $usml[$i] . ' : ', $_POST[' msg ']
);
2022-07-01 12:45:43 +00:00
$i++;
}
$msg[' nosee '] = 0;
if ($u->info[' level '] < 1) {
$msg[' nosee '] = round($u->info[' host_reg ']);
if ($msg[' nosee '] == 0) {
$msg[' nosee '] = -1;
2022-12-19 20:26:14 +02:00
$r[' js '] .= ' chat . sendMsg ([ " new " , " ' . time(
2023-01-10 18:29:32 +02:00
) . ' " , " 6 " , " " , " ' . $u->info ['login'] . ' " , " <small><b>В цел� х борьбы против рекламы, общение в чате до� тупно � 8-го уровн� .</b> </small> " , " red " , " 1 " , " 1 " , " 0 " ]); ';
2022-07-01 12:45:43 +00:00
}
}
2022-12-19 20:26:14 +02:00
mysql_query(
2023-01-06 16:57:25 +02:00
' INSERT INTO `chat` ( `nosee` , `invis` , `da` , `delete` , `molch` , `new` , `login` , `to` , `city` , `room` , `time` , `type` , `spam` , `text` , `toChat` , `color` , `typeTime` , `sound` , `global` ) VALUES (
2022-07-01 12:45:43 +00:00
" ' . $msg['nosee'] . ' " ,
" ' . $u->info ['invis'] . ' " ,
" ' . $msg['da'] . ' " ,
" ' . $msg['delete'] . ' " ,
" ' . $msg['molch'] . ' " ,
2022-06-07 00:30:34 +03:00
" 1 " ,
2022-07-01 12:45:43 +00:00
" ' . $msg['login'] . ' " ,
" ' . mysql_real_escape_string( $msg['to'] ) . ' " ,
" ' . $u->info ['city'] . ' " ,
" ' . $u->info ['room'] . ' " ,
" ' . $msg['time'] . ' " ,
" ' . $msg['type'] . ' " ,
" ' . $msg['spam'] . ' " ,
" ' . mysql_real_escape_string( $_POST['msg'] ) . ' " ,
" ' . $msg['toChat'] . ' " ,
" ' . $msg['color'] . ' " ,
" ' . $msg['typeTime'] . ' " ,
" ' . $msg['sound'] . ' " ,
2022-12-19 20:26:14 +02:00
" ' . $msg['global'] . ' " ) '
);
2022-07-01 12:45:43 +00:00
}
}
2023-01-10 18:29:32 +02:00
if ($msg[' type '] == 2 && mb_convert_case($msg[' to '], MB_CASE_LOWER) == ' комментатор ') {
if (preg_match("/анекдот/i", mb_convert_case($_POST[' msg '], MB_CASE_LOWER))) {
2022-07-01 12:45:43 +00:00
$text_com = ' ';
2022-12-19 20:26:14 +02:00
$sp_all = mysql_fetch_array(
mysql_query(
' SELECT COUNT ( `id` ) FROM `a_com_act` WHERE `act` = " ' . $com_act . ' " AND `time` > " ' . time(
) . ' " LIMIT 5 '
)
);
2022-07-01 12:45:43 +00:00
if ($sp_all[0] > 0) {
if (rand(0, 100) < 75) {
$text_com = [
2023-01-10 18:29:32 +02:00
' От� тань попрошайка ! ... Р? щу анекдоты , интернет не маленький ! ',
' Подожди ... Сейча� что - нибудь найду ',
' Почти нашел ... ',
' Вот один е� ть , но он не интере� ный ... ',
' Ð� Ñ� вет на центральной площади тьму & quot ; пинает & quot ; ... ÐÑ… ... ',
2022-07-01 12:45:43 +00:00
];
$text_com = $text_com[rand(0, (count($text_com) - 1))];
}
} else {
$sp_all = mysql_fetch_array(mysql_query(' SELECT COUNT ( `id` ) FROM `a_com_anekdot` '));
$sp_all = rand(1, $sp_all[0]);
2022-12-19 20:26:14 +02:00
$sp_all = mysql_fetch_array(
mysql_query(' SELECT * FROM `a_com_anekdot` WHERE `id` = " ' . $sp_all . ' " LIMIT 1 ')
);
2022-07-01 12:45:43 +00:00
if (isset($sp_all[' id '])) {
$text_com = $sp_all[' text '];
$text_com = str_replace("<br>", "<br> ", $text_com);
$text_com = str_replace("<br />", "<br /> ", $text_com);
$text_com = str_ireplace("\r\n", "", $text_com);
$text_com = str_replace("", "", $text_com);
2023-01-10 18:29:32 +02:00
$text_com = ' < font color = red >< b > � некдот </ b ></ font >:< br >& nbsp ; & nbsp ; ' . $text_com . ' < br > ';
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
$text_com = ' � некдот из головы вылетел ... ';
2022-07-01 12:45:43 +00:00
}
2022-12-19 20:26:14 +02:00
mysql_query(
' INSERT INTO `a_com_act` ( `act` , `time` , `uid` ) VALUES ( " 0 " , " ' . (time(
) + 60) . ' " , " ' . $u->info ['id'] . ' " ) '
);
2022-07-01 12:45:43 +00:00
}
if ($text_com != ' ') {
2022-12-19 20:26:14 +02:00
mysql_query(
2023-01-10 18:29:32 +02:00
' INSERT INTO `chat` ( `text` , `login` , `to` , `city` , `room` , `type` , `time` , `new` ) VALUES ( " ' . $text_com . ' " , " Комментатор " , " ' . $u->info ['login'] . ' " , " ' . $u->info ['city'] . ' " , " ' . $u->info ['room'] . ' " , " 2 " , " ' . time(
2022-12-19 20:26:14 +02:00
) . ' " , " 1 " ) '
);
2022-07-01 12:45:43 +00:00
}
} else {
include(' commentator . php ');
if ($comment != ' ') {
2022-12-19 20:26:14 +02:00
mysql_query(
2023-01-10 18:29:32 +02:00
' INSERT INTO `chat` ( `text` , `login` , `to` , `city` , `room` , `type` , `time` , `new` ) VALUES ( " ' . $comment . ' " , " Комментатор " , " ' . $u->info ['login'] . ' " , " ' . $u->info ['city'] . ' " , " ' . $u->info ['room'] . ' " , " 2 " , " ' . time(
2022-12-19 20:26:14 +02:00
) . ' " , " 1 " ) '
);
2022-07-01 12:45:43 +00:00
}
}
}
2022-12-19 20:26:14 +02:00
mysql_query(
' UPDATE `users` SET `afk` = " " , `dnd` = " " , `timeMain` = " ' . time(
) . ' " WHERE `id` = " ' . $u->info ['id'] . ' " LIMIT 1 '
);
2022-07-01 12:45:43 +00:00
}
}
2023-01-10 18:29:32 +02:00
//Получаем � пи� ок онлайн
2022-07-01 12:45:43 +00:00
if ($_GET[' r1 '] != 0) {
2022-12-19 20:26:14 +02:00
$sp = mysql_query(
' SELECT `u` . `pass` , `u` . `sex` , `s` . `dnow` , `u` . `timeMain` , `s` . `bot` , `s` . `atack` , `u` . `afk` , `u` . `dnd` , `u` . `banned` , `u` . `molch1` , `u` . `room` , `u` . `id` , `u` . `city` , `u` . `cityreg` , `u` . `online` , `u` . `align` , `u` . `clan` , `u` . `login` , `u` . `level` , `u` . `inTurnir` , `u` . `battle` , `u` . `invis` , `u` . `inUser` , `s` . `x` , `s` . `y` FROM `users` AS `u` LEFT JOIN `stats` AS `s` ON `s` . `id` = `u` . `id` WHERE (( `u` . `room` = " ' . $u->info ['room'] . ' " AND " ' . mysql_real_escape_string(
(int) $_GET['r3']
) . ' " != " 1 " ) OR ( " ' . mysql_real_escape_string(
(int) $_GET['r3']
) . ' " = " 1 " AND `pass` NOT LIKE " %saint% " )) AND `mail` != " No E-mail " AND `room` != " 303 " ORDER BY `u` . `inUser` DESC , `u` . `online` DESC , `u` . `login` DESC LIMIT 1000 '
);
2022-07-01 12:45:43 +00:00
$ar_id = 0;
$ar_lvl = 0;
2022-12-19 20:26:14 +02:00
$ar_all = ' 0 ';
2022-07-01 12:45:43 +00:00
$usl = [];
$cw = [];
$usid = [];
while ($pl = mysql_fetch_array($sp)) {
$ysee = 1;
if ($pl[' inUser '] > 0) {
if ($pl[' inTurnir '] == 0) {
$ysee = 0;
} else {
if ($pl[' online '] < time() - 120) {
2022-12-30 21:03:37 +02:00
User::setOnline($pl[' id ']);
2022-07-01 12:45:43 +00:00
}
}
} else {
if ($pl[' inTurnir '] > 0) {
$ysee = 0;
}
}
if (!isset($usl[$pl[' login ']])) {
$ysee = 1;
}
if (
(
(int)$_GET[' r3 '] != 1 &&
$u->info[' dnow '] != $pl[' dnow ']
) ||
(
$pl[' room '] >= 362 &&
$pl[' room '] <= 366 &&
(int)$_GET[' r3 '] != 1 &&
(
$pl[' x '] != $u->info[' x '] ||
$pl[' y '] != $u->info[' y '] ||
$pl[' room '] != $u->info[' room ']
)
) ||
$usid[$pl[' login ']]
) {
$ysee = 0;
}
$usl[$pl[' login ']] = $pl[' id '];
if (
(
$pl[' online '] > time() - 520 ||
$pl[' inUser '] > 0
) &&
(
$pl[' bot '] != 1 ||
$pl[' pass '] == ' 212121 q '
) &&
$pl[' banned '] == 0 &&
$ysee == 1
) {
$usid[$pl[' login ']] = true;
if ($pl[' invis '] != 1 && $pl[' invis '] < time()) {
if ($pl[' clan '] > 0) {
if ($u->info[' clan '] > 0 && $pl[' clan '] != $u->info[' clan ']) {
if (!isset($cw[' war '][$pl[' clan ']][$u->info[' clan ']])) {
2022-12-19 20:26:14 +02:00
$pl[' cwar '] = mysql_fetch_array(
mysql_query(
' SELECT `id` , `type` FROM `clan_wars` WHERE
2022-07-01 12:45:43 +00:00
(( `clan1` = " ' . $pl['clan'] . ' " AND `clan2` = " ' . $u->info ['clan'] . ' " ) OR ( `clan2` = " ' . $pl['clan'] . ' " AND `clan1` = " ' . $u->info ['clan'] . ' " )) AND
2022-12-19 20:26:14 +02:00
`time_finish` > ' . time() . ' LIMIT 1 '
)
);
2022-07-01 12:45:43 +00:00
if (isset($pl[' cwar '][' id '])) {
$cw[' war '][$pl[' clan ']][$u->info[' clan ']] = $pl[' cwar '][' type '];
} else {
$cw[' war '][$pl[' clan ']][$u->info[' clan ']] = 0;
}
}
if ($cw[' war '][$pl[' clan ']][$u->info[' clan ']] > 0) {
$pl[' atack '] = $cw[' war '][$pl[' clan ']][$u->info[' clan ']];
}
}
if (!isset($cw[$pl[' clan ']])) {
2022-12-19 20:26:14 +02:00
$pl[' clan '] = mysql_fetch_array(
mysql_query(' SELECT `name_mini` FROM `clan` WHERE `id` = " ' . $pl['clan'] . ' " LIMIT 1 ')
);
2022-07-01 12:45:43 +00:00
} else {
$pl[' clan '] = $cw[$pl[' clan ']];
}
$pl[' clan '] = $pl[' clan '][' name_mini '];
}
if ($pl[' atack '] > time() || $pl[' atack '] == 1 || $pl[' atack '] == 2) {
if ($pl[' atack '] != 2) {
$pl[' atack '] = 1;
}
} else {
$pl[' atack '] = 0;
}
2022-12-19 20:26:14 +02:00
$trvm = mysql_fetch_array(
mysql_query(
' SELECT `id` , `name` FROM `eff_users` WHERE `uid` = " ' . $pl['id'] . ' " AND ( `id_eff` = " 4 " OR `id_eff` = " 6 " ) AND `delete` = " 0 " ORDER BY `id_eff` ASC LIMIT 6 '
)
);
2022-07-01 12:45:43 +00:00
$trvm = $trvm[' name '];
$r[' list '] .= ' " ' . $r['xu'] . ' " : [ " ' . $pl['id'] . ' " , " ' . $pl['login'] . ' " , " ' . $pl['level'] . ' " , " ' . $pl['align'] . ' " , " ' . $pl['clan'] . ' " , " ' . $pl['cityreg'] . ' " , " ' . $pl['city'] . ' " , " ' . $pl['room'] . ' " , " ' . $pl['afk'] . ' " , " ' . $pl['dnd'] . ' " , " ' . $pl['banned'] . ' " , " ' . $pl['molch1'] . ' " , " ' . $pl['battle'] . ' " , " ' . $pl['atack'] . ' " , " ' . $trvm . ' " , " ' . ( $pl['sex'] * 0) . ' " , " ' . $pl['align2'] . ' " ], ';
$ar_id += $pl[' id '];
$ar_lvl += $pl[' level '];
2022-12-19 20:26:14 +02:00
//trigger_error(' align : ' . $pl[' align '] . ' clan : ' . $pl[' clan '] . ' molch1 : ' . $pl[' molch1 '] . ' banned : ' . $pl[' banned '] . ' battle : ' . $pl[' battle ']);
$ar_all .= $pl[' align '] . $pl[' clan '] . $pl[' molch1 '] . $pl[' banned '] . $pl[' battle '] . 1;
2022-07-01 12:45:43 +00:00
}
$r[' xu ']++;
}
}
unset($pl, $sp);
$r[' list '] = rtrim($r[' list '], ' , ');
$r[' list '] = ' { ' . $r[' list '] . ' } ';
}
function json_fix_cyr($json_str)
{
return $json_str;
}
2023-01-10 18:29:32 +02:00
//Получаем � ообщени�
2022-07-01 12:45:43 +00:00
if (isset($_GET[' mid ']) && !isset($_POST[' mid '])) {
$_POST[' mid '] = $_GET[' mid '];
}
$i = 0;
$l = 0;
2022-12-19 20:26:14 +02:00
$sp = mysql_query(
' SELECT `nosee` , `frv` , `id` , `dn` , `active` , `invis` , `login` , `to` , `city` , `room` , `time` , `type` , `spam` , `text` , `toChat` , `color` , `typeTime` , `sound` , `global` , `delete` , `molch` , `da` FROM `chat` WHERE
2022-06-07 00:30:34 +03:00
(
(
`delete` > 0
AND
2022-07-01 12:45:43 +00:00
`time` > ' . (time() - 360) . '
2022-06-07 00:30:34 +03:00
)
OR
(
2022-07-01 12:45:43 +00:00
`time` > ' . (time() - 120) . '
2022-06-07 00:30:34 +03:00
OR
(
`time` = - 1
AND
(
2022-07-01 12:45:43 +00:00
`to` = " ' . $u->info ['login'] . ' "
2022-06-07 00:30:34 +03:00
OR
`type` = 8
)
)
OR
(
`time` < - 1
AND
2022-07-01 12:45:43 +00:00
`time` > - ' . time() . '
2022-06-07 00:30:34 +03:00
AND
(
2022-07-01 12:45:43 +00:00
`to` = " ' . $u->info ['login'] . ' "
2022-06-07 00:30:34 +03:00
OR
`type` = 8
OR
`to` = " "
)
)
)
)
AND
`new` = " 1 "
AND
(
2022-07-01 12:45:43 +00:00
`id` > ' . ((int)$_POST[' mid ']) . '
2022-06-07 00:30:34 +03:00
OR
`delete` > 0
OR
`spam` > 0
OR
(
`time` < 0
AND
2022-07-01 12:45:43 +00:00
`time` > - ' . time() . '
2022-06-07 00:30:34 +03:00
AND
(
2022-07-01 12:45:43 +00:00
`to` = " ' . $u->info ['login'] . ' "
2022-06-07 00:30:34 +03:00
OR
`to` = " "
)
)
)
2022-12-19 20:26:14 +02:00
ORDER BY `id` ASC '
);
2022-07-01 12:45:43 +00:00
while ($pl = mysql_fetch_array($sp)) {
if ($pl[' delete '] > 0) {
$r[' msg '] .= ' , " m' . $i . ' " : [ " ' . $pl['id'] . ' " , " " , " delete " , " " , " " , " " , " " , " " , " " , " 0 " , " 0 " , " 0 " , " 1 " , " " , " " ] ';
}
if ($pl[' type '] == 6 || $pl[' type '] == 8) {
$pl[' city '] = $u->info[' city '];
}
$see = 1;
2022-12-19 20:26:14 +02:00
if ($pl[' type '] == 8 && isModerOrAdmin($u->info)) {
2022-07-01 12:45:43 +00:00
$see = 0;
}
if (($pl[' type '] > 0 && $pl[' type '] < 4) || $pl[' type '] == -3) {
$pl[' room '] = $u->info[' room '];
$pl[' city '] = $u->info[' city '];
}
2023-01-10 18:29:32 +02:00
//Проверки на до� туп к про� мотру
2022-07-01 12:45:43 +00:00
if (
((
(
$pl[' type '] == 3 ||
$pl[' type '] == 4
) &&
(
$pl[' city '] == $u->info[' city '] ||
$pl[' global '] == 1
)
) ||
(
(
$pl[' type '] == 5 ||
$pl[' type '] == 6 ||
(
2022-12-19 20:26:14 +02:00
$pl[' type '] == 8 && isModerOrAdmin($u->info)
2022-07-01 12:45:43 +00:00
)
) &&
(
$pl[' city '] == $u->info[' city '] ||
$pl[' global '] == 1
)
) ||
(
$pl[' type '] == 7 &&
$pl[' city '] == $u->info[' city '] &&
$pl[' room '] == $u->info[' room ']
) ||
(
$pl[' type '] == 6 &&
(
$pl[' city '] == $u->info[' city '] ||
$pl[' global '] == 1
)
) ||
$pl[' type '] == 9 ||
$pl[' type '] == 10
) &&
$pl[' to '] != ' ' &&
$pl[' login '] != $u->info[' login '] &&
$pl[' to '] != $u->info[' login ']
) {
$n = 0;
$ex = explode(' , ', $pl[' to ']);
$j = 0;
while ($j < count($ex)) {
if (trim($ex[$j], ' ') == $u->info[' login ']) {
$n++;
}
$j++;
}
if ($n == 0) {
$see = 0;
}
unset($n, $j, $ex);
}
2023-01-10 18:29:32 +02:00
//Клановое � ообщение (по в� ем городам)
2022-07-01 12:45:43 +00:00
if ($pl[' type '] == -3 && ($pl[' to '] == ' k ' . $u->info[' clan '] || $u->info[' admin '] > 0)) {
$pl[' type '] = 3;
if ($pl[' to '] == ' k ' . $u->info[' clan ']) {
$pl[' to '] = ' klan ';
}
$see = 1;
} elseif ($pl[' type '] == -3) {
$see = 0;
}
2023-01-10 18:29:32 +02:00
//Си� темное � ообщение только в � той комнате
2022-07-01 12:45:43 +00:00
if (
$pl[' type '] == 6 &&
$pl[' room '] > 0 &&
$pl[' room '] != $u->info[' room '] &&
$pl[' to '] == ' '
) {
$see = 0;
}
2023-01-10 18:29:32 +02:00
//Си� темное � ообщение по в� ему городу
2022-07-01 12:45:43 +00:00
if ($pl[' type '] == 8 && $pl[' city '] != $u->info[' city '] && $pl[' global '] == 0) {
$see = 0;
}
2023-01-10 18:29:32 +02:00
//Сообщение � молчанкой
2022-07-01 12:45:43 +00:00
if ($pl[' molch '] > 0) {
$see = 0;
}
2023-01-10 18:29:32 +02:00
//Сообщение отправлено в другой комнате
2022-07-01 12:45:43 +00:00
if (
(
$pl[' type '] == 1 ||
$pl[' type '] == 2
) &&
(
$pl[' room '] != $u->info[' room '] ||
$pl[' city '] != $u->info[' city ']
) &&
(
$pl[' global '] == 0 ||
$_COOKIE[' chatCfg11 '] == 0
)
) {
$see = 0;
}
2023-01-10 18:29:32 +02:00
//Сообщение прочее, в другом городе
2022-07-01 12:45:43 +00:00
if ($pl[' city '] != $u->info[' city '] && $pl[' global '] == 0) {
$see = 0;
}
2023-01-10 18:29:32 +02:00
//Глобал
2022-07-01 12:45:43 +00:00
if ($pl[' global '] == 1 && $pl[' city '] == $u->info[' city '] && $pl[' type '] != -3) {
$see = 1;
}
2023-01-10 18:29:32 +02:00
//Пещерное � ообщение
2022-07-01 12:45:43 +00:00
if ($pl[' dn '] > 0 && $u->info[' dnow '] != $pl[' dn ']) {
$see = 0;
}
$modr = 0;
2022-12-19 20:26:14 +02:00
if (isModerOrAdmin($u->info)) {
2022-07-01 12:45:43 +00:00
$modr = 1;
}
if ($pl[' login '] != $u->info[' login '] && $pl[' nosee '] != 0 && $u->info[' id '] != $pl[' nosee '] && $u->info[' admin '] == 0 && $modr == 0) {
$see = 0;
} else {
if ($pl[' nosee '] != 0 && $pl[' login '] != $u->info[' login ']) {
2023-01-10 18:29:32 +02:00
$noseein = ' � крыто ';
2022-07-01 12:45:43 +00:00
if ($u->info[' id '] == $pl[' nosee ']) {
2023-01-10 18:29:32 +02:00
$noseein = ' ваш реферал ';
2022-07-01 12:45:43 +00:00
}
$pl[' text '] = ' < span style = \ " padding:0 5px 0 5px;background-color:#FFC; \" ><font color=red><small>[' . $noseein . ']</small></font> ' . $pl['text'] . '</span>';
if ( $u->info ['admin'] > 0 || $modr == 1) {
$see = 1;
}
}
}
if ( $see == 1 && $pl['delete'] == 0 && $pl['login'] != '') {
2022-12-19 20:26:14 +02:00
$qix = mysql_fetch_array(
mysql_query(
'SELECT `id` FROM `friends` WHERE `ignor` > 0 AND `login_ignor` = " ' . mysql_real_escape_string(
$pl[' login ']
) . ' " AND (`user_ignor` = " ' . $u->info[' login '] . ' " OR `user` = " ' . $u->info[' id '] . ' " ) LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if (isset( $qix['id'] )) {
$see = 0;
}
unset( $qix );
}
if ( $see == 1 && $pl['delete'] == 0) {
if ( $pl['time'] < 0) {
if ( $pl['to'] == '') {
$lmsch = mysql_fetch_array(mysql_query('SELECT `id` FROM `chat` ORDER BY `id` DESC LIMIT 1'));
if (isset( $lmsch['id'] )) {
$lmsch['id'] ++;
2022-12-19 20:26:14 +02:00
mysql_query(
'UPDATE `chat` SET `id` = " ' . $lmsch[' id '] . ' " ,`time` = " ' . time(
) . ' " WHERE `id` = " ' . $pl[' id '] . ' " LIMIT 1'
);
2022-07-01 12:45:43 +00:00
$pl['id'] = $lmsch['id'] ;
} else {
mysql_query('UPDATE `chat` SET `time` = " ' . time() . ' " WHERE `id` = " ' . $pl[' id '] . ' " LIMIT 1');
}
} else {
mysql_query('UPDATE `chat` SET `time` = " ' . time() . ' " WHERE `id` = " ' . $pl[' id '] . ' " LIMIT 1');
}
$pl['time'] = time();
}
if ( $pl['spam'] > 0) {
$r['msg'] .= ', " ' . $i . ' " : { " s " : " ' . $pl[' id '] . ' " }';
} else {
$reimg = [];
2022-12-19 20:26:14 +02:00
if (preg_match_all(
" / \ [ img\ [( .* ? ) \ ] \ ] \ [ 1 \ ] / " , $pl['text'] , $reimg
) && ( $u->info ['admin'] > 0 || $pl['type'] == 5 || $pl['type'] == 6 || $pl['type'] == 10 || $pl['type'] == 11)) {
2022-07-01 12:45:43 +00:00
$k = 0;
while ( $k <= count( $reimg[1] )) {
2022-12-19 20:26:14 +02:00
$pl['text'] = str_replace(
'[img[' . $reimg[1] [ $k ] . ']][1]',
'<img src=https://img.new-combats.com/i/' . $reimg[1] [ $k ] . ' height=19>', $pl['text']
);
2022-07-01 12:45:43 +00:00
$k ++;
}
}
2022-12-19 20:26:14 +02:00
if (preg_match_all(
" / \ [ img\ [( .* ? ) \ ] \ ] / " , $pl['text'] , $reimg
) && ( $u->info ['admin'] > 0 || $pl['type'] == 5 || $pl['type'] == 6 || $pl['type'] == 10 || $pl['type'] == 11)) {
2022-07-01 12:45:43 +00:00
$k = 0;
while ( $k <= count( $reimg[1] )) {
2022-12-19 20:26:14 +02:00
$pl['text'] = str_replace(
'[img[' . $reimg[1] [ $k ] . ']]', '<img src=https://img.new-combats.com/i/' . $reimg[1] [ $k ] . '>',
$pl['text']
);
2022-07-01 12:45:43 +00:00
$k ++;
}
}
if (preg_match_all( " / item\ [( .* ? ) \ ] / " , $pl['text'] , $reimg )) {
$k = 0;
while ( $k <= count( $reimg[1] )) {
2022-12-19 20:26:14 +02:00
$pl['text'] = str_replace(
'item[' . $reimg[1] [ $k ] . ']',
2023-01-10 18:29:32 +02:00
'<b oncontextmenu= \" return false; \" onClick= \" alert( \ 'Функци� временно недо� тупна! \ '); \" style= \" cursor:pointer; \" class= \" itemsInfo \" >Предмет</b>',
2022-12-19 20:26:14 +02:00
$pl['text']
);
2022-07-01 12:45:43 +00:00
$k ++;
}
}
2023-01-10 18:29:32 +02:00
if (preg_match_all( " / \ . ( ? : mp3 ) $ / i " , $pl['text'] , $reimg )) //ТУТ аудио audio
2022-07-01 12:45:43 +00:00
{
$k = 0;
while ( $k <= count( $reimg[1] )) {
2022-12-19 20:26:14 +02:00
$pl['text'] = str_replace(
'item[' . $reimg[1] [ $k ] . ']',
2023-01-10 18:29:32 +02:00
'<b oncontextmenu= \" return false; \" onClick= \" alert( \ 'Функци� временно недо� тупна! \ '); \" style= \" cursor:pointer; \" class= \" itemsInfo \" >� удио запи� ь</b>',
2022-12-19 20:26:14 +02:00
$pl['text']
);
2022-07-01 12:45:43 +00:00
$k ++;
}
}
if (preg_match_all( " / item \ [( .* ? ) \ ] / " , $pl['text'] , $reimg )) {
$k = 0;
while ( $k <= count( $reimg[1] )) {
2022-12-19 20:26:14 +02:00
$pl['text'] = str_replace(
'item [' . $reimg[1] [ $k ] . ']',
2023-01-10 18:29:32 +02:00
'<b oncontextmenu= \" return false; \" onClick= \" alert( \ 'Функци� временно недо� тупна! \ '); \" style= \" cursor:pointer; \" class= \" itemsInfo \" >Предмет</b>',
2022-12-19 20:26:14 +02:00
$pl['text']
);
2022-07-01 12:45:43 +00:00
$k ++;
}
}
if ( $pl['type'] != 3 && ( $pl['invis'] == 1 || $pl['invis'] > time())) {
if ( $u->info ['admin'] == 0) {
2023-01-10 18:29:32 +02:00
$pl['login'] = '<b><i>� евидимка</i></b>';
2022-07-01 12:45:43 +00:00
} else {
2023-01-10 18:29:32 +02:00
$pl['login'] = '<b><i>� евидимка</i></b></a> <small>(' . $pl['login'] . ')</small>';
2022-07-01 12:45:43 +00:00
}
}
if ( $pl['invis'] > 0 && ( $pl['type'] == 1 || $pl['type'] == 2)) {
$pl['color'] = 'Black';
}
2022-12-19 20:26:14 +02:00
$r['msg'] .= ', " m ' . $i . ' " :[ " ' . $pl[' id '] . ' " , " ' . $pl[' time '] . ' " , " ' . $pl[' type '] . ' " , " ' . $pl[' login '] . ' " , " ' . $pl[' to '] . ' " , " ' . $pl[' text '] . ' " , " ' . $pl[' color '] . ' " , " ' . $pl[' toChat '] . ' " , " ' . $pl[' typeTime '] . ' " , " ' . $pl[' sound '] . ' " , " ' . $pl[' global '] . ' " , " ' . $pl[' molch '] . ' " , " ' . $pl[' active '] . ' " , " ' . date(
' H : i ', $pl[' time ']
) . ' " , " ' . date(' d . m . Y H : i ', $pl[' time ']) . ' " , " ' . $pl[' frv '] . ' " , " ' . $pl[' invis '] . ' " ]';
2022-07-01 12:45:43 +00:00
}
}
if ( $l < $pl['id'] ) {
$l = $pl['id'] ;
}
$i ++;
}
$r['msg'] = ' { " ld " : " ' . (0 + $l) . ' " , " id " : " ' . $i . ' " ' . $r['msg'] . '}';
2022-12-19 20:26:14 +02:00
2023-01-10 18:29:32 +02:00
//Генерируем ключ
2022-07-01 12:45:43 +00:00
$r['key'] = md5( $u->room ['name'] . '+' . $ar_id . '+' . $ar_lvl . '+' . $ar_all );
unset( $ar_id , $ar_lvl );
if ( $_COOKIE['chatCfg12'] == 0) {
$_GET['key'] = time();
}
if ( $r['key'] == $_GET['key'] ) {
2023-01-10 18:29:32 +02:00
//Спи� ок онлайн о� тает� � неизменным
2022-07-01 12:45:43 +00:00
unset( $r['rn'] , $r['list'] , $r['key'] , $r['xu'] );
} elseif ( $_GET['r1'] != 0) {
2023-01-10 19:26:14 +02:00
$r['rn'] = $u->room ['name'];
$r['list'] = $r['list'] ;
2022-07-01 12:45:43 +00:00
}
2022-12-19 20:26:14 +02:00
$posts = mysql_fetch_array(
mysql_query(
'SELECT COUNT(`id`) FROM `items_users` AS `iu` WHERE `iu`.`uid` = " - 51 ' . $u->info[' id '] . ' " AND `iu`.`delete` = 0 AND `iu`.`inOdet` = 0 AND `iu`.`inShop` = 0 AND `iu`.`lastUPD` < ' . time(
) . ' LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
$posts = $posts[0] ;
if ( $posts > 0) {
$r['js'] .= ' $ ( " #postdiv").show();';
} else {
$r [ 'js' ] .= ' $("#postdiv").hide();' ;
}
2023-01-10 18:29:32 +02:00
//Предложени� в� тупить в клан
2022-07-01 12:45:43 +00:00
$sp = mysql_query ( 'SELECT * FROM `clan_add` WHERE `uid` = "' . $u -> info [ 'id' ] . '" AND `yes` = 0 AND `no` = 0' );
while ( $pl = mysql_fetch_array ( $sp )) {
2022-12-19 20:26:14 +02:00
$clns = mysql_fetch_array (
mysql_query ( 'SELECT `id`,`name`,`align` FROM `clan` WHERE `id` = "' . $pl [ 'clan' ] . '" LIMIT 1' )
);
$usr = mysql_fetch_array (
mysql_query ( 'SELECT `id`,`login`,`level` FROM `users` WHERE `id` = "' . $pl [ 'uid_clan' ] . '" LIMIT 1' )
);
2022-07-01 12:45:43 +00:00
$r [ 'js' ] .= 'top.inclanNew(' . $pl [ 'id' ] . ',"' . $clns [ 'align' ] . '","' . $clns [ 'id' ] . '","' . $clns [ 'name' ] . '","' . $usr [ 'login' ] . '</b>[' . $usr [ 'level' ] . ']<b>");' ;
}
unset ( $clns );
2023-01-10 18:29:32 +02:00
//Предложение на обмен
2022-12-19 20:26:14 +02:00
$trf = mysql_fetch_array (
mysql_query (
'SELECT * FROM `transfers` WHERE `uid2` = "' . $u -> info [ 'id' ] . '" AND `start2` = 0 AND `cancel1` = 0 AND `cancel2` = 0 LIMIT 1'
)
);
2022-07-01 12:45:43 +00:00
if ( isset ( $trf [ 'id' ])) {
$utf = mysql_fetch_array ( mysql_query ( 'SELECT `login` FROM `users` WHERE `id` = "' . $trf [ 'uid1' ] . '" LIMIT 1' ));
if ( isset ( $utf [ 'login' ]) && $u -> info [ 'battle' ] == 0 ) {
$r [ 'js' ] .= 'top.intransferNew(' . $trf [ 'id' ] . ',"' . $utf [ 'login' ] . '");' ;
} else {
mysql_query ( 'UPDATE `transfers` SET `cancel2` = "' . time () . '" WHERE `id` = "' . $trf [ 'id' ] . '" LIMIT 1' );
}
}
2023-01-10 19:26:14 +02:00
if ( $r [ 'js' ] == null ) {
2022-07-01 12:45:43 +00:00
unset ( $r [ 'js' ]);
}
2023-01-10 19:26:14 +02:00
if ( $r [ 'msg' ] == null ) {
2022-07-01 12:45:43 +00:00
unset ( $r [ 'msg' ]);
}
2023-01-10 19:26:14 +02:00
unset ( $c , $u , $db , $r [ 'js' ], $r [ 'msg' ]);
2022-07-01 12:45:43 +00:00
echo json_encode ( $r );