battles/inf.php

118 lines
3.8 KiB
PHP
Raw Normal View History

2018-01-28 16:40:49 +00:00
<?php
session_start();
2020-07-03 14:52:20 +00:00
include_once 'functions.php';
2020-07-04 10:49:43 +00:00
include_once 'models/PresentsModel.php';
$login = urldecode($_SERVER['QUERY_STRING']) ?? '';
2020-07-03 13:27:31 +00:00
$uid = $_SESSION['uid'] ?? null;
$user = new User($login);
2020-07-03 14:14:08 +00:00
const MODERATOR_ACCESS = 1;
const ADMINISTRATOR_ACCESS = 2;
2020-07-03 14:14:08 +00:00
function private_access($uid)
{
$own = db::c()->query('SELECT `align`,`admin` FROM `users` WHERE `id` = "?s"', $uid)->fetch_assoc();
if ($own['admin'] === 1) {
return ADMINISTRATOR_ACCESS;
} elseif ($own['align'] === 1) {
return MODERATOR_ACCESS;
}
return false;
}
2020-07-04 10:49:43 +00:00
$presentsModel = new PresentsModel();
$presentsList = $presentsModel->getAllPresents($user->id);
if (empty($user->id)): ?>
2020-06-23 05:11:07 +00:00
<!doctype html>
<html lang="ru">
2019-01-16 01:22:09 +00:00
<head>
<meta charset="utf-8">
2019-01-28 17:56:21 +00:00
<title>Ошибка</title>
</head>
<body style="color: #666; background-color: #d5d5d5; text-align: center; font-family: Consolas,monospace;">
Ошибка: персонаж <em><?= $login ?></em> не найден...
<p><a style="color: #99f" href="javascript:window.history.go(-1);">←назад</a></p>
2018-01-28 16:40:49 +00:00
</body>
</html>
2020-06-23 05:11:07 +00:00
<?php exit(); endif; ?>
2018-01-28 16:40:49 +00:00
2020-06-23 05:11:07 +00:00
<html lang="ru">
2018-01-28 16:40:49 +00:00
<head>
<title>Информация о <?= $user->login ?></title>
<meta charset=UTF-8"/>
<link href="css/main.css" rel="stylesheet">
2018-01-28 16:40:49 +00:00
</head>
2020-07-03 13:52:19 +00:00
<body>
<?php
try {
$effect = db::c()->query('SELECT `time` FROM `effects` WHERE `owner` = ?i AND `type` = ?i ', $this->id, 5)->fetch_assoc();
2020-07-03 14:57:40 +00:00
if ($effect['time'] && !private_access($uid)) {
die('<h3>Персонаж обезличен!</h3>');
}
} catch (Exception $e) {
echo "<div class='debug'>Ошибка обезличивателя: {$e}</div>";
}
try {
$user->showUserInfo();
} catch (Exception $e) {
echo "<div class='debug'>Ошибка генератора showUserInfo() в User.php: {$e}</div>";
2020-07-03 14:14:08 +00:00
}
include_once 'views/presents-list.php';
2019-01-28 14:53:11 +00:00
# Секретный раздел
2018-01-28 16:40:49 +00:00
# Если я любой паладин, и смотрю не админа, или я сам админ.
2020-07-03 14:14:08 +00:00
if ((private_access($uid) === MODERATOR_ACCESS && !$user->admin) || private_access($uid) === ADMINISTRATOR_ACCESS) {
2020-07-03 14:51:01 +00:00
$ld = db::c()->query('SELECT * FROM users_logs WHERE user_id = ?i ORDER BY `id` ASC', $user->id);
2019-01-18 12:25:27 +00:00
echo "<H4>Личное дело</H4>";
while ($row_ld = $ld->fetch_assoc()) {
2020-07-03 14:51:01 +00:00
$text = date("d.m.Y H:i ", $row_ld['date']) . $row_ld['text'];
echo "<code>$text</code><br />";
2018-01-28 16:40:49 +00:00
}
echo "<H4>Дополнительные сведения</H4>";
2020-07-03 14:14:08 +00:00
if (!empty($user->id)) {
echo "ID: " . $user->id . "<br>";
}
if (!empty($user->email)) {
echo "E-mail: " . $user->email . "<br>";
}
if (!empty($user->borndate)) {
echo "День рождения: " . $user->borndate . "<br>";
}
if (!empty($user->ip)) {
echo "IP при регистрации: " . $user->ip . "<br>";
}
2018-01-28 16:40:49 +00:00
}
2020-07-03 14:14:08 +00:00
if (private_access($uid) === ADMINISTRATOR_ACCESS) {
if (!empty($user->exp)) {
echo "Oпыт: " . $user->exp . "<br>";
}
if (!empty($user->stats)) {
echo "Число неиспользованных UP-ов: " . $user->stats . "<br>";
}
if (!empty($user->money)) {
echo "Кредитов: " . $user->money . "<br>";
}
if (!empty($user->room)) {
echo "Комната: " . $user->room . "<br>";
}
2018-01-28 16:40:49 +00:00
echo "<H4>Банковские счета</H4>";
$bankInfo = new Bank($user->id);
2020-07-03 14:14:08 +00:00
echo "Счет: " . $bankInfo->user_id . PHP_EOL;
echo "Деньги на счету: " . $bankInfo->money . PHP_EOL;
2018-01-28 16:40:49 +00:00
}
?>
<script src="js/jquery-1.7.2.min.js"></script>
<script src="js/showthing.js"></script>
<script>
$(function () {
$(".tooltip").tipTip({maxWidth: "auto", edgeOffset: 0, fadeIn: 300, fadeOut: 500});
});
</script>
2018-01-28 16:40:49 +00:00
</body>
</html>