battles/admin/admin.php

152 lines
6.3 KiB
PHP
Raw Normal View History

2020-08-29 16:30:11 +00:00
<?php
/**
* Copyright (c) 2018.
* Author: Igor Barkov <lopar.4ever@gmail.com>
* Project name: Battles-Game
*/
require_once '../functions.php';
use Battles\Bank;
use Battles\Database\Db;
use Battles\GameConfigs;
use Battles\Moderation;
use Battles\Nick;
use Battles\Template;
use Battles\User;
if (!User::getInstance()->getAdmin()) {
2020-08-26 09:21:56 +00:00
header("HTTP/1.0 404 Not Found");
2018-01-28 19:15:29 +00:00
exit;
}
if (isset($_GET['sleep'])) {
Moderation::muteChat(User::getInstance()->getId(), strtotime('15min'));
}
2018-01-28 19:15:29 +00:00
if (isset($_POST['ldnick']) && isset($_POST['ldtext'])) {
Moderation::addToUserLog(User::getInstance($_POST['ldnick'])->getId(), $_POST['ldtext'], User::getInstance()->getId());
}
if (isset($_POST['syschatmsg'])) {
Moderation::addChatSysMsg($_POST['syschatmsg']);
}
//clans to reg
$unregisteredClans = new class {
public function getList()
{
$row = Db::getInstance()->ofetchAll('SELECT * FROM clans WHERE status = 0');
$i = 0;
while ($i < count($row)) {
$id = $row[$i]->owner_id;
$login = User::getInstance($row[$i]->owner_id)->getLogin();
$fullName = $row[$i]->full_name;
$shortName = $row[$i]->short_name;
$info = nl2br($row[$i]->info);
$i++;
echo <<<UNREGCLANLIST
<div>
<fieldset style="display: inline;">
<legend>$fullName [$shortName]</legend>
Глава клана: <span class="abils">$login</span><br>
Описание:<div class="abils">$info</div>
<BR>
<button onclick="location.href='?regclan=$id'">Зарегистрировать</button>
<button onclick="location.href='?remclan=$id'">Отказать</button>
</fieldset>
</div>
UNREGCLANLIST;
}
unset($i);
2018-01-28 19:15:29 +00:00
}
public function allowRegister($id)
{
Db::getInstance()->execute('UPDATE clans SET status = 1 WHERE status = 0 AND owner_id = ?', $id);
2018-01-28 19:15:29 +00:00
}
public function disallowRegister($id)
{
$bank = new Bank($id);
Db::getInstance()->execute('DELETE FROM clans WHERE status = 0 AND owner_id = ?', $id);
$bank::setBankMoney($bank->getMoney() + GameConfigs::CLAN['clan_register_cost'], $id);
2020-08-29 16:30:11 +00:00
}
};
$unregisteredClans->getList();
if (isset($_GET['regclan'])) {
$unregisteredClans->allowRegister($_GET['regclan']);
header('Location:/admin/admin.php');
exit;
}
if (isset($_GET['remclan'])) {
$unregisteredClans->disallowRegister($_GET['remclan']);
header('Location:/admin/admin.php');
exit;
2018-01-28 19:15:29 +00:00
}
# Телеграф.
if (!empty($_POST['receiver']) && !empty($_POST['tgmsg'])) {
$receiver = Db::getInstance()->ofetch('SELECT id FROM users WHERE login= ?', $_POST['receiver']);
telegraph($receiver->id, $_POST['tgmsg']);
echo "Успешно.";
}
# Показывает невидимок.
$row = Db::getInstance()->ofetchAll('SELECT id,login FROM users LEFT JOIN users_effects ue on users.id = ue.owner_id WHERE type = 1022 ORDER BY `id` DESC');
foreach ($row as $r) {
$invisList .= '<b>[id] = ' .$r->id. ', ' .$r->login. '</b><br>';
2018-01-28 19:15:29 +00:00
}
2018-01-28 19:15:29 +00:00
Template::header('ᐰdminка');
2018-01-28 16:40:49 +00:00
?>
<link rel=stylesheet href="/css/admin.css">
<span class="legend">Абилки. Работают только на себя. Надо дописать цель.</span><br>
<button onclick="location.href='?sleep'"><img src="../i/magic/sleep.gif" alt="sleep"> Молчать 15 мин</button>
<button disabled><img src="../i/magic/sleep.gif" alt="sleep"> Молчать 1 час</button>
<button disabled><img src="../i/magic/sleep.gif" alt="sleep"> Молчать 1 день</button>
<button disabled><img src="../i/magic/sleep.gif" alt="sleep"> Молчать очень долго</button>
<button disabled><img src="../i/magic/sleep_off.gif" alt="sleep_off"> Снять молчанку</button>
<br>
<button disabled><img src="../i/magic/sleepf.gif" alt="sleepf"> Молчать на фомуме 1 час</button>
<button disabled><img src="../i/magic/sleepf.gif" alt="sleepf"> Молчать на фомуме 1 день</button>
<button disabled><img src="../i/magic/sleepf.gif" alt="sleepf"> Молчать на фомуме очень долго</button>
<button disabled><img src="../i/magic/sleepf_off.gif" alt="sleepf_off"> Снять молчанку на фомуме</button>
<br>
<button disabled><img src="../i/magic/obezl.gif" alt="obezl"> Сокрыть инфу</button>
<button disabled><img src="../i/magic/obezl_off.gif" alt="obezl_off"> Снять сокрытие</button>
<button disabled><img src="../i/magic/death.gif" alt="death"> Заблокировать</button>
<button disabled><img src="../i/magic/death_off.gif" alt="death_off"> Разблокировать</button>
<br>
<button disabled><img src="../i/magic/ct_all.gif" alt="ct_all"> Снять все травмы</button>
<button disabled><img src="../i/magic/marry.gif" alt="marry"> Свадьба</button>
<button disabled><img src="../i/magic/unmarry.gif" alt="unmarry"> Развод</button>
<button disabled><img src="../i/magic/bexit.gif" alt="bexit"> Выйти из боя</button>
<button disabled><img src="../i/magic/check.gif" alt="check"> Проверка</button>
2018-01-28 19:15:29 +00:00
<form method='post'>
<legend>Добавить в «дело» игрока заметку о нарушении правил, прокрутке и пр.</legend>
<input name='ldnick' placeholder='Логин'> <input name='ldtext' size='50' placeholder='Сообщение'>
<input type='submit' value='Добавить'><br>
2018-01-28 19:15:29 +00:00
</form>
<form method='post'>
<legend>Отправить системное сообщение в чат</legend>
<input name='syschatmsg' size='74' placeholder='Введите сообщение'>
2018-01-28 19:15:29 +00:00
<input type='submit' value='Отправить'>
</form>
<form method='post'>
<legend>Телеграф</legend>
2019-02-15 23:07:12 +00:00
<input name='receiver' placeholder='Логин'>
<input name='tgmsg' size='50' placeholder='Сообщение'>
2018-01-28 19:15:29 +00:00
<input type='submit' value='Отправить'>
</form>
<form method='post'>
<legend>Поменять статус</legend>
<input name='login' placeholder='Логин'>
<input name='status' placeholder='Статус'>
<input type='submit' value='Изменить статус'>
</form>
<span class="legend">Невидимки</span><br>
<div class="abils" style="width: fit-content;"><?= $invisList ?></div>