Файл: shaxty/user.php
Строк: 571
<?
// Функция пинка
function spamer($sp_m=NULL, $p_t=NULL)
{
global $db, $user,$user_id, $ver, $name, $set, $sid, $realtime, $gzib_pro, $div1, $div00, $div9;
if(isset($sp_m)) $sp_m=check($sp_m);
if(isset($p_t)) $p_t=check($p_t);
$ba= DB :: $dbh -> query("SELECT * FROM `spamer` WHERE `user_id`=? AND `code`=? LIMIT 1;", array($user_id, 1));
$ban = $ba -> fetch();
if ($ban > 0) {
echo '<div align="center">';
if(!isset($_POST['kod'])){
echo "<b>Вы привысили лимит активности!</b><br />Подтвердите, что вы не робот<br /> Введите код с картинки в поле ниже";
echo '<form action="?'.$_SERVER['QUERY_STRING'].'" method="post" enctype="multipart/form-data">';
echo '<img src="/shaxty_code.php?r='.rand(1000, 9999).'" alt="Проверочный код"/><br />';
echo '<b>Код с картинки:</b><br/><input type="text" size="5" maxlength="5" name="kod"/><br />';
echo '<br /><input type="submit" class="ibutton" value="Подтвердить"/></form><br /><br />';
}else{
$reg_kod = isset($_POST['kod']) ? check($_POST['kod']) : '';
// Проверка кода CAPTCHA
$err = 0;
if (empty($reg_kod) || strlen2($reg_kod) < 4){$err = 1;}
if ($reg_kod != $_SESSION['code']){$err = 1;}
if($err != 0){
header("Location: ?".$_SERVER['QUERY_STRING']);
}else{
mysql_query("DELETE FROM `spamer` WHERE `user_id` = '$user[id]'");
header("Location: ?".$_SERVER['QUERY_STRING']);
}
}
echo "</div>";
echo '<br />';
include_once (H.'/shaxty/foot.php');
exit();
}
}
// Функция пинка
function spamer_on($sp_m=NULL, $p_t=NULL)
{
global $db, $user,$user_id, $ver, $name, $set, $sid, $realtime, $gzib_pro, $div1, $div00, $div9;
if(isset($sp_m)) $sp_m=check($sp_m);
if(isset($p_t)) $p_t=check($p_t);
mysql_query ("INSERT INTO spamer (user_id,spam_m,post_time,code) VALUES ('".$user['id']."','".$sp_m."','".$p_t."','1')");
}
function GradientLetter($text, $from='', $to='', $mode = 'hex') {
$text = iconv("UTF-8", "windows-1251", $text);
if ($mode == 'hex') {
$to = hexdec($to['0'].$to['1']).','.hexdec($to['2'].$to['3']).','.hexdec($to['4'].$to['5']);
$from = hexdec($from['0'].$from['1']).",".hexdec($from['2'].$from['3']).",".hexdec($from['4'].$from['5']);
}
if (empty($text)) return null; else $levels = strlen($text);
if (empty($from)) $from = array(0, 0, 255); else $from = explode(',', $from);
if (empty($to)) $to = array(255, 0, 0); else $to = explode(',', $to); $output = null;
for ($i = 1; $i <= $levels; $i++) {
for ($ii = 0; $ii < 3; $ii++) {
$tmp[$ii] = $from[$ii] - $to[$ii];
$tmp[$ii] = floor($tmp[$ii] / $levels);
$rgb[$ii] = $from[$ii] - ($tmp[$ii] * $i);
if ($rgb[$ii] > 255) $rgb[$ii] = 255;
$rgb[$ii] = dechex($rgb[$ii]);
$rgb[$ii] = strtoupper($rgb[$ii]);
if (strlen($rgb[$ii]) < 2) $rgb[$ii] = '0'.$rgb[$ii];
}
$output .= '<span style="color: #'.$rgb['0'].$rgb['1'].$rgb['2'].'">'.$text[$i-1].'</span>';
}
return iconv("windows-1251", "UTF-8", $output);
}
// Авторизация по сессии
if (isset ($_SESSION['sesid']) && isset ($_SESSION['sesps'])) {
$user_id = intval($_SESSION['sesid']);
$user_ps = check($_SESSION['sesps']);
}
// Авторизация по COOKIE
elseif (isset ($_COOKIE['cookid']) && isset ($_COOKIE['cookps'])) {
$user_id = intval(base64_decode($_COOKIE['cookid']));
$_SESSION['sesid'] = $user_id;
$user_ps = check(md5($_COOKIE['cookps']));
$_SESSION['sesps'] = $user_ps;
$cookauth = true;
}
// Запрос в базе данных по юзеру
if ($user_id && $user_ps) {
$queryuser = DB :: $dbh -> query("SELECT * FROM `users` WHERE `id`=? LIMIT 1;", array($user_id));
$user = $queryuser -> fetch();
if ($user > 0) {
if ($user_ps === $user['pass']) {
//mysql_query("UPDATE `users` SET `user_ip` = '$ipp', `user_soft` = '$agn' WHERE `id` = '" . $user['id'] . "'");
//mysql_query("UPDATE `users` SET `url` = '".mysql_real_escape_string($_SERVER['SCRIPT_NAME'])."' WHERE `id` = '".$user_id."' LIMIT 1");
$tmvisit = date("d");
if($user["vis"]!=$tmvisit) DB :: $dbh -> exec("Update users set dayp='0',vis='".$tmvisit."' where id ='".$user_id."'");
// считаем время проведения юзера на сайте
if ($user['user_ip'] != $ipp)$sql .= "`user_ip` = '$ipp',";
if ($user['user_soft'] != $agn)$sql .= "`user_soft` = '".$agn."',";
if ($user['url'] != $_SERVER['SCRIPT_NAME'])$sql .= "`url` = '".mysql_real_escape_string($_SERVER['SCRIPT_NAME'])."',";
if($user['id']==1)$user['level'] = 9;
if ($user['onl'] > ($realtime - $set['time_aut']))
$user['total_on_site'] = $user['total_on_site'] + $realtime - $user['onl'];
DB :: $dbh -> exec("UPDATE `users` SET $sql `total_on_site` = '".$user['total_on_site']."', `onl` = '$realtime' WHERE `id` = '".$user['id']."'");
// Получаем данные пользователя
$login = $user['user'];
$level = $user['level'];
$max = $user['max'];
}
else {
// Если пароль не совпадает, уничтожаем переменные сессии и чистим куки
unset ($_SESSION['sesid']);
unset ($_SESSION['sesps']);
setcookie('cookid', '');
setcookie('cookps', '');
$user_id = false;
$user_ps = false;
}
}
else {
// Если юзер не найден, уничтожаем переменные сессии и чистим куки
unset ($_SESSION['sesid']);
unset ($_SESSION['sesps']);
setcookie('cookid', '');
setcookie('cookps', '');
$user_id = false;
$user_ps = false;
}
}
// Проверка юзера одобренность
if ($user["odobr"]==1) {
$title = 'Стоп!';
$align = 'center';
$head = 'Стоп!';
include_once (H.'shaxty/head.php');
echo '<b>Вы получите доступ к сайту только после одобрения администрацией!</b><br />
Попробуйте зайти поздне.<br />';
echo '<br />';
include_once (H.'shaxty/foot.php');
}
if (isset ($user['id'])) {
if ($mod == 'email_ok') {
$align = 'center';
$head = 'Подтверждение';
include_once ('shaxty/head.php');
$code = isset($_GET['code']) ? check($_GET['code']) : '';
$error = false;
if (!$id || !$code)
$error = 'Отсутствуют необходимые данные';
$req = mysql_query("SELECT * FROM `users` WHERE `id` = '" . $user['id'] . "' LIMIT 1");
if (mysql_num_rows($req) == 1) {
$res = mysql_fetch_array($req);
if (empty($res['email_session']) || empty($res['email_time']) || $code != $res['email_session']) {
$error = 'Ваш E-mail подтвержден ранее';
echo $div1.'<a href="/index.php">На главную</a>'.$div9;
}
if (!$error && $res['email_time'] < $realtime - 2592000) {
$error = 'Время, отведенное на подтверждение прошло';
echo $div1.'<a href="/index.php">На главную</a>'.$div9;
}
} else {
$error = 'Такого пользователя нет';
}
if (!$error) {
mysql_query("UPDATE `users` SET `email_session` = '', `email_time` = '', `email_pass_yes` = 1 WHERE `id` = '" . $user['id'] . "'");
echo "<b>Ваш E-mail успешно подтвержден</b><br />";
echo $div1.'<a href="/index.php">На главную</a>'.$div9;
} else {
// Выводим сообщение об ошибке
echo '' . $error . '</p>';
}
echo '<br />';
include_once (H.'shaxty/foot.php');
}
// Проверка подтверждения мыла
/*if ($user["email_pass_yes"]!=1 && $user['email_pass']!='') {
$title = 'Стоп!';
$align = 'center';
$head = 'Стоп!';
include_once (H.'shaxty/head.php');
echo '<b>Вы получите доступ к сайту только после подтверждение вашего E-mail!</b><br />
Проверте ваш почтовый ящик.<br /><br />Не пишло письмо?<br />';
echo '<form method="post" action="/index.php?'.SID.'" name="auth"><input type="submit" class="ibutton" value="Выслать еще раз" name="submit"/></form><br />';
if(isset($_POST['submit'])){
$mail = "" . $user['user'] . ",";
$mail .= "Для подтверждения E-mail вам необходимо перейти по ссылке: nn http://".$_SERVER['HTTP_HOST']."/index.php?mod=email_ok&id=" . $user['id'] . "&code=" . $user['email_session'] . " nn";
$mail .= "Ссылка действительна в течение 30 дней с момента ввода E-mail. По истечении 30 дней ваш аккаунт будет автоматически удален...rn";
if (addmail($user['email_pass'], "Подтверждение E-mail - ".$imjasajta, $mail))
{
echo '<br /><b>Письмо отправлено повторно</b><br />';
}
}
echo '<br />';
include_once (H.'shaxty/foot.php');
}
*/
// Ввод мыла ранее зареганными
if ($user['email_pass']==''){
$title = 'Введите данные';
$align = 'left';
$head = 'Введите данные';
include_once (H.'shaxty/head.php');
if(!isset($_POST['submit'])){
echo '<form method="post" action="/index.php?'.SID.'" name="auth">';
echo 'E-mail:<br /><input name="email_pass" maxlength="50" /><br />';
echo 'Адрес электронной почты для восстановления пароля. Рекомендуем использовать отдельный E-mail, не тот который вы укажете в анкете.<br />Указывайте реальный E-mail, вам неоюходимо будет его подтвердить...<br /><br />';
echo '<b>Секретный вопрос:</b><br/><select name="vopros_pass">
<option value="0">Ввести свой</option>
<option value="Девичья фамилия матери">Девичья фамилия матери</option>
<option value="Любимое блюдо">Любимое блюдо</option>
<option value="Кличка домашнего животного">Кличка домашнего животного</option>
<option value="Любимый цвет">Любимый цвет</option>
</select><br />';
echo '<b>Вопрос:</b><br/><input type="text" name="vopros_pass1" maxlength="30" /><br />';
echo '<b>Ответ:</b><br/><input type="text" name="otvet_pass" maxlength="30" /><br />';
echo 'Секретные вопрос и ответ необходимы для восстановления пароля. После регистрации эти данные нельзя будет изменить<br /><br />';
echo '<br /><input type="submit" class="ibutton" value="Сохранить" name="submit"/></form><br /><b>Все поля обязательны к заполнению!</b><br />';
}else{
$email_pass = isset($_POST['email_pass']) ? check($_POST['email_pass']) : '';
$meil = isset($_POST['meil']) ? check(rus_utf_tolower($_POST['meil'])) : '';
$vopros_pass = isset($_POST['vopros_pass']) ? check($_POST['vopros_pass']) : '';
$vopros_pass1 = isset($_POST['vopros_pass1']) ? check($_POST['vopros_pass1']) : '';
$otvet_pass = isset($_POST['otvet_pass']) ? check(rus_utf_tolower($_POST['otvet_pass'])) : '';
/*if (!preg_match('#^([a-z0-9_-.])+@([a-z0-9_-.])+(.([a-z0-9])+)+$#', $email_pass))
$error = $error.'Недопустимые символы в E-mail<br/>';*/
// Проверка имени
if (empty($email_pass)) $error = $error.'Не указан E-mail<br/>';
if ($vopros_pass == '0' && empty($vopros_pass1)) $error = $error.'Не указан вопрос<br/>';
if (empty($otvet_pass)) $error = $error.'Не указан ответ<br/>';
$req243 = mysql_query("select * from `users` where `email_pass`='".$email_pass."';");
if (mysql_num_rows($req243) != 0) {
$error = 'Пользователь таким E-mail уже зарегистрирован.<br/>';
}
if (empty($error)) {
// Высылаем инструкции на E-mail
$subject = 'Подтверждение E-mail';
$mail = "" . $user['user'] . ",";
$mail .= "Для подтверждения E-mail вам необходимо перейти по ссылке: nn http://".$_SERVER['HTTP_HOST']."/index.php?mod=email_ok&id=" . $user['id'] . "&code=" . session_id() . " nn";
$mail .= "Ссылка действительна в течение 30 дней с момента ввода E-mail. По истечении 30 дней ваш аккаунт будет автоматически удален...rn";
if (addmail($email_pass, "Подтверждение E-mail - ".$imjasajta, $mail))
{
if($vopros_pass == '0') $vopros_pass = $vopros_pass1;
mysql_query("UPDATE `users` SET `email_pass` = '$email_pass', `vopros_pass` = '$vopros_pass', `otvet_pass` = '$otvet_pass', `email_session` = '" . session_id() . "', `email_time` = '" . $realtime . "' WHERE `id` = '" . $user['id'] . "'");
echo '<br /><b>Теперь вам необходимо подтвердить ваш E-mail</b><br />Проверте ваш почтовый ящик, на него отправлено письмо с ссылкой для подтверждения<br /><br />';
} else {
echo 'Ошибка отправки сообщения';
}
}else echo $error;
}
echo '<br />';
include_once (H.'shaxty/foot.php');
}
}
// Проверка юзера одобренность
if ($user["odobr"]==2) {
$title = 'Стоп!';
$align = 'center';
$head = 'Стоп!';
include_once (H.'shaxty/head.php');
echo '<b>Вы не допущены на сайт!</b><br />';
echo '<br />';
include_once (H.'shaxty/foot.php');
}
// Проверка юзера на бан
$ba= DB :: $dbh -> query("SELECT * FROM `ban_users` WHERE `user_id`=? AND `ban_time`>? LIMIT 1;", array($user_id, $realtime));
$ban = $ba -> fetch();
if ($ban > 0) {
$title = 'Баня';
$align = 'center';
$head = 'Баня';
include_once (H.'shaxty/head.php');
echo '<b>'.$user['user'].'</b>, вы забаннены на <b>'.kikt($ban['ban_time']).'</b>
<br />Причина: <b>'.$ban['ban_reason'].'</b> <br />';
//Во избежание подобных ситуаций ознакомтесь с <a href="http://masteram.us/forum/pravila.php?">Правила</a><br />
///////////////////////////////////////////////////
echo '<b>Незнание этих Правил не только не освобождает Вас от ответственности за их нарушение, но и само по себе является нарушением!</b><br /><br />
<b>Общие правила для пользователей сайта</b><br /><br />
<b>1. Общие положения:</b><br />
а) Сайт посвящен вопросам призванным помочь wap-мастеру в разработке сайта, проекта или приложения для сайта.<br />
б) Все материалы и сообщения, размещаемые на сайте, отражают исключительно мнения их авторов, администрация сайта не дает каких-либо гарантий, выраженных явно, или подразумеваемых, что они полны, полезны или правдивы.<br />
в) Категорически запрещается ставить худший ответ модератору или администратору за предупреждение которое он выписал , за такое действие бан на 3 суток сразу и без предупреждения <br />
г) Использовать репутацию не по назначению запрещается! Если человек дизайнер, то ставить + только за помошь и т.д, а всякие *лови бро * , *отличный чел* , *в репу тебе минус* будут удаляться, а их авторы караться банов за использование репутации не по назначению. <br / ><br />
<b>2. Порядок поведения на сайте:</b><br />
а) Публикация ссылок на другие сайты допустима при условии, что страница, находящаяся по указанному адресу имеет непосредственное отношение к теме, приведена в качестве иллюстрации утверждения, высказанного автором сообщения.<br />
б) Запрещается размещение темы(сообщения) на посторонние ресурсы связанные с тематикой WM порталов,даже если ссылка приведена в ввиде иллюстрации...В противном случае вы будете блокироватся сроком бана от 10-20 дней!(на усмотрение администрации)<br />
в) На сайте применяется пост-модерация. Сообщения, нарушающие настоящие Правила, удаляются. Не следует воспринимать исчезновение своих сообщений следствием технического сбоя и помещать сообщения еще раз.<br />
г) Не одобряются попытки обратить внимание на низкий уровень знаний какого-либо участника сайта.Все когда-то не знали простых вещей.<br />
д) Вы обязаны соблюдать уважительное отношение к собеседнику, правильное (граммотное) и доходчивое изложение мыслей и фактов.<br />
е) Не обращайте внимания на маргиналов и прочих брутальных личностей. Не дразните и не подначивайте их - отсутствие внимания сразу сводит дискуссию на нет. Не стоит отвечать им той же монетой, даже если Вы считаете, что Вас оскорбили. Остальное - забота модераторов и администраторов.<br />
ж) Если Вы видите сообщение, нарушающее любое правило сайта, сообщите об этом администрации нажав кнопку "Спам", не стоит об этом кричать на форуме во всеуслышанье.<br /><br />
<b>3. При создании новых тем в форуме необходимо придерживаться следующих правил:</b><br />
а) Название темы должно быть информативным. Заголовки тем типа: "Подскажите", "Знающие люди, зайдите!", "Есть вопрос", "Вопрос по php-коду" и подобные лишь демонстрируют Ваше неуважение к остальным участникам.<br />
б) Тема должна соответствовать теме раздела, в котором она помещена. Не следует открывать тему в определенном разделе только потому, что Вы хотите получить быстрый ответ в более посещаемом разделе.<br />
в) Запрещается создание тем обращенных к конкретным участникам конференции (для этого существует "Приват").<br />
г) Запрещается продолжение обсyждений вопросов из тем, закpытых/удалённых администрацией.<br /> Перед тем как задать вопрос, настоятельно рекомендуем пользоваться поиском по форуму, наверняка Ваш вопрос уже обсуждался ранее.<br />
д) Поднимать тему разрешается РАЗ В СУТКИ!!! В противном случае вы получите нарушение в анкету.<br />
е) Запрещается создавать темы типа: *Взломайте страницу, сайт и т.п.*, у нас не хак форум! А раздел хакерам создан для защиты и методами борьбы с хакерами.<br /><br />
<b>4. Запрещается помещение сообщений, содержащих:</b><br />
а) Призывы к нарушению действующего законодательства, высказывания расистского характера, разжигание межнациональной розни, нагнетание обстановки на форуме и всего прочего, что попадает под действие УК РФ.<br />
б) Грубые, нецензурные выражения и оскорбления в любой форме (флейм) - сообщения, грубые по тону, содержащие "наезды" на личности.<br />
в) Бессмысленную или малосодержательную информацию, которая не несет смысловой нагрузки - пустую болтовню (флуд).<br />
г) Оффтоп, т.е. уход от основного обсуждения в рамках отдельной темы.<br />
д) Ложнyю инфоpмацию, клеветy, а также нечестные приемы ведения дискуссий в виде "передергиваний" высказываний собеседников.<br />
е) Откровенное рекламное содержание, в том числе с просьбой "Посетите/оцените мой сайт".<br />
ж) Безосновательные утверждения, что "это" лучше, а "это" хуже, а также глупые советы типа "выпей йаду", "полюби гугл" и т.д.<br />
з) Чрезмерное количество грамматических ошибок и жаргонных слов.<br />
и) Бесполезные сообщения на подобии «актуально», «вверх», «bump», «Ну что, никому не нужно?» и т.д. относятся к флуду и караются блокировкой Вашего аккаунта. Научитесь делать контрпредложения, чтобы заинтересовать потенциальных клиентов и тем самым поднять тему.<br />
к) Обсуждение правомерности создания той или иной темы форума или отдельных его постов, например, "топик создан не по правилам", "автор, хочешь бан?", "реклама?", "хватит спаммить, рекламщик", "сейчас будешь забанен", "тему в топку, такая уже была".... и подобные им.
Подобные сообщения будут приравнены к флуду и оффтопу, и их авторы будут наказаны.
Принимать решения, кто будет забанен, а кто нет, а так же соответствует ли публикация правилам сайта или нет - прерогатива Администрации.<br />
л) Обсуждение и выражение своих недовольств к действиям модераторов форума.<br />
м) Запрещается давать реф. ссылки! Это вам не партнёрский сайт. <br />
н) Запрещено размещать в одной теме несколько сообщений подряд, это будет приравниваться к флуду, если вы хотите что-то добавить или исправить, воспользуйтесь кнопкой Изменить пост [Изм]<br /><br />
<b>При создание тем в разделе кредит/займ . . . Вы обязаны указывать BL Вашего кошелька,срок на какое количество дней берете деньги и Ваши гарантии к возврату денег. . . (даете под залог сайт и т.д)</b><br />
а)Поправка в правилах раздела. Запрещенно создавать темы в разделе о займе, без заполненного WMID и кошелька в анкете. Все сделки проводятся только по реквизитам в анкете.<br />
б)Поправка. В связи с тем что указывать WMID и кошелек в анкету перед созданием темы о займе стало обязательно, ВСЕ ПОСТЫ ТИПА *ДАВАЙ КОШ, КУДА КИДАТЬ, ДАВАЙ ДАННЫЕ и тогдалее в этом роде * БУДУТ ПРИРАВНЕНЫ К ОФФТОПУ И НАКАЗЫВАТЬСЯ НАРУШЕНИЕМ В АНКЕТУ. Для вашего же блага выдавайте займы только на тот кошелек который указан в анкете заемщика. Следуйте правилам и всё будет хорошо.<br />
в)Авторы тем о займе с нарушением правил(не заполнен WMID или BL менее 20) будут наказаны баном на сутки!<br />
<b>Нарушения в анкету и автобан</b><br />
За нарушение правил сайта модератор/администратор выписывает нарушение в анкету, при наборе 3 нарушений пользователь автоматически попадает в автобан на 3 суток отбывать наказание. <br />
За выполнением требований Правил следит администрация, а также специально назначенные модераторы. Администрация имеет право не предупреждать пользователя о принимаемых мерах.<br /><br />
<b>5. Копирование или любое несанкционированное использование материалов сайта запрещено.</b><br /><br />
<b>Внимание! Если пользователь систематически игнорирует предупреждения администрации, то его учётная запись блокируется.</b><br /><br />';
/////////////////
echo '<br />';
include_once (H.'shaxty/foot.php');
}
$ba= DB :: $dbh -> query("SELECT * FROM `ban_users` WHERE `user_id`=? AND `ban_time`<? LIMIT 1;", array($user_id, $realtime));
$ban = $ba -> fetch();
if ($ban > 0) {
DB :: $dbh -> exec("DELETE FROM `ban_users` WHERE `user_id` = '".$user_id."' and `ban_time` < '$realtime'");
}
$ba= DB :: $dbh -> query("SELECT * FROM `kik_users` WHERE `user_id`=? AND `ban_time`<? LIMIT 1;", array($user_id, $realtime));
$ban = $ba -> fetch();
if ($ban > 0) {
DB :: $dbh -> exec("DELETE FROM `kik_users` WHERE `user_id` = '".$user_id."' and `ban_time` < '$realtime'");
}
// Бан ip
//$le = mysql_fetch_array(mysql_query ("Select * from users WHERE level = 9;"));
$le= DB :: $dbh -> query("SELECT * FROM `users` WHERE `level`=?;", array(9));
$le = $le -> fetch();
//$b_ip = mysql_fetch_array(mysql_query ("Select * from ban_ip;"));
$b_ip= DB :: $dbh -> query("SELECT * FROM `ban_ip`;");
$b_ip = $b_ip -> fetch();
if (substr_count($ipp, $b_ip['ip'])!=0 and substr_count($ipl, $b_ip['ipl'])!=0 and substr_count($ipp, $le['user_ip'])==0){
if (!empty ($b_ip['url'])) {
// Редирект по ссылке
header("Location: ".$b_ip['url']);
exit;
}
else {
$title = 'Баня';
$align = 'center';
$head = 'Баня';
include_once (H.'shaxty/head.php');
echo '<br /><b>Ваш IP забаннен!</b><br />';
echo '<br />';
include_once (H.'shaxty/foot.php');
}
}
// Бан Софт
$le= DB :: $dbh -> query("SELECT * FROM `users` WHERE `level`=?;", array(9));
$le = $le -> fetch();
$b_soft= DB :: $dbh -> query("SELECT * FROM `ban_soft` WHERE `soft`=?;", array($agn));
$b_soft = $b_soft -> fetch();
if ($agn == $b_soft['soft'] and $agn != $le['user_soft']){
if (!empty ($b_soft['url'])) {
// Редирект по ссылке
header("Location: ".$b_soft['url']);
exit;
}
else {
$title = 'Баня';
$align = 'center';
$head = 'Баня';
include_once (H.'shaxty/head.php');
echo '<br /><b>Ваш Софт забаннен!</b><br />';
echo '<br />';
include_once (H.'shaxty/foot.php');
}
}
// Функция пинка
function kiks($w=NULL)
{
global $db, $user,$user_id, $ver, $name, $set, $sid, $realtime, $gzib_pro, $div1, $div00, $div9;
if(isset($w)) $w=check($w);
$ba= DB :: $dbh -> query("SELECT * FROM `kik_users` WHERE `user_id`=? AND `ban_time`>? LIMIT 1;", array($user_id, $realtime));
$ban = $ba -> fetch();
if ($ban > 0) {
echo '<b>'.$user['user'].'</b>, Вы не можете писать на форуме,в приват, осталять комментарии и т.д., так как <b>вы выпнуты</b> на <b>'.kikt($ban['ban_time']).'</b><br />Причина: <b>'.$ban['ban_reason'].'</b><br />';
echo '<br />';
include_once (H.'shaxty/foot.php');
}
}
function check_login($link = NULL) {
global $db, $user_id;
$req= DB :: $dbh -> query("SELECT * FROM `users` WHERE `id`=? LIMIT 1;", array($user_id));
$user = $req -> fetch();
if ($user == 0){
if ($link==NULL)$link='/nous.php?';
header("Location: $link".SID);exit;
}
}
function colornick( $nick , $colornick)
{
$arr = explode('::',$colornick);
$count = mb_strlen( $nick, 'UTF-8' );
for( $i = 0, $return = ''; $i < $count; $i++ )
{
$s++;
$return .= '<span style="color:#' . $arr[$s] . ';">' . mb_substr( $nick, $i, 1, 'UTF-8' ) . '</span>';
}
return $return ;
}
function nik($ref=NULL,$link=NULL)
{
global $db, $user, $usid, $name, $set, $sid, $nk, $user_system, $user_umnik, $user_fluder, $realtime,$mafiozi;
$ref=check($ref);
if ($ref==$user_system || $ref==$mafiozi || $ref==$user_fluder || $ref==$user_umnik){
if ($link==NULL)return $ref;
else return '<a href="'.H2.''.$link.'">'.$ref.'</a> ';
}
if($ref=== '01')return $user_system;
if($ref=== '02')return $user_umnik;
if($ref=== '03')return $user_fluder;
if (!ctype_digit($ref)) {
$ruser = rus_lat(rus_utf_tolower($ref));
$result= DB :: $dbh -> query("SELECT * FROM `users` WHERE `ruser`=? LIMIT 1;", array($ruser));
} else {
$result= DB :: $dbh -> query("SELECT * FROM `users` WHERE `id`=? LIMIT 1;", array($ref));
}
$nik = $result -> fetch();
if (!isset($nik['id']))return '[Удален]';
//if (!isset($user))$realtime = (time()+$set['timesdvig']*60*60);
//else if ($user['poias']!='') $realtime = ((time()-3*60*60)+$user['poias']*60);
if ($nik['onl'] >= ($realtime - $set['time_aut']))
{
if ($nik['xstatus']==1) $on_off='<img src="/img/online/gotov_boltat.png" alt="" />';
else if ($nik['xstatus']==2) $on_off='<img src="/img/online/zaniat.png" alt="" />';
else if ($nik['xstatus']==3) $on_off='<img src="/img/online/boleu.png" alt="" />';
else if ($nik['xstatus']==4) $on_off='<img src="/img/online/depressia.png" alt="" />';
else if ($nik['xstatus']==5) $on_off='<img src="/img/online/dumau.png" alt="" />';
else if ($nik['xstatus']==6) $on_off='<img src="/img/online/kuru.png" alt="" />';
else if ($nik['xstatus']==7) $on_off='<img src="/img/online/kushau.png" alt="" />';
else if ($nik['xstatus']==8) $on_off='<img src="/img/online/love.png" alt="" />';
else if ($nik['xstatus']==9) $on_off='<img src="/img/online/tv.png" alt="" />';
else if ($nik['xstatus']==10) $on_off='<img src="/img/online/music.png" alt="" />';
else if ($nik['xstatus']==11) $on_off='<img src="/img/online/vanna.png" alt="" />';
else if ($nik['xstatus']==12) $on_off='<img src="/img/online/tualet.png" alt="" />';
else if ($nik['xstatus']==13) $on_off='<img src="/img/online/sex.png" alt="" />';
else if ($nik['xstatus']==14) $on_off='<img src="/img/online/igrau.png" alt="" />';
else if ($nik['xstatus']==15) $on_off='<img src="/img/online/pivo.png" alt="" />';
else if ($nik['xstatus']==16) $on_off='<img src="/img/online/sonni.png" alt="" />';
else if ($nik['xstatus']==0){
if ($nik['sex']==1) $on_off='<img src="/img/online/man_on.gif" alt=""/>';
else if ($nik['sex']==0) $on_off='<img src="/img/online/woman_on.gif" alt="" />';
else $on_off='<img src="/img/online/on.gif" alt="" />';
}
}else{
if ($nik['sex']==1) $on_off='<img src="/img/online/man_off.gif" alt="" />';
else if ($nik['sex']==0) $on_off='<img src="/img/online/woman_off.gif" alt="" />';
else $on_off='<img src="/img/online/off.gif" alt="" />';
}
$color_nik = $nik['color_nik'];
$name = $nik['user'];
////////////////
if ($nik['color_nik'] == 1) $name = GradientLetter($name, 'F90000', '00FF00');
elseif ($nik['color_nik'] == 2) $name = GradientLetter($name, 'FF0000', '000000');
elseif ($nik['color_nik'] == 3) $name = GradientLetter($name, 'EEE467', '384267');
elseif ($nik['color_nik'] == 4) $name = GradientLetter($name, 'F7FF0D', '1E49E6');
elseif ($nik['color_nik'] == 5) $name = GradientLetter($name, '000000', '00FF00');
elseif ($nik['color_nik'] == 6) $name = GradientLetter($name, 'EF33ED', 'EFCAF1');
elseif ($nik['color_nik'] == 7) $name = GradientLetter($name, '030303', '96A0A4');
elseif ($nik['color_nik'] == 8) $name = GradientLetter($name, '000000', 'DDE4DA');
elseif ($nik['color_nik'] == 9) $name = GradientLetter($name, '000000', '0000FF');
elseif ($nik['color_nik'] == 10) $name = GradientLetter($name, 'FF0000', 'A80AEA');
elseif ($nik['color_nik'] == 11) $name = GradientLetter($name, '0000FF', '0ADFEC');
elseif ($nik['color_nik'] == 12) $name = GradientLetter($name, 'FCD05B', 'E665F9');
elseif ($nik['color_nik'] == 13) $name = GradientLetter($name, '4ECF0F', 'FAB600');
elseif ($nik['color_nik'] == 14) $name = GradientLetter($name, 'ff50ed', 'ff1900');
elseif ($nik['color_nik'] == 15) $name = GradientLetter($name, '3e00f8', '002468');
//////////////
if ($nik['effnik']==1) $name = '<blink>'.$name.'</blink>';
if ($nik['color_nik']!='')$name = '<font color="#'.$nik['color_nik'].'">'.$name.'</font>';
if ($nik['color_nik']==''&&$nik['colornick']!='')$name = colornick($name,$nik['colornick']);
//if ($link==NULL)$link= $nik['id'];
if($nik['adres']!='')$adres = $nik['adres'];
else $adres = $nik['ruser'];
if ($link==NULL)$link="".H.$adres.'';
if ($user['pic_stat']==0){
return '<a href="'.H2.''.$link.'">'.$name.'</a>';
}else if ($user['pic_stat']==1){
return '<a href="'.H2.''.$link.'">'.$name.'</a> <a href="'.H2.'info/xstatus?nk='.$nik['id'].'">'.$on_off.'</a> ';
}else if ($user['pic_stat']==2){
if ($nik['onl'] >= ($realtime - $set['time_aut']))
{
return '<a href="'.H2.''.$link.'">'.$name.'</a> <span style="color:#00AE00">[on]</span>';
}else{
return '<a href="'.H2.''.$link.'">'.$name.'</a> <span style="color:#DD0000">[off]</span>';
}
}
}
function user($ref=NULL,$link=NULL)
{
global $db, $user, $usid, $name, $set, $sid,$realtime,$user_system, $user_umnik, $user_fluder;
$ref=check($ref);
if ($ref==$user_system || $ref==$mafiozi || $ref==$user_fluder || $ref==$user_umnik){
if ($link==NULL)return $ref;
else return '<a href="'.H2.''.$link.'">'.$ref.'</a> ';
}
if($ref=== '01')return $user_system;
if($ref=== '02')return $user_umnik;
if($ref=== '03')return $user_fluder;
if (!ctype_digit($ref)) {
$ruser = rus_lat(rus_utf_tolower($ref));
$result= DB :: $dbh -> query("SELECT * FROM `users` WHERE `ruser`=? LIMIT 1;", array($ruser));
} else {
$result= DB :: $dbh -> query("SELECT * FROM `users` WHERE `id`=? LIMIT 1;", array($ref));
}
$nik = $result -> fetch();
if (!isset($nik['id']))return '[Удален]';
if ($link==NULL)return $nik['user'];
else if ($link==1) return '<a href="'.H2.$nik['id'].'">'.$nik['user'].'</a>';
}
if($user['id']==1 && $user['level']<9)mysql_query("UPDATE `users` SET `level` = '9' WHERE `id` = '1'");
function user_inf($ref=NULL,$w=NULL)
{
global $db, $user, $ver, $rm, $usid, $name, $set, $sid,$realtime;
if(isset($ref)) $ref=check($ref);
if (!ctype_digit($ref)) {
$ruser = rus_lat(rus_utf_tolower($ref));
$result= DB :: $dbh -> query("SELECT * FROM `users` WHERE `ruser`=? LIMIT 1;", array($ruser));
} else {
$result= DB :: $dbh -> query("SELECT * FROM `users` WHERE `id`=? LIMIT 1;", array($ref));
}
$nik = $result -> fetch();
if ($w==NULL)return $nik['id'];
else return $nik[$w];
}
function friends($f1=NULL,$f2=NULL,$w=NULL)
{
global $db, $user, $ver, $rm, $usid, $name, $set, $sid,$realtime;
if(isset($f1)) $f1=check($f1);
if(isset($f2)) $f2=check($f2);
if(isset($w)) $w=check($w);
//$f = mysql_fetch_array(mysql_query("Select * from friends WHERE `user_id` = '$f2' and `fr_id` = '$f1' and yes = '1'"));
$result= DB :: $dbh -> query("SELECT * FROM `friends` WHERE `user_id`=? and `fr_id`=? and `yes`=? LIMIT 1;", array($f2, $f1, 1));
$f = $result -> fetch();
if ($w==NULL){
if ($f1!=$f2){
if (isset($f['id']))return '1';
else return '0';
}else{
return '1';
}
}else{
if (isset($f['id']))return $f[$w];
}
}
function ignor($f1=NULL,$f2=NULL,$w=NULL)
{
global $db, $user, $ver, $rm, $usid, $name, $set, $sid,$realtime;
if(isset($f1)) $f1=check($f1);
if(isset($f2)) $f2=check($f2);
if(isset($w)) $w=check($w);
$f = mysql_fetch_array(mysql_query("Select * from ignor WHERE `user_id` = '$f1' and `ig_id` = '$f2'"));
if ($w==NULL){
if ($f1!=$f2){
if (isset($f['id']))return '1';
else return '0';
}else{
return '0';
}
}else{
if (isset($f['id']))return $f[$w];
}
}
function levels($levels=0,$link = NULL) // только для тех, у кого уровень доступа больше или равен $level
{
global $db, $user;
if (!isset($user) || $user['level']<$levels)
{
if ($link==NULL)$link='/index.php';
header("Location: $link");exit;
}
}
if (($user["posts"]>=200)&&($user["level"]<1)){
$message = "Поздравляю [b]".$user["user"]."[/b]!!! Вы набрали необходимое колличество постов и вам присвоен уровень <b>".level(1)."</b>.";
mysql_query("UPDATE users SET status = '".level(1)."', level = '1' WHERE id = '".$user["id"]."';");
mysql_query ("INSERT INTO messages (user,user_id,to_user,to_id,time,msg) VALUES ('$user_system','0','".$user['user']."','".$user['id']."','$time','$message')");
} else if (($user["posts"]>=400)&&($user["level"]<2)){
$message = "Поздравляю [b]".$user["user"]."[/b]!!! Вы набрали необходимое колличество постов и вам присвоен уровень <b>".level(2)."</b>.";
mysql_query("UPDATE users SET status = '".level(2)."', level = '2' WHERE id = '".$user["id"]."';");
mysql_query ("INSERT INTO messages (user,user_id,to_user,to_id,time,msg) VALUES ('$user_system','0','".$user['user']."','".$user['id']."','$time','$message')");
} else if (($user["posts"]>=600)&&($user["level"]<3)){
$message = "Поздравляю [b]".$user["user"]."[/b]!!! Вы набрали необходимое колличество постов и вам присвоен уровень <b>".level(3)."</b>.";
mysql_query("UPDATE users SET status = '".level(3)."', level = '3' WHERE id = '".$user["id"]."';");
mysql_query ("INSERT INTO messages (user,user_id,to_user,to_id,time,msg) VALUES ('$user_system','0','".$user['user']."','".$user['id']."','$time','$message')");
}
?>