Вывод личного дела через класс.

This commit is contained in:
lopar 2020-07-05 21:38:13 +03:00
parent f671855131
commit 3317ab845d
2 changed files with 42 additions and 6 deletions

View File

@ -32,20 +32,27 @@ class User
public $stats;
public $shadow;
const EMPTY_SLOT = <<<EMPTY_SLOT
<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот" alt="Пустой слот>
EMPTY_SLOT;
//Статусы того, кто смотрит на информацию.
protected $watcherIsAdmin;
protected $watcherIsModerator;
use Rooms;
public function __construct($user)
{
$user_query = db::c()->query('SELECT * FROM users WHERE id = "?s" OR login = "?s"', $user, $user)->fetch_assoc();
$watchingUser_query = db::c()->query('SELECT `align`,`admin` FROM `users` WHERE `id` = ?i', $_SESSION['uid'])->fetch_assoc();
foreach ($this as $key => $value) {
if (isset($user_query[$key])) {
$this->$key = $user_query[$key];
}
}
if ($watchingUser_query['admin']) {
$this->watcherIsAdmin = 1;
}
if ($watchingUser_query['align'] == 1) {
$this->watcherIsModerator = 1;
}
}
protected function showItem($item = 0)
@ -178,9 +185,15 @@ EMPTY_SLOT;
}
echo '</div><!-- user-info-container-lower -->';
$this->Bank = new Bank($this->id);
echo sprintf('Денег в банке: %s. <br> session_uid: %s.', $this->Bank->money, $_SESSION['uid']);
if ($this->watcherIsAdmin || $this->watcherIsModerator) {
echo '<div class="secretInfo">';
echo sprintf('<b>Личное дело</b><br>ИД Игрока: %s<br> ДР Игрока: %s<br> IP Регистрации: %s', $this->id, date('d.m.Y', strtotime($this->borndate)), $this->ip);
if ($this->watcherIsAdmin) {
$this->Bank = new Bank($this->id);
echo sprintf('<span>ИД Комнаты: %s<br> Деньги в банке: %s<br> E-Mail: %s<br> Текущая сессия: %s</span>>', $this->room, $this->Bank->money, $this->email, $this->session_id);
}
echo '</div>';
}
}
public function showStarSign() {
@ -223,4 +236,18 @@ EMPTY_SLOT;
}
return $sign ?? null;
}
public function showPrivateUserInfo() {
$this->watchingUser;
function privateAccessCheck()
{
$own = db::c()->query('SELECT `align`,`admin` FROM `users` WHERE `id` = ?i', $uid)->fetch_assoc();
if ($own['admin'] == 1) {
return ADMINISTRATOR_ACCESS;
} elseif ($own['align'] == 1) {
return MODERATOR_ACCESS;
}
return false;
}
}
}

View File

@ -410,3 +410,12 @@ div.debug {
border-radius:5px;
padding:5px;
}
div.secretInfo {
background:#fee;
border:1px dashed #faa;
border-radius:5px;
padding:5px;
}
div.secretInfo > span {
color: #f80000;
}