Вход Регистрация
Файл: pages/admin/adm.php
Строк: 473
<?php
// Physical module map v50.6: public URL stays clean while code lives in /pages.
if (!defined('GAME_ROOT')) define('GAME_ROOT'dirname(__DIR__2));
chdir(GAME_ROOT);
if (
PHP_SAPI !== 'cli') { $_SERVER['PHP_SELF']='/adm.php'$_SERVER['SCRIPT_NAME']='/adm.php'; }

/* Обновление игры под PHP 8.4 / PDO и усиление безопасности: by Метриум (Стэлп) */

include './system/common.php';

include 
'./system/functions.php';

include 
'./system/user.php';
  include 
'./system/menu.php';
if(!
$user OR $user['access']==0) {

header('location: /');

exit;

}

switch((string)(
$_GET['action'] ?? '')) {
default:

$title 'Панель';

include 
'./system/h.php';

// Старый adm _n.php отсутствовал и ломал панель; меню находится в этом модуле.
?><div class='text2151'>
<?php
// Доступ в панель определяется только игровым уровнем access. Отдельный пароль админки не требуется.
?>

<div class='main'>
<div class='menuList'>
<?php $ticketPending=(int)(db_fetch_one("SELECT COUNT(*) c FROM `ticket` WHERE `status`<>'close'")['c']??0); ?><li><a href='/adm/support/'><img src='/images/icon/arrow.png' alt='*'/> Техподдержка <?=$ticketPending>0?'<span class="green">(+'.$ticketPending.')</span>':''?></a></li>

  <li><a href='/adm/clon/'><img src='/images/icon/arrow.png' alt='*'/> Проверка на мультаводство</a></li>
  <li><a href='/adm/ban/'><img src='/images/icon/arrow.png' alt='*'/> Управление банами</a></li>

  <li><a href='/banc/'><img src='/images/icon/arrow.png' alt='*'/> Список забаненых в чате</a></li>

<?php

  
if((int)($user['access'] ?? 0) >= 2) {

?>











<li><a href='/figa'> <img src="/images/icon/arrow.png" alt="*"> Шпион</a></li>





  


<hr>
<li><a href='/adm/acc/'><img src='/images/icon/arrow.png' alt='*'/> Управление аккаунтами</a></li>
<li><a href='/sunduk_adm'><img src="/images/icon/arrow.png" alt="*"> Сундуки</a></li>
<li><a href='/moi_akzii'><img src="/images/icon/arrow.png" alt="*"> Акции</a></li>

<div class="block_zero center"><b>Игровой календарь</b><br>
Дракон пробуждается автоматически каждые 2 часа.<br>
Лига обновляется ежедневно, распределение — по понедельникам.<br>
Клановое подземелье открывается в субботу и закрывается в понедельник.<br>
Клановые битвы проходят с пятницы по воскресенье.<br>
Итоги Колизея, недельных турниров и сезона доблести подводятся автоматически.<br>
<span class="green">Все циклы мира действуют автоматически.</span></div>

  <?php
}
?>

</div>
</div>
<?php

include './system/f.php';
break;

                    
//Soars like an eagle
                    //There's no tomorrow
                    // by Метриум (Стэлп)
case 'tournamient':
$title='Еженедельный турнир по реликвиям'
include_once 
'./system/h.php'
if(
$user['access'] < 1) {
header('location: /adm/');
exit;
}
$q db_query('SELECT * FROM `users` WHERE `relic` > "0" AND `id` != "'.$user['id'].'" ORDER BY `relic` DESC LIMIT 5');
while(
$row db_fetch_array($q)) {
echo
'<div class="block_zero center">';
echo
"<img src='/images/icon/race/$row[r].png' alt='*'/> <a href='/user/$row[id]/'>$row[login]</a> <img src=/images/icon/relic.png> <b>$row[relic]</b><br/>";
echo
'</div>';
}

include 
'./system/f.php';
  break;
  case 
'clon':

    
$title 'Проверка на мультаводство';    

include 
'./system/h.php';

?>

<div class='main'>
<div class='block_zero'>

<?php

$id 
_string(_num($_POST['id'] ?? 0));
  if(
$id) {
    
$users db_query('SELECT * FROM `users` WHERE `id` = "'.$id.'"');
    
$users db_fetch_array($users);
  
  if(!
$users) {
      
header('location: /adm/clon/');
  exit;
  }

  
$count db_result(db_query('SELECT COUNT(*) FROM `users` WHERE `ip` = "'.$users['ip'].'" AND `id` != "'.$users['id'].'"'),0);

?>
IP: <?=$users['ip']?> [<?=$users['ua']?>]<br/>
</div>
 <div class='mini-line'></div>
<div class='block_zero'>


<?php

if($count 0) {

$q db_query('SELECT * FROM `users` WHERE `ip` = "'.$users['ip'].'" AND `id` != "'.$users['id'].'"');

  while(
$row db_fetch_array($q)) {

?>

<img src='/images/icon/race/<?=$row['r']?>.png' alt='*'/> <a href='/user/<?=$row['id']?>/'><?=$row['login']?></a><br/>

<?php

  
}

}
else
{

?>

<font color='#999'>Персонажей нет!</font>

<?php

}
  
  }
  else
  {

?>

  <form action='/adm/clon/' method='post'>
    ID персонажа:<br/><input name='id'/><br/>
    <input type='submit' value='Поиск'/>
  </form>

<?php

  
}

?>

</div>

</div>
<?php

include './system/f.php';

  break;

  case 
'ban':

    
$title 'Управление банами';    

include 
'./system/h.php';

?>

<div class='title'><?=$title?></div>
 <div class='line'></div>

<?php

if(($_GET['list'] ?? null) == true) {
    
$max 10;
  
$count db_result(db_query('SELECT COUNT(*) FROM `ban` WHERE `time` > "'.time().'"'),0);
  
$pages ceil($count/$max);
   
$page _string(_num($_GET['page'] ?? 1));

    if(
$page $pages) {
    
   
$page $pages;
    
    }
  
    if(
$page 1) {
    
   
$page 1;
    
    }
    
  
$start $page $max $max;

if(
$count 0) {


$id _string(_num($_GET['id'] ?? 0));

  if(
$id) {
  
  
$ban db_query('SELECT * FROM `ban` WHERE `id` = "'.$id.'"');
  
$ban db_fetch_array($ban);
  
  if(!
$ban) {
  
    
header('location: /adm/ban/list/?page='.$page);
    
  exit;
  
  }
  
?>

  <div class='content'>
    
  </div>
  <div class='line'></div>

<?php

  
if(($_GET['delete'] ?? null) == true) {
  
    
db_query('DELETE FROM `ban` WHERE `id` = "'.$id.'"');
  
  
header('location: /adm/ban/list/?page='.$page);
  
  }
  
  }

?>

<div class='menu'>

<?php

$q 
db_query('SELECT * FROM `ban` WHERE `time` > "'.time().'" ORDER BY `id` DESC LIMIT '.$start.', '.$max.'');

  while(
$row db_fetch_array($q)) {

  
$u db_query('SELECT * FROM `users` WHERE `id` = "'.$row['user'].'"');
  
$u db_fetch_array($u);

?>

  <span style='float: right;'>( <a href='/adm/ban/list/?id=<?=$row['id']?>&delete=true&page=<?=$page?>'>Удалить</a> | <a href='/adm/ban/list/?id=<?=$row['id']?>&page=<?=$page?>'>Редактировать</a> )</span><img src='/images/icon/race/<?=$u['r'].($u['online'] > time() - 300 '':'-off')?>.png' alt='*'/> <a href='/user/<?=$u['id']?>/'><?=$u['login']?></a>
  <br/>
  Осталось: <?=_time($row['time'] - time())?><br/>
  Причина: <?=($ban['text'])?><br/>
Блокировку выдал: <?=($ban['who'])?><br/>

<?php
  
}
?>

  <li class='no_b'><?=pages('/adm/ban/list/?')?></li>

<?php
 
}
else
{


}

?>

</div>

<?php

}
else
{

$id _string(_num($_POST['id'] ?? 0));
  if(
$id) {
    
$users db_query('SELECT * FROM `users` WHERE `id` = "'.$id.'"');
    
$users db_fetch_array($users);
  
  if(!
$users OR $users['access'] >= $user['access']) {
      
header('location: /adm/ban/');
  exit;
  }
  
  
$text _string($_POST['text'] ?? '');
  
  
$d _string(_num($_POST['d'] ?? 0));

  
$h _string(_num($_POST['h'] ?? 0));
  if(
$h 24) {
     
$h 24;
  }

  
$m _string(_num($_POST['m'] ?? 0));
  if(
$m 60) {
     
$m 60;
  }
  
  
$count db_result(db_query('SELECT COUNT(*) FROM `ban` WHERE `user` = "'.$users['id'].'"'),0);
  if(
$count == 0) {
  
    
db_query('INSERT INTO `ban` (`user`,
                                    `time`,
                                    `text`,
                                    `who`,
                                      `ip`) VALUES ("'
.$users['id'].'",
               "'
.(time() + ($d 86400) + ($h 3600) + ($m 60)).'",
                                                           "'
.$text.'",
                                                    "'
.$user['login'].'",
                                                    "'
.$users['ip'].'")');

?>

<div class='content' align='center'>
   <img src='/images/icon/ok.png' alt='*'/> <font color='#3c3'>Персонаж заблокирован!</font></div>

<?php
  
  
}
  else
  {

?>

<div class='content' align='center'>
<img src='/images/icon/error.png' alt='*'/> <font color='#c66'>Персонаж уже заблокирован!</font><br/></div>

<?php
  
  
}

?>

<div class='line'></div>

<?php
  
  
}

?>

<div class='content'>

  <form action='/adm/ban/' method='post'>
  ID персонажа:<br/><input name='id'/><br/>
  Причина:<br />
  <textarea name='text'></textarea><br />
  Мин:<br/><select name='m'>
  <option value='0'>не выбрано</option>
  <option value='5'>5 мин</option>
  <option value='10'>10 мин</option>
  <option value='15'>15 мин</option>
  <option value='20'>20 мин</option>
  <option value='30'>30 мин</option>
  </select><br/>
  
  Часы:<br/><select name='h'>
   <option value='0'>не выбрано</option>
  <option value='1'>1 час</option>
  <option value='2'>2 часа</option>
  <option value='3'>3 часа</option>
  <option value='4'>4 часа</option>
  <option value='5'>5 часов</option>
  </select><br/>
  
  Дни:<br/><select name='d'>
  <option value='0'>не выбрано</option>
  <option value='1'>1 день</option>
  <option value='2'>2 дня</option>
  <option value='3'>3 дня</option>
  <option value='4'>4 дня</option>
  <option value='5'>5 дня</option>
  <option value='99999999'>Навсега</option>
  </select><br/>

    <input type='submit' value='Забанить'/>
  </form>

</div>

<div class='line'></div>
<div class='list'>
  <li class='no_b'><a href='/adm/ban/list/'><img src='/images/icon/arrow.png' alt='*'/> Список забаненых</a> (<?=db_result(db_query('SELECT COUNT(*) FROM `ban` WHERE `time` > "'.time().'"'),0)?>)</li>
</div>

<?php

  
}

include 
'./system/f.php';

  break;

  case 
'deposit':

  if(
$user['access'] < 2) {

    
header('location: /adm/');

  exit;

  }

    
$title 'Передача средств';    

include 
'./system/h.php';

?>

<div class='title'><?=$title?></div>
 <div class='line'></div>

<?php

  
if(!empty($_POST['submit'])) {

  
$id _string(_num($_POST['id'] ?? 0));
    
  
$users db_query('SELECT * FROM `users` WHERE `id` = "'.$id.'"');
  
$users db_fetch_array($users);

  if(
$users) {
  
           
$type _string($_POST['type'] ?? '');
    
$count_string(_num($_POST['count'] ?? 0));
  
  if(
db_query('UPDATE `users` SET `'.$type.'` = `'.$type.'` + '.$count.' WHERE `id` = "'.$id.'"')) {

?>

<div class='content' align='center'>Перевод успешно выполнен!</div>
<div class='line'></div>

<?php  
  
  
}
  else
  {
  
  }

  }
  else
  {
  
  
  }
  
  }

?>

<div class='content'>

  <form action='/adm/deposit/' method='post'>
    ID персонажа:<br/><input name='id'/><br/>
    <select name='type'>
    <option value='s'>Серебро</option>
    <option value='g'>Золото</option>
    </select>
    <br/><input name='count' size='2' value='0'/><br/>
    <input type='submit' name='submit' value='Перевести'/>
  </form>

</div>

<?php

include './system/f.php';

  break;

  case 
'trade':

  if(
$user['access'] < 2) {

    
header('location: /adm/');

  exit;

  }

    
$title 'Передача вещей';    

include 
'./system/h.php';

?>

<div class='title'><?=$title?></div>
 <div class='line'></div>

<?php

  
if(!empty($_POST['submit'])) {

  
$id _string(_num($_POST['id'] ?? 0));
$item _string(_num($_POST['item'] ?? 0));


  
$users db_query('SELECT * FROM `users` WHERE `id` = "'.$id.'"');
  
$users db_fetch_array($users);

   
$item db_query('SELECT * FROM `items` WHERE `id` = "'.$item.'"');
   
$item db_fetch_array($item);

  switch(
$item['quality']) {
    case 
0:
  
$bonus 0;
    
$str =28;
    
$vit =28;
    
$agi =28;
    
$def =28;
     break;
    case 
1:
  
$bonus 5;
    
$str =31;
    
$vit =31;
    
$agi =31;
    
$def =31;

     break;

    case 
2:
 
$bonus 10;
    
$str =45;
    
$vit =45;
    
$agi =45;
    
$def =45;

     break;

    case 
3:
 
$bonus 10;
    
$str =52;
    
$vit =52;
    
$agi =52;
    
$def =52;

      break;

    case 
4:
 
$bonus 10;
    
$str =60;
    
$vit =60;
    
$agi =60;
    
$def =60;

     break;
     
    case 
5:
 
$bonus 10;
    
$str =120;
    
$vit =120;
    
$agi =120;
    
$def =120;

     break;

    case 
6:
 
$bonus 10
    
$str =170;
    
$vit =170;
    
$agi =170;
    
$def =170;

     break;

  }

  if(
$users && $item) {
  
           
$type _string($_POST['type'] ?? '');
    
$count_string(_num($_POST['count'] ?? 0));
  
  if(
db_query('INSERT INTO `inv` (`user`,
                                     `item`,
                                    `bonus`,
                                     `_str`,
                                     `_vit`,
                                     `_agi`,
                                     `_def`) VALUES ("'
.$users['id'].'",
                                                      "'
.$item['id'].'",
                                                           "'
.$bonus.'",
                                                             "'
.$str.'",
                                                             "'
.$vit.'",
                                                             "'
.$agi.'",
                                                             "'
.$def.'")')) {

?>

<div class='content' align='center'>Вещь успешно передана!</div>
<div class='line'></div>

<?php  
  
  
}
  else
  {
  
  }

  }
  else
  {
  
  
  }
  
  }

?>

<div class='content'>

  <form action='/adm/trade/' method='post'>
    ID персонажа:<br/><input name='id'/> 
    <select name='item'>
<?php

    $q 
db_query('SELECT * FROM `items` ORDER BY `id`');
while(
$row db_fetch_array($q)) {

  switch(
$row['quality']) {
    case 
0:
  
$quality 'П';
     break;
    case 
1:
  
$quality 'О';

     break;

    case 
2:
  
$quality 'Р';

     break;

    case 
3:
  
$quality 'Э';

      break;

    case 
4:
  
$quality 'Л';

     break;
     
    case 
5:
  
$quality 'Б';

     break;

    case 
6:
  
$quality 'С Б';
     break;

  }  
?>
      <option value='<?=$row['id']?>'><?=$row['id']?> / <?=$quality?> / <?=$row['name']?></option>
<?php

  
}

?>
    </select><br/>
    <input type='submit' name='submit' value='Передать'/>
  </form>

</div>

<?php

include './system/f.php';

  break;
    case 
'acc':
        if(
$user['access'] < 2) {
            
header('location: /adm/');
            exit;
        }
        
$title 'Редактирование Игрока';
        include 
'./system/h.php';
        if(isset(
$_GET['yes'])){
        echo 
_string($_POST['login'] ?? '');
            
db_query('UPDATE `users` SET `login` = ''._string($_POST['login'] ?? '').'', `s` = '._string(_num($_POST['s'] ?? 0)).', `g` = '._string(_num($_POST['g'] ?? 0)).', `level` = '._string(_num($_POST['level'] ?? 0)).', `exp` = '._string(_num($_POST['exp'] ?? 0)).', `str` = '._string(_num($_POST['str'] ?? 0)).', `vit` = '._string(_num($_POST['vit'] ?? 0)).', `agi` = '._string(_num($_POST['agi'] ?? 0)).', `def` = '._string(_num($_POST['def'] ?? 0)).', `mana` = '._string(_num($_POST['mana'] ?? 0)).' WHERE `id` = '._string(_num($_GET['yes'] ?? 0)).' LIMIT 1');
            
header('location: /adm/acc/');
            exit;
        }
        if(isset(
$_POST['submit']) & !empty($_POST['id'])){
            
$acc db_fetch_array(db_query('SELECT * FROM `users` WHERE `id` = '._string(_num($_POST['id'] ?? 0)).' LIMIT 1'));
            
?>
            <div class="content">
                <form action='/adm/acc/yes/<?=_string(_num($_POST['id'] ?? 0))?>/' method='post'>
                    Никнейм:
                    <br/>
                    <input type='text' name='login' value='<?=$acc['login']?>'/> 
                    <br/>
                    Кол-во серебра:
                    <br/>
                    <input name='s' value='<?=$acc['s']?>'/> 
                    <br/>
                    Кол-во золота:
                    <br/>
                    <input name='g' value='<?=$acc['g']?>'/> 
                    <br/>
                    Уровень:
                    <br/>
                    <input name='level' value='<?=$acc['level']?>'/> 
                    <br/>    
                    Опыт:
                    <br/>
                    <input name='exp' value='<?=$acc['exp']?>'/> 
                    <br/>    
                    Сила:
                    <br/>
                    <input name='str' value='<?=$acc['str']?>'/> 
                    <br/>    
                    Жизнь:
                    <br/>
                    <input name='vit' value='<?=$acc['vit']?>'/> 
                    <br/>    
                    Удача:
                    <br/>
                    <input name='agi' value='<?=$acc['agi']?>'/> 
                    <br/>
                    Защита:
                    <br/>
                    <input name='def' value='<?=$acc['def']?>' /> 
                    <br/>
                    Мана:
                    <br/>
                    <input name='mana' value='<?=$acc['mana']?>'/> 
                    <br/>

                    Мастерство:
                    <br/>
                    <input name='skill' value='<?=$acc['skill']?>'/> 
                    <br/>
                    <input type='submit' name='submit' value='Enjoy'/>
                </form>
            </div>
            <?php
        
}
        else{
        
?>
        <div class="content">
            <form action='/adm/acc/' method='post'>
                ID персонажа:
                <br/>
                <input name='id'/> 
                <br/>
                <input type='submit' name='submit' value='Enjoy'/>
            </form>
        </div>
        
        <?php
        
}
        include 
'./system/f.php';
        break;
case 
'banned':

    
$title 'Управление чата/форума';    

include 
'./system/h.php';

?>

<div class='title'><?=$title?></div>
 <div class='line'></div>


<div class='menu'>
<?php

$id 
_string(_num($_POST['id'] ?? 0));
  if(
$id) {
    
$users db_query('SELECT * FROM `users` WHERE `id` = "'.$id.'"');
    
$users db_fetch_array($users);
  
  if(!
$users OR $users['access'] >= $user['access']) {
      
header('location: /adm/?action=banned');
  exit;
  }
  
  
$text _string($_POST['text'] ?? '');
  
$chat _string(_num($_POST['chat'] ?? 0));
  
$forum _string(_num($_POST['forum'] ?? 0));
  
  
$d _string(_num($_POST['d'] ?? 0));

  
$h _string(_num($_POST['h'] ?? 0));
  if(
$h 24) {
     
$h 24;
  }

  
$m _string(_num($_POST['m'] ?? 0));
  if(
$m 60) {
     
$m 60;
  }
  
  
$count db_result(db_query('SELECT COUNT(*) FROM `banned` WHERE `user` = "'.$users['id'].'"'),0);
  if(
$count == 0) {
  
    
db_query('INSERT INTO `banned` (`user`,
                                    `time`,
                                    `text`,
                                    `who`,
                                    `chat`,
                                    `forum`,
                                      `ip`) VALUES ("'
.$users['id'].'",
               "'
.(time() + ($d 86400) + ($h 3600) + ($m 60)).'",
                                                           "'
.$text.'",
                                                    "'
.$user['login'].'",
                                                    "'
.$chat.'",
                                                    "'
.$forum.'",
                                                    "'
.$users['ip'].'")');

?>

<div class='content' align='center'>
   <img src='/images/icon/ok.png' alt='*'/> <font color='#3c3'>Персонаж заблокирован!</font></div>

<?php
  
  
}
  else
  {

?>

<div class='content' align='center'>
<img src='/images/icon/error.png' alt='*'/> <font color='#c66'>Персонаж уже заблокирован!</font><br/></div>

<?php
  
  
}

?>

<div class='line'></div>

<?php
  
  
}

?>

<div class='content'>

  <form action='/adm/?action=banned' method='post'>
  ID персонажа:<br/><input name='id'/><br/>
  Причина:<br />
    <textarea name='text'></textarea><br />
    
  Бан чат:<br/><select name='chat'>
  <option value='0'>не выбрано</option>
  <option value='1'>Чат</option>
  </select><br/>
    
  
  Мин:<br/><select name='m'>
  <option value='0'>не выбрано</option>
  <option value='5'>5 мин</option>
  <option value='10'>10 мин</option>
  <option value='15'>15 мин</option>
  <option value='20'>20 мин</option>
  <option value='30'>30 мин</option>
  </select><br/>
  
  Часы:<br/><select name='h'>
   <option value='0'>не выбрано</option>
  <option value='1'>1 час</option>
  <option value='2'>2 часа</option>
  <option value='3'>3 часа</option>
  <option value='4'>4 часа</option>
  <option value='5'>5 часов</option>
  </select><br/>
  
  Дни:<br/><select name='d'>
  <option value='0'>не выбрано</option>
  <option value='1'>1 день</option>
  <option value='2'>2 дня</option>
  <option value='3'>3 дня</option>
  <option value='4'>4 дня</option>
  <option value='5'>5 дня</option>
  <option value='99999999'>Навсега</option>
  </select><br/>

    <input type='submit' value='Забанить'/>
  </form>

</div>
Правила бана кто не соблюдает уходит с мд<br/>
1) Мат в чате  Бан на 15-20 мин<br/>
2)Приглошение игроков  в клан  в чате Бан 20 мин<br/>
3)Рассылка посторонних ссылок бан навсегда 
<?php


include './system/f.php';

  break;
#
}
  
?>
Онлайн: 2
Реклама