Refactor code to improve maintainability and readability
This commit introduces changes aimed at enhancing code maintainability and readability. The most significant was moving code responsible for various future checks into a separate file to reduce clutter. Additionally, the code has been cleaned up, removing excessive spacing and redundancies.
This commit is contained in:
parent
6b0bbcd7ee
commit
a9265dc4d8
78
js/modpanel.js
Normal file
78
js/modpanel.js
Normal file
@ -0,0 +1,78 @@
|
||||
function nqst() {
|
||||
const x = document.getElementById('addNewquest');
|
||||
x.style.display = x.style.display === 'none' ? '' : 'none';
|
||||
}
|
||||
|
||||
const adds = [0, 0, 0, 0];
|
||||
|
||||
function addqact() {
|
||||
const dd = document.getElementById('qact');
|
||||
adds[0]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_act_atr_' + adds[0] + '" id="q_act_atr_' + adds[0] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="go_loc">перейти в локацию</option>' +
|
||||
'<option value="go_mod">перейти в модуль</option>' +
|
||||
'<option value="on_itm">одеть предмет</option>' +
|
||||
'<option value="un_itm">снять предмет</option>' +
|
||||
'<option value="use_itm">использовать предмет</option>' +
|
||||
'<option value="useon_itm">использовать предмет на</option>' +
|
||||
'<option value="dlg_nps">поговорить с NPS</option>' +
|
||||
'<option value="tk_itm">получить предмет</option>' +
|
||||
'<option value="del_itm">выкинуть предмет</option>' +
|
||||
'<option value="buy_itm">купить предмет</option>' +
|
||||
'<option value="kill_bot">убить монстра</option>' +
|
||||
'<option value="kill_you">убить клона</option>' +
|
||||
'<option value="kill_user">убить игрока</option>' +
|
||||
'<option value="all_stats">раставить статы</option>' +
|
||||
'<option value="all_skills">раставить умения</option>' +
|
||||
'<option value="all_navik">расставить навыки</option>' +
|
||||
'<option value="min_online">пробыть минут в онлайне</option>' +
|
||||
'<option value="min_btl">провести боев</option>' +
|
||||
'<option value="min_winbtl">провести боев (побед)</option>' +
|
||||
'<option value="tk_znak">получить значок</option>' +
|
||||
'<option value="end_quests">завершить квест</option>' +
|
||||
'<option value="end_qtime">время выполнения квеста (в минутах)</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_act_val_' + adds[0] + '" value=""><br>' + dd.innerHTML;
|
||||
}
|
||||
|
||||
function addqtr() {
|
||||
const dd = document.getElementById('qtr');
|
||||
adds[1]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_tr_atr_' + adds[1] + '" id="q_tr_atr_' + adds[1] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="tr_endq">Завершить квесты</option>' +
|
||||
'<option value="tr_botitm">Из монстров падают предметы (в пещерах)</option>' +
|
||||
'<option value="tr_winitm">После победы падают предметы</option>' +
|
||||
'<option value="tr_zdr">Задержка между выполнением (в часах)</option>' +
|
||||
'<option value="tr_tm1">Переодичность квеста (начало)</option>' +
|
||||
'<option value="tr_tm2">Переодичность квеста (конец)</option>' +
|
||||
'<option value="tr_raz">Сколько раз можно проходить квест</option>' +
|
||||
'<option value="tr_raz2">Сколько попыток пройти квест</option>' +
|
||||
'<option value="tr_dn">Нахождение в пещере</option>' +
|
||||
'<option value="tr_x">Нахождение в координате X</option>' +
|
||||
'<option value="tr_y">Нахождение в координате Y</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_tr_val_' + adds[1] + '" value=""><br>' + dd.innerHTML;
|
||||
}
|
||||
|
||||
function addqng() {
|
||||
const dd = document.getElementById('qng');
|
||||
adds[2]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_ng_atr_' + adds[2] + '" id="q_ng_atr_' + adds[2] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="add_cr">Добавить Кредиты</option>' +
|
||||
'<option value="add_ecr">Добавить Екредиты</option>' +
|
||||
'<option value="add_itm">Добавить предмет</option>' +
|
||||
'<option value="add_eff">Добавить эффект</option>' +
|
||||
'<option value="add_rep">Добавить репутации</option>' +
|
||||
'<option value="add_exp">Добавить опыта</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_ng_val_' + adds[2] + '" value=""><br>' + dd.innerHTML;
|
||||
}
|
||||
|
||||
function addqnk() {
|
||||
const dd = document.getElementById('qnk');
|
||||
adds[3]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_nk_atr_' + adds[3] + '" id="q_nk_atr_' + adds[3] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="lst_eff">Добавить эффект</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_nk_val_' + adds[3] + '" value=""><br>' + dd.innerHTML;
|
||||
}
|
@ -17,6 +17,7 @@ if (!$m->isModerator) {
|
||||
|
||||
$merror = '';
|
||||
$uer = '';
|
||||
$go = isset($_GET['go']) ? round($_GET['go']) : 0;
|
||||
|
||||
if (!empty($_POST['logingo'])) {
|
||||
$moderation = new ModFactory(
|
||||
@ -78,11 +79,6 @@ if (!empty($_POST['marrypartner1']) && !empty($_POST['marrypartner2'])) {
|
||||
|
||||
echo '<script src="/js/jquery.js"></script>';
|
||||
|
||||
$go = 0;
|
||||
if (isset($_GET['go'])) {
|
||||
$go = round($_GET['go']);
|
||||
}
|
||||
|
||||
if ($go == 3 && $m->isAdmin) {
|
||||
?>
|
||||
<table style="width: 100%">
|
||||
@ -114,7 +110,8 @@ if ($go == 3 && $m->isAdmin) {
|
||||
$pl['room'] = $_POST['pl_room'];
|
||||
$pl['module'] = $_POST['pl_module'];
|
||||
|
||||
Db::sql('update an_quest set
|
||||
Db::sql(
|
||||
'update an_quest set
|
||||
name = ?,
|
||||
sex = ?,
|
||||
ico_bot = ?,
|
||||
@ -140,7 +137,8 @@ if ($go == 3 && $m->isAdmin) {
|
||||
$pl['room'],
|
||||
$pl['module'],
|
||||
$pl['id'],
|
||||
]);
|
||||
]
|
||||
);
|
||||
|
||||
$pl = Db::getRow('select * from an_quest where id = ?', [(int)$_GET['eq']]);
|
||||
}
|
||||
@ -204,8 +202,8 @@ if ($go == 3 && $m->isAdmin) {
|
||||
echo <<<HTML
|
||||
<div>
|
||||
<span style="width:50px;display:inline-block;">$qid</span>
|
||||
<span style="width:250px;display:inline-block; font-weight: bold;">$qname($qsex)</span>
|
||||
<a href="/main.php?moderation&go=3&eq=$qid">Изменить</a>
|
||||
<span style="width:250px;display:inline-block; font-weight: bold;">$qname($qsex)</span>
|
||||
<a href="/main.php?moderation&go=3&eq=$qid">Изменить</a>
|
||||
<a href="/main.php?moderation&go=3&del=$qid">Удалить</a>
|
||||
</div>
|
||||
<hr>
|
||||
@ -237,469 +235,368 @@ if ($go == 3 && $m->isAdmin) {
|
||||
$qd['align'] = 3;
|
||||
} elseif ($_POST['align3'] == 1) {
|
||||
$qd['align'] = 7;
|
||||
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_act_atr_' . $i])) {
|
||||
if ($_POST['q_act_val_' . $i] != '') {
|
||||
$qd['act_date'] .= $_POST['q_act_atr_' . $i] . ':=:' . $_POST['q_act_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['act_date'] = trim($qd['act_date'], ':|');
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_tr_atr_' . $i])) {
|
||||
if ($_POST['q_tr_val_' . $i] != '') {
|
||||
$qd['tr_date'] .= $_POST['q_tr_atr_' . $i] . ':=:' . $_POST['q_tr_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['tr_date'] = trim($qd['tr_date'], ':|');
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_ng_atr_' . $i])) {
|
||||
if ($_POST['q_ng_val_' . $i] != '') {
|
||||
$qd['win_date'] .= $_POST['q_ng_atr_' . $i] . ':=:' . $_POST['q_ng_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['win_date'] = trim($qd['win_date'], ':|');
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_nk_atr_' . $i])) {
|
||||
if ($_POST['q_nk_val_' . $i] != '') {
|
||||
$qd['lose_date'] .= $_POST['q_nk_atr_' . $i] . ':=:' . $_POST['q_nk_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['lose_date'] = trim($qd['lose_date'], ':|');
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
Db::sql(
|
||||
'insert into quests (name, min_lvl, max_lvl, tr_date, act_date, win_date, lose_date, info, line, align, fast) values (?,?,?,?,?,?,?,?,?,?,?)',
|
||||
[
|
||||
$qd['name'],
|
||||
$qd['lvl'][0],
|
||||
$qd['lvl'][1],
|
||||
$qd['tr_date'],
|
||||
$qd['act_date'],
|
||||
$qd['win_date'],
|
||||
$qd['lose_date'],
|
||||
$qd['info'],
|
||||
$qd['line'],
|
||||
$qd['align'],
|
||||
$qd['fast'],
|
||||
]
|
||||
);
|
||||
}
|
||||
?>
|
||||
<script>
|
||||
function nqst() {
|
||||
const x = document.getElementById('addNewquest');
|
||||
x.style.display = x.style.display === 'none' ? '' : 'none';
|
||||
}
|
||||
|
||||
const adds = [0, 0, 0, 0];
|
||||
|
||||
function addqact() {
|
||||
const dd = document.getElementById('qact');
|
||||
adds[0]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_act_atr_' + adds[0] + '" id="q_act_atr_' + adds[0] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="go_loc">перейти в локацию</option>' +
|
||||
'<option value="go_mod">перейти в модуль</option>' +
|
||||
'<option value="on_itm">одеть предмет</option>' +
|
||||
'<option value="un_itm">снять предмет</option>' +
|
||||
'<option value="use_itm">использовать предмет</option>' +
|
||||
'<option value="useon_itm">использовать предмет на</option>' +
|
||||
'<option value="dlg_nps">поговорить с NPS</option>' +
|
||||
'<option value="tk_itm">получить предмет</option>' +
|
||||
'<option value="del_itm">выкинуть предмет</option>' +
|
||||
'<option value="buy_itm">купить предмет</option>' +
|
||||
'<option value="kill_bot">убить монстра</option>' +
|
||||
'<option value="kill_you">убить клона</option>' +
|
||||
'<option value="kill_user">убить игрока</option>' +
|
||||
'<option value="all_stats">раставить статы</option>' +
|
||||
'<option value="all_skills">раставить умения</option>' +
|
||||
'<option value="all_navik">расставить навыки</option>' +
|
||||
'<option value="min_online">пробыть минут в онлайне</option>' +
|
||||
'<option value="min_btl">провести боев</option>' +
|
||||
'<option value="min_winbtl">провести боев (побед)</option>' +
|
||||
'<option value="tk_znak">получить значок</option>' +
|
||||
'<option value="end_quests">завершить квест</option>' +
|
||||
'<option value="end_qtime">время выполнения квеста (в минутах)</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_act_val_' + adds[0] + '" value=""><br>' + dd.innerHTML;
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_act_atr_' . $i])) {
|
||||
if ($_POST['q_act_val_' . $i] != '') {
|
||||
$qd['act_date'] .= $_POST['q_act_atr_' . $i] . ':=:' . $_POST['q_act_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['act_date'] = trim($qd['act_date'], ':|');
|
||||
}
|
||||
|
||||
function addqtr() {
|
||||
const dd = document.getElementById('qtr');
|
||||
adds[1]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_tr_atr_' + adds[1] + '" id="q_tr_atr_' + adds[1] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="tr_endq">Завершить квесты</option>' +
|
||||
'<option value="tr_botitm">Из монстров падают предметы (в пещерах)</option>' +
|
||||
'<option value="tr_winitm">После победы падают предметы</option>' +
|
||||
'<option value="tr_zdr">Задержка между выполнением (в часах)</option>' +
|
||||
'<option value="tr_tm1">Переодичность квеста (начало)</option>' +
|
||||
'<option value="tr_tm2">Переодичность квеста (конец)</option>' +
|
||||
'<option value="tr_raz">Сколько раз можно проходить квест</option>' +
|
||||
'<option value="tr_raz2">Сколько попыток пройти квест</option>' +
|
||||
'<option value="tr_dn">Нахождение в пещере</option>' +
|
||||
'<option value="tr_x">Нахождение в координате X</option>' +
|
||||
'<option value="tr_y">Нахождение в координате Y</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_tr_val_' + adds[1] + '" value=""><br>' + dd.innerHTML;
|
||||
$i++;
|
||||
}
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_tr_atr_' . $i])) {
|
||||
if ($_POST['q_tr_val_' . $i] != '') {
|
||||
$qd['tr_date'] .= $_POST['q_tr_atr_' . $i] . ':=:' . $_POST['q_tr_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['tr_date'] = trim($qd['tr_date'], ':|');
|
||||
}
|
||||
|
||||
function addqng() {
|
||||
const dd = document.getElementById('qng');
|
||||
adds[2]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_ng_atr_' + adds[2] + '" id="q_ng_atr_' + adds[2] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="add_cr">Добавить Кредиты</option>' +
|
||||
'<option value="add_ecr">Добавить Екредиты</option>' +
|
||||
'<option value="add_itm">Добавить предмет</option>' +
|
||||
'<option value="add_eff">Добавить эффект</option>' +
|
||||
'<option value="add_rep">Добавить репутации</option>' +
|
||||
'<option value="add_exp">Добавить опыта</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_ng_val_' + adds[2] + '" value=""><br>' + dd.innerHTML;
|
||||
$i++;
|
||||
}
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_ng_atr_' . $i])) {
|
||||
if ($_POST['q_ng_val_' . $i] != '') {
|
||||
$qd['win_date'] .= $_POST['q_ng_atr_' . $i] . ':=:' . $_POST['q_ng_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['win_date'] = trim($qd['win_date'], ':|');
|
||||
}
|
||||
|
||||
function addqnk() {
|
||||
const dd = document.getElementById('qnk');
|
||||
adds[3]++;
|
||||
dd.innerHTML = 'Атрибут: <select name="q_nk_atr_' + adds[3] + '" id="q_nk_atr_' + adds[3] + '">' +
|
||||
'<option value="0"></option>' +
|
||||
'<option value="lst_eff">Добавить эффект</option>' +
|
||||
'</select>, значение: <input style="width:100px" name="q_nk_val_' + adds[3] + '" value=""><br>' + dd.innerHTML;
|
||||
$i++;
|
||||
}
|
||||
$i = 1;
|
||||
while ($i != -1) {
|
||||
if (isset($_POST['q_nk_atr_' . $i])) {
|
||||
if ($_POST['q_nk_val_' . $i] != '') {
|
||||
$qd['lose_date'] .= $_POST['q_nk_atr_' . $i] . ':=:' . $_POST['q_nk_val_' . $i] . ':|:';
|
||||
}
|
||||
} else {
|
||||
$i = -2;
|
||||
$qd['lose_date'] = trim($qd['lose_date'], ':|');
|
||||
}
|
||||
</script>
|
||||
$i++;
|
||||
}
|
||||
Db::sql(
|
||||
'insert into quests (name, min_lvl, max_lvl, tr_date, act_date, win_date, lose_date, info, line, align, fast) values (?,?,?,?,?,?,?,?,?,?,?)',
|
||||
[
|
||||
$qd['name'],
|
||||
$qd['lvl'][0],
|
||||
$qd['lvl'][1],
|
||||
$qd['tr_date'],
|
||||
$qd['act_date'],
|
||||
$qd['win_date'],
|
||||
$qd['lose_date'],
|
||||
$qd['info'],
|
||||
$qd['line'],
|
||||
$qd['align'],
|
||||
$qd['fast'],
|
||||
]
|
||||
);
|
||||
}
|
||||
?>
|
||||
<script src="/js/modpanel.js"></script>
|
||||
|
||||
<title>Текстовое поле</title>
|
||||
<style>
|
||||
.vtop {
|
||||
vertical-align: top;
|
||||
}
|
||||
<title>Текстовое поле</title>
|
||||
<style>
|
||||
.vtop {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.center {
|
||||
text-align: center;
|
||||
}
|
||||
.center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
table.cs0 {
|
||||
border-spacing: 0;
|
||||
}
|
||||
table.cs0 {
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
table.cp5 {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
table.cp5 {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
table.cp5 td {
|
||||
padding: 5px;
|
||||
}
|
||||
table.cp5 td {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
table.newquest {
|
||||
width: 100%;
|
||||
border: 0;
|
||||
background-color: #e1e1e1;
|
||||
}
|
||||
</style>
|
||||
<table style="width: 100%;">
|
||||
<tr>
|
||||
<td class="center"><h3>Редактор заданий</h3></td>
|
||||
<td style="width: 150px; text-align: right;">
|
||||
<input type="button" class="btn btn-success" value="Вернуться" onclick="location='/main.php?moderation';"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<table class="cs0 cp5 newquest">
|
||||
<!-- -->
|
||||
table.newquest {
|
||||
width: 100%;
|
||||
border: 0;
|
||||
background-color: #e1e1e1;
|
||||
}
|
||||
</style>
|
||||
<table style="width: 100%;">
|
||||
<tr>
|
||||
<td class="center"><h3>Редактор заданий</h3></td>
|
||||
<td style="width: 150px; text-align: right;">
|
||||
<input type="button" class="btn btn-success" value="Вернуться" onclick="location='/main.php?moderation';"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<table class="cs0 cp5 newquest">
|
||||
<!-- -->
|
||||
<tr>
|
||||
<td style="border-bottom:1px solid #CCCCCC;">
|
||||
<div style="margin-left:11px;">
|
||||
<a href="javascript:void(0)" onclick="nqst()">Добавить новое задание</a>
|
||||
</div>
|
||||
<div></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="addNewquest" style="display:none;">
|
||||
<td style="border-bottom:1px solid #CCCCCC; background-color: #dadada;">
|
||||
<b>Панель добавления новых заданий:</b><br>
|
||||
<form method="post" action="/main.php?moderation&go=2">
|
||||
|
||||
<table class="cs0 cp5" style="width: 100%; border: 0;">
|
||||
<tr>
|
||||
<td class="vtop" style="width: 200px;"><label for="q_name">Название задания</label></td>
|
||||
<td><input name="q_name" id="q_name" size="60" maxlength="50">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop"><label for="q_lvl">Уровень задания</label></td>
|
||||
<td><input name="q_lvl" id="q_lvl" value="0-21" size="10" maxlength="5"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Действия</td>
|
||||
<td class="vtop" id="qact"><a href="javascript:void(0)" onclick="addqact()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Условия</td>
|
||||
<td class="vtop" id="qtr"><a href="javascript:void(0)" onclick="addqtr()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Награда</td>
|
||||
<td class="vtop" id="qng"><a href="javascript:void(0)" onclick="addqng()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Неудача</td>
|
||||
<td class="vtop" id="qnk"><a href="javascript:void(0)" onclick="addqnk()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop"><label for="q_info">Описание задания</label></td>
|
||||
<td><textarea name="q_info" id="q_info" style="width:90%" rows="7"></textarea></td>
|
||||
</tr>
|
||||
<tr style="background-color: #cbcbcb">
|
||||
<td class="vtop center">
|
||||
<label><input name="q_line1" type="checkbox" id="checkbox3" value="1">
|
||||
Линейное задание</label>
|
||||
</td>
|
||||
<td>
|
||||
<label><input name="q_line2" id="q_line3" size="5" maxlength="3">
|
||||
, id линейного сюжета</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr style="background-color: #cbcbcb">
|
||||
<td class="vtop center">
|
||||
<label><input name="q_fast" type="checkbox" id="q_fast" value="1">
|
||||
Быстрое задание</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr style="background-color: #cbcbcb">
|
||||
<td class="vtop center">
|
||||
<small>
|
||||
<label>
|
||||
<input name="q_align1" type="checkbox" id="q_align1" value="1">Свет,
|
||||
</label>
|
||||
<label>
|
||||
<input name="q_align2" type="checkbox" id="q_align2" value="1"/>Тьма,
|
||||
</label><br>
|
||||
<label>
|
||||
<input name="q_align3" type="checkbox" id="q_align3" value="1"/>Нейтрал,
|
||||
</label>
|
||||
</small>
|
||||
</td>
|
||||
<td>
|
||||
<input type="submit" value="Добавить задание"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- -->
|
||||
</table>
|
||||
|
||||
<table class="cs0 cp5 newquest">
|
||||
<!-- -->
|
||||
<?php
|
||||
if (isset($_GET['delq'])) {
|
||||
Db::sql('delete from quests where id = ?', [$_GET['delq']]);
|
||||
}
|
||||
$ql = Db::getRows('select id, name, info from quests');
|
||||
foreach ($ql as $quest): ?>
|
||||
<tr>
|
||||
<td style="border-bottom:1px solid #CCCCCC;">
|
||||
<div style="margin-left:11px;">
|
||||
<a href="javascript:void(0)" onclick="nqst()">Добавить новое задание</a>
|
||||
</div>
|
||||
<td style="border-bottom:1px solid #CCCCCC; width: 300px;">
|
||||
<div style="margin-left:11px;"><?= $quest['name'] ?></div>
|
||||
<div></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="addNewquest" style="display:none;">
|
||||
<td style="border-bottom:1px solid #CCCCCC; background-color: #dadada;">
|
||||
<b>Панель добавления новых заданий:</b><br>
|
||||
<form method="post" action="/main.php?moderation&go=2">
|
||||
|
||||
<table class="cs0 cp5" style="width: 100%; border: 0;">
|
||||
<tr>
|
||||
<td class="vtop" style="width: 200px;"><label for="q_name">Название задания</label></td>
|
||||
<td><input name="q_name" id="q_name" size="60" maxlength="50">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop"><label for="q_lvl">Уровень задания</label></td>
|
||||
<td><input name="q_lvl" id="q_lvl" value="0-21" size="10" maxlength="5"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Действия</td>
|
||||
<td class="vtop" id="qact"><a href="javascript:void(0)" onclick="addqact()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Условия</td>
|
||||
<td class="vtop" id="qtr"><a href="javascript:void(0)" onclick="addqtr()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Награда</td>
|
||||
<td class="vtop" id="qng"><a href="javascript:void(0)" onclick="addqng()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop">Неудача</td>
|
||||
<td class="vtop" id="qnk"><a href="javascript:void(0)" onclick="addqnk()"><small>[+] добавить</small></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="vtop"><label for="q_info">Описание задания</label></td>
|
||||
<td><textarea name="q_info" id="q_info" style="width:90%" rows="7"></textarea></td>
|
||||
</tr>
|
||||
<tr style="background-color: #cbcbcb">
|
||||
<td class="vtop center">
|
||||
<label><input name="q_line1" type="checkbox" id="checkbox3" value="1">
|
||||
Линейное задание</label>
|
||||
</td>
|
||||
<td>
|
||||
<label><input name="q_line2" id="q_line3" size="5" maxlength="3">
|
||||
, id линейного сюжета</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr style="background-color: #cbcbcb">
|
||||
<td class="vtop center">
|
||||
<label><input name="q_fast" type="checkbox" id="q_fast" value="1">
|
||||
Быстрое задание</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr style="background-color: #cbcbcb">
|
||||
<td class="vtop center">
|
||||
<small>
|
||||
<label>
|
||||
<input name="q_align1" type="checkbox" id="q_align1" value="1">Свет,
|
||||
</label>
|
||||
<label>
|
||||
<input name="q_align2" type="checkbox" id="q_align2" value="1"/>Тьма,
|
||||
</label><br>
|
||||
<label>
|
||||
<input name="q_align3" type="checkbox" id="q_align3" value="1"/>Нейтрал,
|
||||
</label>
|
||||
</small>
|
||||
</td>
|
||||
<td>
|
||||
<input type="submit" value="Добавить задание"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<td style="border-bottom:1px solid #CCCCCC; background-color: #dadada; width: 75px;">
|
||||
<div style="text-align: center;">
|
||||
<a href="/main.php?moderation&go=2&delq=<?= $quest['id'] ?>">удалить</a>
|
||||
</div>
|
||||
</td>
|
||||
<td style="border-bottom:1px solid #CCCCCC;">
|
||||
<small><b>Описание:</b> <?= $quest['info'] ?></small>
|
||||
</td>
|
||||
</tr>
|
||||
<!-- -->
|
||||
</table>
|
||||
<?php endforeach; ?>
|
||||
<!-- -->
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<?php
|
||||
} else {
|
||||
?>
|
||||
<style>
|
||||
.modpow {
|
||||
background-color: #ddd5bf;
|
||||
}
|
||||
|
||||
<table class="cs0 cp5 newquest">
|
||||
<!-- -->
|
||||
<?php
|
||||
if (isset($_GET['delq'])) {
|
||||
Db::sql('delete from quests where id = ?', [$_GET['delq']]);
|
||||
}
|
||||
$ql = Db::getRows('select id, name, info from quests');
|
||||
foreach ($ql as $quest): ?>
|
||||
<tr>
|
||||
<td style="border-bottom:1px solid #CCCCCC; width: 300px;">
|
||||
<div style="margin-left:11px;"><?= $quest['name'] ?></div>
|
||||
<div></div>
|
||||
</td>
|
||||
<td style="border-bottom:1px solid #CCCCCC; background-color: #dadada; width: 75px;">
|
||||
<div style="text-align: center;">
|
||||
<a href="/main.php?moderation&go=2&delq=<?= $quest['id'] ?>">удалить</a>
|
||||
</div>
|
||||
</td>
|
||||
<td style="border-bottom:1px solid #CCCCCC;">
|
||||
<small><b>Описание:</b> <?= $quest['info'] ?></small>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
<!-- -->
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<?php
|
||||
} else {
|
||||
?>
|
||||
<style>
|
||||
.modpow {
|
||||
background-color: #ddd5bf;
|
||||
}
|
||||
.mt {
|
||||
background-color: #b1a993;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
.mt {
|
||||
background-color: #b1a993;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
.md {
|
||||
padding: 10px;
|
||||
}
|
||||
</style>
|
||||
<div id="useMagic" style="display:none; position:absolute; border:solid 1px #776f59; left: 50px; top: 186px;" class="modpow">
|
||||
<div class="mt" id="modtitle"></div>
|
||||
<div class="md" id="moddata"></div>
|
||||
.md {
|
||||
padding: 10px;
|
||||
}
|
||||
</style>
|
||||
<div id="useMagic" style="display:none; position:absolute; border:solid 1px #776f59; left: 50px; top: 186px;" class="modpow">
|
||||
<div class="mt" id="modtitle"></div>
|
||||
<div class="md" id="moddata"></div>
|
||||
</div>
|
||||
<div style="display: grid; grid-template-columns: auto 150px;">
|
||||
<div style="text-align: center;">
|
||||
<?php ?>
|
||||
<h3>Модераторская</h3>
|
||||
<?php ?>
|
||||
</div>
|
||||
<div style="display: grid; grid-template-columns: auto 150px;">
|
||||
<div style="text-align: center;">
|
||||
<?php ?>
|
||||
<h3>Модераторская</h3>
|
||||
<?php ?>
|
||||
</div>
|
||||
<div style="text-align: right;">
|
||||
<input type="button" class="btn btn-danger" value="Вернуться" onclick="location='main.php';">
|
||||
</div>
|
||||
<div style="text-align: right;">
|
||||
<input type="button" class="btn btn-danger" value="Вернуться" onclick="location='main.php';">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form action="/main.php?moderation&rnd=<?= PassGen::intCode() ?>" method="post" name="F1" id="F1">
|
||||
<?php
|
||||
$uer = '';
|
||||
//используем заклятия (старая реализация, замещается)
|
||||
if (isset($_GET['usemod'])) {
|
||||
if (isset($_POST['usevampir'])) {
|
||||
require_once('moder/usevampir.php');
|
||||
} elseif (isset($_POST['teleport'])) {
|
||||
require_once('moder/teleport.php');
|
||||
} elseif (isset($_POST['teleport-cometome'])) {
|
||||
require_once('moder/teleport-cometome.php');
|
||||
} elseif (isset($_POST['usemarry'])) {
|
||||
require_once('moder/usemarry.php');
|
||||
} elseif (isset($_POST['useunmarry'])) {
|
||||
require_once('moder/useunmarry.php');
|
||||
} elseif (isset($_POST['useuntravm'])) {
|
||||
require_once('moder/useuntravm.php');
|
||||
} elseif (isset($_POST['useatack'])) {
|
||||
require_once('moder/useatack.php');
|
||||
}
|
||||
}
|
||||
<form action="/main.php?moderation&rnd=<?= PassGen::intCode() ?>" method="post" name="F1" id="F1">
|
||||
<span style="color: red;"><?= $uer ?></span>
|
||||
<br>
|
||||
<div style="padding:10px; margin:5px; border-bottom:1px solid #cac9c7;">
|
||||
<h4>Наложить/Снять наказание</h4>
|
||||
<form method="post" id="moderation">
|
||||
<label for="logingo">Логин персонажа:</label>
|
||||
<input type="text" id="logingo" name="logingo">
|
||||
<label for="modReason">Причина действия (где применимо):</label>
|
||||
<input type="text" id="modReason" name="modReason">
|
||||
</form>
|
||||
|
||||
echo '<span style="color: red; ">' . $uer . '</span>';
|
||||
?>
|
||||
<br>
|
||||
<div style="padding:10px; margin:5px; border-bottom:1px solid #cac9c7;">
|
||||
<h4>Наложить/Снять наказание</h4>
|
||||
<form method="post" id="moderation">
|
||||
<label for="logingo">Логин персонажа:</label>
|
||||
<input type="text" id="logingo" name="logingo">
|
||||
<label for="modReason">Причина действия (где применимо):</label>
|
||||
<input type="text" id="modReason" name="modReason">
|
||||
<div>
|
||||
<label>Время в минутах: <input type="number" min="1" name="time" form="moderation"></label>
|
||||
<input type="submit" name="silence" value="Молчанка в чате" form="moderation">
|
||||
<input type="submit" name="unsilence" value="❌ Снять молчанку" form="moderation"><br>
|
||||
|
||||
<label>Количество дней: <input type="number" min="1" name="time" form="moderation"></label>
|
||||
<input type="submit" name="prison" value="Посадить в тюрьму" form="moderation">
|
||||
<input type="submit" name="unprison" value="❌ Выпустить из тюрьмы" form="moderation"><br>
|
||||
|
||||
<label>Количество дней: <input type="number" min="1" name="time" form="moderation"></label>
|
||||
<input type="submit" name="depersonalize" value="Скрыть профиль" form="moderation">
|
||||
<input type="submit" name="undepersonalize" value="❌ Раскрыть профиль" form="moderation"><br>
|
||||
|
||||
<form method="post">
|
||||
<label for="marrypartner1">Партнёр 1</label>
|
||||
<input type="text" id="marrypartner1" name="logingo">
|
||||
<label for="marrypartner2">Партнёр 2</label>
|
||||
<input type="text" id="marrypartner2" name="logingo2">
|
||||
<input type="submit" name="marry" value="💘 Свадьба!">
|
||||
<input type="submit" name="unmarry" value="💔 Развод!">
|
||||
</form>
|
||||
|
||||
<div>
|
||||
<label>Время в минутах: <input type="number" min="1" name="time" form="moderation"></label>
|
||||
<input type="submit" name="silence" value="Молчанка в чате" form="moderation">
|
||||
<input type="submit" name="unsilence" value="❌ Снять молчанку" form="moderation"><br>
|
||||
|
||||
<label>Количество дней: <input type="number" min="1" name="time" form="moderation"></label>
|
||||
<input type="submit" name="prison" value="Посадить в тюрьму" form="moderation">
|
||||
<input type="submit" name="unprison" value="❌ Выпустить из тюрьмы" form="moderation"><br>
|
||||
|
||||
<label>Количество дней: <input type="number" min="1" name="time" form="moderation"></label>
|
||||
<input type="submit" name="depersonalize" value="Скрыть профиль" form="moderation">
|
||||
<input type="submit" name="undepersonalize" value="❌ Раскрыть профиль" form="moderation"><br>
|
||||
|
||||
<form method="post">
|
||||
<label for="marrypartner1">Партнёр 1</label>
|
||||
<input type="text" id="marrypartner1" name="logingo">
|
||||
<label for="marrypartner2">Партнёр 2</label>
|
||||
<input type="text" id="marrypartner2" name="logingo2">
|
||||
<input type="submit" name="marry" value="💘 Свадьба!">
|
||||
<input type="submit" name="unmarry" value="💔 Развод!">
|
||||
</form>
|
||||
|
||||
<?php if ($m->canBlockUsers): ?>
|
||||
<div style="background-color: lightcoral; margin: 5px 1px; border: 1px dashed crimson;">
|
||||
<input type="submit" name="ban" value="🔒 ️Заблокировать>" form="moderation">
|
||||
<input type="submit" name="unban" value="🔓 Разблокировать" form="moderation">
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
||||
<?php if ($m->isAdmin): ?>
|
||||
<div>
|
||||
<a href="/main.php?moderation&go=2">Редактировать квесты, задания и обучающие программы</a><br>
|
||||
<a href="/main.php?moderation&go=3">Редактировать квесты для Нубозавров</a><br>
|
||||
<a href="/main.php?moderation&go=1">Редактировать возможности подчиненных</a><br>
|
||||
<?php if ($m->canBlockUsers): ?>
|
||||
<div style="background-color: lightcoral; margin: 5px 1px; border: 1px dashed crimson;">
|
||||
<input type="submit" name="ban" value="🔒 ️Заблокировать>" form="moderation">
|
||||
<input type="submit" name="unban" value="🔓 Разблокировать" form="moderation">
|
||||
</div>
|
||||
|
||||
<input type="submit" name="addmoderator" value="Назначить модератором>" form="moderation">
|
||||
<input type="submit" name="deletemoderator" value="❌ Убрать из модераторов" form="moderation">
|
||||
<input type="submit" name="kickfrombattle" value="⚔️ Вытащить из боя>" form="moderation">
|
||||
<input type="submit" name="changegender" value="👨🏻🤝👩🏻 Сменить пол" form="moderation"><br>
|
||||
|
||||
<label for="newLogin">Новый логин:</label> <input type="text" id="newLogin" name="newLogin">
|
||||
<input type="submit" name="changelogin" value="📝 Сменить логин"><br>
|
||||
|
||||
<label for="itemId">ID предмета:</label> <input type="number" id="itemId" name="itemId" min="1">
|
||||
<input type="submit" name="giveitem" value="🎁 Подарить предмет"><br>
|
||||
|
||||
<button disabled>Добавить опыта</button> <i style="color: grey">- очень сломанная херня.</i>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
if ($m->isAdmin) {
|
||||
/** Мегафон только для администраторов. */
|
||||
Announcement::init();
|
||||
|
||||
/** Регистрации персонажей только для администраторов. */
|
||||
UserRegistrationList::get();
|
||||
|
||||
/** Лог действий модераторов только для администраторов. */
|
||||
$dsee = [];
|
||||
if (!isset($_POST['smod1'])) {
|
||||
$_POST['smod1'] = date('d.m.Y');
|
||||
}
|
||||
$dsee['date'] = explode('.', $_POST['smod1']);
|
||||
$dsee['date'] = $dsee['date'][2] . '-' . $dsee['date'][1] . '-' . $dsee['date'][0];
|
||||
$dsee['t1'] = strtotime($dsee['date'] . ' 00:00:00');
|
||||
$dsee['t2'] = strtotime($dsee['date'] . ' 23:59:59');
|
||||
$dsee['date'] = date('d.m.Y', $dsee['t1']);
|
||||
?>
|
||||
<div style="padding:0 10px 5px 10px; margin:5px; border-bottom:1px solid #cac9c7;">
|
||||
<h4>Показать лог действий модераторов</h4>
|
||||
<label>
|
||||
Показать действия за
|
||||
<input name="smod1" type="text" id="smod1" value="<?= $_POST['smod1'] ?>" size="11" maxlength="10">
|
||||
</label>
|
||||
<label>
|
||||
Логин модератора
|
||||
<input name="smod2" type="text" id="smod2" value="<?= $_POST['smod2'] ?>" size="30" maxlength="30">
|
||||
</label>
|
||||
<input type="submit" name="delosee3" id="delosee3" class="btn" value="Поиск"/>
|
||||
<?php if ($m->isAdmin): ?>
|
||||
<div>
|
||||
<a href="/main.php?moderation&go=2">Редактировать квесты, задания и обучающие программы</a><br>
|
||||
<a href="/main.php?moderation&go=3">Редактировать квесты для Нубозавров</a><br>
|
||||
<a href="/main.php?moderation&go=1">Редактировать возможности подчиненных</a><br>
|
||||
</div>
|
||||
<?php
|
||||
if (isset($_POST['delosee3'])) {
|
||||
foreach (Db::getRows('select uid, time, text from users_delo where login = ? and time between ? and ?', [$_POST['smod2'], $dsee['t1'], $dsee['t2']]) as $log) {
|
||||
$date = date('d.m.Y H:i:s', $log['time']);
|
||||
$login = User::getLogin($log['uid']);
|
||||
echo <<<HTML
|
||||
|
||||
<input type="submit" name="addmoderator" value="Назначить модератором>" form="moderation">
|
||||
<input type="submit" name="deletemoderator" value="❌ Убрать из модераторов" form="moderation">
|
||||
<input type="submit" name="kickfrombattle" value="⚔️ Вытащить из боя>" form="moderation">
|
||||
<input type="submit" name="changegender" value="👨🏻🤝👩🏻 Сменить пол" form="moderation"><br>
|
||||
|
||||
<label for="newLogin">Новый логин:</label> <input type="text" id="newLogin" name="newLogin">
|
||||
<input type="submit" name="changelogin" value="📝 Сменить логин"><br>
|
||||
|
||||
<label for="itemId">ID предмета:</label> <input type="number" id="itemId" name="itemId" min="1">
|
||||
<input type="submit" name="giveitem" value="🎁 Подарить предмет"><br>
|
||||
|
||||
<button disabled>Добавить опыта</button> <i style="color: grey">- очень сломанная херня.</i>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
if ($m->isAdmin) {
|
||||
/** Мегафон только для администраторов. */
|
||||
Announcement::init();
|
||||
|
||||
/** Регистрации персонажей только для администраторов. */
|
||||
UserRegistrationList::get();
|
||||
|
||||
/** Лог действий модераторов только для администраторов. */
|
||||
$dsee = [];
|
||||
if (!isset($_POST['smod1'])) {
|
||||
$_POST['smod1'] = date('d.m.Y');
|
||||
}
|
||||
$dsee['date'] = explode('.', $_POST['smod1']);
|
||||
$dsee['date'] = $dsee['date'][2] . '-' . $dsee['date'][1] . '-' . $dsee['date'][0];
|
||||
$dsee['t1'] = strtotime($dsee['date'] . ' 00:00:00');
|
||||
$dsee['t2'] = strtotime($dsee['date'] . ' 23:59:59');
|
||||
$dsee['date'] = date('d.m.Y', $dsee['t1']);
|
||||
?>
|
||||
<div style="padding:0 10px 5px 10px; margin:5px; border-bottom:1px solid #cac9c7;">
|
||||
<h4>Показать лог действий модераторов</h4>
|
||||
<label>
|
||||
Показать действия за
|
||||
<input name="smod1" type="text" id="smod1" value="<?= $_POST['smod1'] ?>" size="11" maxlength="10">
|
||||
</label>
|
||||
<label>
|
||||
Логин модератора
|
||||
<input name="smod2" type="text" id="smod2" value="<?= $_POST['smod2'] ?>" size="30" maxlength="30">
|
||||
</label>
|
||||
<input type="submit" name="delosee3" id="delosee3" class="btn" value="Поиск"/>
|
||||
</div>
|
||||
<?php
|
||||
if (isset($_POST['delosee3'])) {
|
||||
foreach (Db::getRows('select uid, time, text from users_delo where login = ? and time between ? and ?', [$_POST['smod2'], $dsee['t1'], $dsee['t2']]) as $log) {
|
||||
$date = date('d.m.Y H:i:s', $log['time']);
|
||||
$login = User::getLogin($log['uid']);
|
||||
echo <<<HTML
|
||||
<div style="padding:0 10px 5px 10px; margin:5px; border-bottom:1px solid #cac9c7;">
|
||||
<div style="display:inline-block;width:150px;color:green">$date</div>
|
||||
{$log['text']} персонажу $login
|
||||
{$log['text']} персонажу $login
|
||||
</div>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
} ?>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
} ?>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user