From 47e90c261bfdeca344a389b68d115a545774f37b Mon Sep 17 00:00:00 2001 From: Ivor Barhansky Date: Sat, 2 Dec 2023 01:47:21 +0200 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=B5=D0=B7=D0=BB=D0=B8=D0=BA.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules_data/moder/usedeletinfo.php | 93 ++++++++++------------------- 1 file changed, 30 insertions(+), 63 deletions(-) diff --git a/modules_data/moder/usedeletinfo.php b/modules_data/moder/usedeletinfo.php index e9ac22f0..10b58d32 100644 --- a/modules_data/moder/usedeletinfo.php +++ b/modules_data/moder/usedeletinfo.php @@ -2,69 +2,36 @@ if (!defined('GAME')) { die(); } -if ($p['deletInfo'] == 1) { - $tm = (int)$_POST['time']; - if ($tm != 1 && $tm != 7 && $tm != 14 && $tm != 30 && $tm != 60) { - $uer = 'Неверно указаны данные'; - } else { - $uu = mysql_fetch_array( - mysql_query( - 'SELECT * FROM `users` WHERE `login` = "' . mysql_real_escape_string($_POST['logingo']) . '" LIMIT 1' - ) - ); - if (isset($uu['id'])) { - if ($uu['info_delete'] != 1 && $uu['info_delete'] < time()) { - $srok = [ - 1 => 'бессрочно', - 7 => 'неделя', - 14 => 'две недели', - 30 => 'месяц', - 60 => 'два месяца', - ]; - $srok = $srok[$tm]; - if ($tm == 1) { - $tm = '`info_delete` = "1"'; - } elseif ($tm == 7) { - $tm = '`info_delete` = "' . (time() + 7 * 86400) . '"'; - } elseif ($tm == 14) { - $tm = '`info_delete` = "' . (time() + 14 * 86400) . '"'; - } elseif ($tm == 30) { - $tm = '`info_delete` = "' . (time() + 30 * 86400) . '"'; - } elseif ($tm == 60) { - $tm = '`info_delete` = "' . (time() + 60 * 86400) . '"'; - } - $upd = mysql_query('UPDATE `users` SET ' . $tm . ' WHERE `id` = "' . $uu['id'] . '" LIMIT 1'); - if ($upd) { - $sx = ''; - if ($u->info['sex'] == 1) { - $sx = 'а'; - } - $rtxt = '[img[items/cui.gif]] ' . $rang . ' "' . $u->info['cast_login'] . '" использовал' . $sx . ' заклятие обезличивание на "' . $uu['login'] . '" сроком ' . $srok; - $cmsg = new ChatMessage(); - $cmsg->setCity($u->info['city']); - $cmsg->setRoom($u->info['room']); - $cmsg->setText($rtxt); - $cmsg->setType(6); - $cmsg->setTypeTime(1); - (new Chat())->sendMsg($cmsg); - - $rtxt = $rang . ' "' . $u->info['login'] . '" использовал' . $sx . ' заклятие "обезличивание", сроком ' . $srok . '.'; - mysql_query( - "INSERT INTO `users_delo` (`uid`,`ip`,`city`,`time`,`text`,`login`,`type`) VALUES ('" . $uu['id'] . "','" . $_SERVER['REMOTE_ADDR'] . "','" . $u->info['city'] . "','" . time( - ) . "','" . $rtxt . "','" . $u->info['login'] . "',0)" - ); - $uer = 'Вы успешно использовали заклятие обезличивания на персонажа "' . $uu['login'] . '".
'; - } else { - $uer = 'Не удалось использовать данное заклятие'; - } - } else { - $uer = 'Персонаж уже обезличен'; - } - } else { - $uer = 'Персонаж не найден в этом городе'; - } - } -} else { +if ($p['deletInfo'] != 1) { $uer = 'У Вас нет прав на использование данного заклятия'; + return; } + +$uu = \Core\Db::getRow('select * from users where login = ? order by id limit 1', [$_POST['logingo']]); + +if (!isset($uu['id'])) { + $uer = 'Персонаж не найден.'; + return; +} + +if ($uu['info_delete'] == 1 || $uu['info_delete'] >= time()) { + $uer = 'Персонаж уже обезличен'; + return; +} + +$time = new DateTime(); +$time->modify("+ {$_POST['time']} day"); +(new \Moderation\Moderation($uu['id']))->depersonalize($time); + +$rtxt = "Персонаж {$uu['login']} под подозрением до {$time->format('d M Y H:i')}."; +unset($time); + +$cmsg = new ChatMessage(); +$cmsg->setRoom($u->info['room']); +$cmsg->setText("[img[items/cui.gif]] $rtxt"); +$cmsg->setType(6); +$cmsg->setTypeTime(1); +(new Chat())->sendMsg($cmsg); + +$uer = $rtxt;