Файл: admin.php
Строк: 585
<?php
include ('files/zag.php');
if(isset($_COOKIE['aut']) and $_COOKIE['aut']
== 1){
if($udata[10]
< 2){
header('Location: /main.php');
}
switch($_GET['go']){
default:
echo '
<big>Панель управления</big><br>- - -<br>
<big>Основное</big><br>
<img src="img/icon/news.png" alt="[IMG]"/> <a href="/admin.php?go=news">Новости</a><br>
<img src="img/icon/ipvp.png" alt="[IMG]"/> <a href="/admin.php?go=bans">Баны/Молчанки</a><br><br>
<big>Редактор</big><br>
<img src="img/icon/money.png" alt="[IMG]"/> <a href="/admin.php?go=shops">Магазины</a><br>
<img src="img/icon/rate.png" alt="[IMG]"/> <a href="/admin.php?go=users">Юзеры</a><br>
<img src="img/icon/battles.png" alt="[IMG]"/> <a href="/admin.php?go=create_ir">Вещи/Ресурсы</a><br>
<img src="img/icon/battles.png" alt="[IMG]"/> <a href="/admin.php?go=mds">Мобы/Дроп/Спойл</a><br>
<img src="img/icon/travel.png" alt="[IMG]"/> <a href="/admin.php?go=gorokr">Города/Окрестности</a><br>
<img src="img/icon/clan.png" alt="[IMG]"/> <a href="/admin.php?go=ca">Кланы/Альянсы/Захваты</a>
';
break;
case 'bans':
echo '
<big><a href="/admin.php">Панель управления</a> » Баны/Блоки</big><br>- - -
';
$ban = file('data/ban.dat');
$ban = array_reverse($ban);
$cban = count($ban);
for($iban = 0; $iban < $cban; $iban++){
$bdata = explode(':||:', $ban[$iban]);
echo '<br><a href="/admin.php?go=bans&go2=delban&id='.$iban.'">[x]</a> <a href="/search.php?go=go&nick='.$bdata[0].'">'.nick($bdata[0]).'</a> - <a href="/search.php?go=go&nick='.$bdata[2].'">'.nick($bdata[2]).'</a> - '.round(($bdata[3]-time())/60).' мин.<br>Причина: <font color="#666">'.$bdata[1].'</font>';
}
break;
case 'users':
echo '
<big><a href="/admin.php">Панель управления</a> » Поиск игроков</big><br>- - -<br>
';
switch($_GET['go2']){
default:
echo '
<form action="/admin.php?go=users&go2=go&" method="post">
<input name="nick"/><br>
<input type="submit" value="Поиск"/>
</form><br>
';
$dir = opendir('data/reg');
while(($k = readdir($dir))!==false){
if ($k=='.'||$k=='..') continue;
$k = str_replace(".dat","",$k);
$ucount++;
}
closedir($dir);
echo '
<a href="">Все персонажи</a> <font color="#666">('.$ucount.')</font>
';
break;
case 'go':
$nick = check::text($nick);
if(!file_exists('data/reg/'.$nick.'.dat')){
echo '
Персонаж не найден или его не существует...
';
include('files/down.php'); exit;
}
$nick2 = file('data/reg/'.$nick.'.dat');
$ndata = explode(':||:', $nick2[0]);
echo '
<big>Обзор персонажа <a href="/search.php?go=go&nick='.$nick.'">'.nick($ndata[0]).'</a></big><br><br>
';
if(isset($_POST['submit'])){
$ndata[9] = $_POST['ndata9'];
$ndata[8] = $_POST['ndata8'];
$ndata[47] = $_POST['ndata47'];
$ndata[50] = $_POST['ndata50'];
$ndata[43] = $_POST['ndata43'];
$ndata[44] = $_POST['ndata44'];
$ndata[45] = $_POST['ndata45'];
$ndata[46] = $_POST['ndata46'];
$ndata[17] = $_POST['ndata17'];
$ndata[30] = $_POST['ndata30'];
$ndata[6] = $_POST['ndata6'];
$ndata[7] = $_POST['ndata7'];
$ndata[36] = $_POST['ndata36'];
$ndata[49] = $_POST['ndata49'];
$ndata[64] = $_POST['ndata64'];
$ndata[65] = $_POST['ndata65'];
$ndata[19] = $_POST['ndata19'];
$ndata[31] = $_POST['ndata31'];
if($ndata[0]
!= $u['log']) $ndata[10] = $_POST['ndata10'];
$ndata[11] = $_POST['ndata11'];
$update = $ndata[0].':||:'.$ndata[1].':||:'.$ndata[2].':||:'.$ndata[3].':||:'.$ndata[4].':||:'.$ndata[5].':||:'.$ndata[6].':||:'.$ndata[7].':||:'.$ndata[8].':||:'.$ndata[9].':||:'.$ndata[10].':||:'.$ndata[11].':||:'.$ndata[12].':||:'.$ndata[13].':||:'.$ndata[14].':||:'.$ndata[15].':||:'.$ndata[16].':||:'.$ndata[17].':||:'.$ndata[18].':||:'.$ndata[19].':||:'.$ndata[20].':||:'.$udata[21].':||:'.$ndata[22].':||:'.$ndata[23].':||:'.$ndata[24].':||:'.$ndata[25].':||:'.$ndata[26].':||:'.$ndata[27].':||:'.$ndata[28].':||:'.$ndata[29].':||:'.$ndata[30].':||:'.$ndata[31].':||:'.$udata[32].':||:'.$ndata[33].':||:'.$ndata[34].':||:'.$ndata[35].':||:'.$ndata[36].':||:'.$ndata[37].':||:'.$ndata[38].':||:'.$ndata[39].':||:'.$ndata[40].':||:'.$ndata[41].':||:'.$ndata[42].':||:'.$ndata[43].':||:'.$ndata[44].':||:'.$ndata[45].':||:'.$ndata[46].':||:'.$ndata[47].':||:'.$ndata[48].':||:'.$ndata[49].':||:'.$ndata[50].':||:'.$ndata[51].':||:'.$ndata[52].':||:'.$$ndata[53].':||:'.$ndata[54].':||:'.$ndata[55].':||:'.$ndata[56].':||:'.$ndata[57].':||:'.$ndata[58].':||:'.$ndata[59].':||:'.$ndata[60].':||:'.$ndata[61].':||:'.$ndata[62].':||:'.$ndata[63].':||:'.$ndata[64].':||:'.$ndata[65].':||:';
$fp = fopen('./data/reg/'.$nick.'.dat', 'a+');
flock($fp,LOCK_EX);
ftruncate($fp, 0);
fputs($fp, $update);
fflush($fp);
flock($fp,LOCK_UN);
fclose($fp);
echo 'Данные успешно обновлены.<br><br>';
}
echo '
<form action="/admin.php?go=users&go2=go&nick='.$ndata[0].'" method="post">
<table width="100%" cellpadding="0">
<tr><td>Ник</td><td><font color="#666">'.$ndata[0].'</font></td></tr>
<tr><td>Пароль</td><td><font color="#666">'.$ndata[1].'</font></td></tr>
<tr><td>Почта</td><td><font color="#666">'.$ndata[18].'</font></td></tr>
<tr><td>Доступ</td><td><select name="ndata10">
';
echo '<option value="0">Юзер</option>';
echo '<option value="1">Консультант</option>';
echo '<option value="2">Модер</option>';
echo '<option value="3">Админ</option>';
echo '
</select>
</td></tr>
<tr><td>Русский ник</td><td><input name="ndata11" value="'.$ndata[11].'"/></td></tr>
<tr><td>Уровень</td><td><input name="ndata9" value="'.$ndata[9].'"/></td></tr>
<tr><td>Аден</td><td><input name="ndata8" value="'.$ndata[8].'"/></td></tr>
<tr><td>Coin of Luck</td><td><input name="ndata47" value="'.$ndata[47].'"/></td></tr>
<tr><td>Цвет ника (CSS)</td><td><input name="ndata50" value="'.$ndata[50].'"/></td></tr>
<tr><td>Опыт</td><td><input name="ndata19" value="'.$ndata[19].'"/></td></tr>
<tr><td>Физ.Атк</td><td><input name="ndata43" value="'.$ndata[43].'"/></td></tr>
<tr><td>Маг.Атк</td><td><input name="ndata44" value="'.$ndata[44].'"/></td></tr>
<tr><td>Физ.Защ</td><td><input name="ndata45" value="'.$ndata[45].'"/></td></tr>
<tr><td>Маг.Защ</td><td><input name="ndata46" value="'.$ndata[46].'"/></td></tr>
<tr><td>HP</td><td><input name="ndata17" value="'.$ndata[17].'"/></td></tr>
<tr><td>MP</td><td><input name="ndata30" value="'.$ndata[30].'"/></td></tr>
<tr><td>SP</td><td><input name="ndata31" value="'.$ndata[31].'"/></td></tr>
<tr><td>Побед</td><td><input name="ndata6" value="'.$ndata[6].'"/></td></tr>
<tr><td>Поражений</td><td><input name="ndata7" value="'.$ndata[7].'"/></td></tr>
<tr><td>Карма</td><td><input name="ndata36" value="'.$ndata[36].'"/></td></tr>
<tr><td>Рекомендации</td><td><input name="ndata49" value="'.$ndata[49].'"/></td></tr>
<tr><td>Постов в чате</td><td><input name="ndata64" value="'.$ndata[64].'"/></td></tr>
<tr><td>Постов в форуме</td><td><input name="ndata65" value="'.$ndata[65].'"/></td></tr>
<tr><td>Директория</td><td><font color="#666">'.$ndata[63].'</font></td></tr>
</table>
<input type="submit" value="Сохранить" name="submit"/>
</form>
';
break;
}
break;
case 'news':
switch($_GET['go2']){
default:
echo '
<big><a href="/admin.php">Панель управления</a> » Новости</big><br>- - -<br>
';
if(isset($_POST['submit'])){
$title = check::text($_POST['title']);
$text = check::text(check::nobr($_POST['text']));
if(empty($title)){
echo '
Заголовок новости остался пустым.
';
include ('files/down.php'); exit;
}
if(empty($text)){
echo '
Описание новости осталось пустым.
';
include ('files/down.php'); exit;
}
$addnews = ''.$_POST['title'].':||:'.$_POST['text'].':||:'.time().':||:'.$u['log'].':||:0:||:';
$fp = fopen("data/news.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$addnewsrn");
flock ($fp,LOCK_UN);
fclose($fp);
$news = file('data/news.dat');
$ncount = count($news)-1;
$dir = opendir('data/reg');
while(($k = readdir($dir))!==false){
if ($k=='.' || $k=='..') continue;
$k = str_replace(".dat","",$k);
$ucount++;
$nick = file('data/reg/'.$k.'.dat');
$ndata = explode(':||:', $nick[0]);
$ndata[22] = $ndata[22]+1;
$update = $ndata[0].':||:'.$ndata[1].':||:'.$ndata[2].':||:'.$ndata[3].':||:'.$ndata[4].':||:'.$ndata[5].':||:'.$ndata[6].':||:'.$ndata[7].':||:'.$ndata[8].':||:'.$ndata[9].':||:'.$ndata[10].':||:'.$ndata[11].':||:'.$ndata[12].':||:'.$ndata[13].':||:'.$ndata[14].':||:'.$ndata[15].':||:'.$ndata[16].':||:'.$ndata[17].':||:'.$ndata[18].':||:'.$ndata[19].':||:'.$ndata[20].':||:'.$ndata[21].':||:'.$ndata[22].':||:'.$ndata[23].':||:'.$ndata[24].':||:'.$ndata[25].':||:'.$ndata[26].':||:'.$ndata[27].':||:'.$ndata[28].':||:'.$ndata[29].':||:'.$ndata[30].':||:'.$ndata[31].':||:'.$ndata[32].':||:'.$ndata[33].':||:'.$ndata[34].':||:'.$ndata[35].':||:'.$ndata[36].':||:'.$ndata[37].':||:'.$ndata[38].':||:'.$ndata[39].':||:'.$ndata[40].':||:'.$ndata[41].':||:'.$ndata[42].':||:'.$ndata[43].':||:'.$ndata[44].':||:'.$ndata[45].':||:'.$ndata[46].':||:'.$ndata[47].':||:'.$ndata[48].':||:'.$ndata[49].':||:'.$ndata[50].':||:'.$ndata[51].':||:'.$ndata[52].':||:'.$ndata[53].':||:'.$ndata[54].':||:'.$ndata[55].':||:'.$ndata[56].':||:'.$ndata[57].':||:'.$ndata[58].':||:'.$ndata[59].':||:'.$ndata[60].':||:'.$ndata[61].':||:'.$ndata[62].':||:'.$ndata[63].':||:'.$ndata[64].':||:'.$ndata[65].':||:';
$fp = fopen('data/reg/'.$ndata[0].'.dat', 'a+');
flock($fp,LOCK_EX);
ftruncate($fp, 0);
fputs($fp, $update);
fflush($fp);
flock($fp,LOCK_UN);
fclose($fp);
privat($ndata[0],'Прочитайте наши <a href="/news.php?go=com&id='.$ncount.'">новости</a> от <font color="#666">'.date('d.m в H:i', time()).'</font>.');
}
closedir($dir);
echo '
Новость успешно добавлена.<br><br>
';
}
echo '
<form action="/admin.php?go=news" method="post">
Заголовок:<br><input name="title" style="width:99%;"/><br>
Сообщение:<br>
<textarea name="text" style="width:99%;" rows="2"></textarea><br>
<input type="submit" value="Опубликовать" name="submit"/>
</form><br>
';
$news = file('data/news.dat');
$cnews = count($news);
echo '
<a href="/admin.php?go=news&go2=clear">Удалить все новости</a> <font color="#666">('.$cnews.')</font>
';
break;
case 'clear':
echo '
<big><a href="/admin.php">Панель управления</a> » <a href="/admin.php?go=news">Новости</a> » Очистка новостей</big><br>- - -<br>
';
$text = '';
$fp = fopen('data/news.dat', 'w');
flock($fp, LOCK_EX);
fputs($fp, $text);
fflush($fp);
flock($fp, LOCK_UN);
fclose($fp);
echo '
Все новости успешно удалены!
';
break;
}
break;
case 'gorokr':
switch($_GET['go2']){
case 'new_t':
echo '
<big><a href="/admin.php">Панель управления</a> » <a href="/admin.php?go=dorokr">Города/Окрестности</a> » Новый город</big><br><br>
';
if(isset($_POST['submit'])){
$name = check::text($_POST['name']);
$price = check::num($_POST['price']);
$addtown = ''.$name.':||:'.$price.':||::||:';
$fp = fopen("data/town.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$addtownrn");
flock ($fp,LOCK_UN);
fclose($fp);
header('Location: /admin.php?go=gorokr');
}
echo '
<form action="/admin.php?go=gorokr&go2=new_t" method="post">
Название:<br><input name="name" style="width:99%"/><br>
Цена телепорта:<br><input name="price" style="width:99%"/><br>
<input type="submit" value="Создать" name="submit"/>
</form>
';
break;
default:
echo '
<big><a href="/admin.php">Панель управления</a> » Города/Окрестности</big><br><br>
';
echo '
<table width="100%" cellpadding="0">
<tr><td>Города</td><td>Окрестности</td></tr>
<tr><td><a href="/admin.php?go=gorokr&go2=new_t"><b>Создать</b></a></td><td><a href="/admin.php?go=gorokr&go2=newokr"><b>Создать</b></a></td></tr>
<tr><td valign="top">
';
$towns = file('data/town.dat');
$ctowns = count($towns);
echo '
<table cellpadding="0">
';
for($i = 0; $i
< $ctowns; $i++){
$tdata = explode(':||:', $towns[$i]);
echo '<tr><td><a href="/admin.php?go=gorokr&go2=go_t&id='.$i.'">'.$tdata[0].'</a></td><td>'.number_format($tdata[1]).'</td></tr>';
}
echo '
</table></td><td valign="top">
';
$okrs = file('data/okr.dat');
$cokrs = count($okrs);
echo '
<table cellpadding="0">
';
for($i = 0; $i
< $cokrs; $i++){
$odata = explode(':||:', $okrs[$i]);
echo '<tr><td><a href="/admin.php?go=gorokr&go2=go_o&id='.$i.'">'.$odata[1].'</a></td><td>'.number_format($odata[2]).'</td></tr>';
}
echo '
</table>
</td></tr></table>
';
break;
case 'go_t':
$id = check::num($_GET['id']);
$towns
= file('data/town.dat');
$tdata
= explode(':||:', $towns[$id]);
$ctowns
= count($towns);
if($id
!= 0){
if(empty($id) or $towns[$id] == '' or $id >= $ctowns){
echo '
Такого города не существует!
';
include('files/down.php'); exit;
}
}
if(isset($_POST['submit'])){
$file = 'data/town.dat';
$array = file($file);
$name = check::text($_POST['name']);
$price = check::num($_POST['price']);
if(empty($name)){
echo '
Название города осталось пустым.
';
include('files/down.php'); exit;
}
if($price != 0){
if(empty($price)){
echo '
Цена телепорта осталась пустым.
';
include('files/down.php'); exit;
}}
$tdata[0]
= $name;
$tdata[1]
= $price;
$input = ''.$tdata[0].':||:'.$tdata[1].':||::||:';
$array[$id]
= $input."n";
file_put_contents($file, $array);
echo 'Данные города успешно обновлены.<br><br>';
}
echo '
<form action="/admin.php?go=gorokr&go2=go_t&id='.$id.'" method="post">
Название:<br><input name="name" style="width:99%" value="'.$tdata[0].'"/><br>
Цена телепорта:<br><input name="price" style="width:99%" value="'.$tdata[1].'"/><br>
<input type="submit" value="Сохранить" name="submit"/>
</form><br>
';
break;
}
break;
case 'mds':
switch($_GET['go2']){
default:
echo '
<big><a href="/admin.php">Панель управления</a> » Мобы/Дроп/Спойл</big><br>- - -<br>
Выберите окрестности:<br><br>
<form action="/admin.php?go=mds&go2=go" method="post">
<select name="okr" style="width:99%;">
';
$okrs = file('data/okr.dat');
$cokrs = count($okrs);
for($i = 0; $i
< $cokrs; $i++){
$odata = explode(':||:', $okrs[$i]);
echo '<option value="'.$i.'">'.$odata[1].'</option>';
}
echo '
</select><br>
<input type="submit" value="Выбрать" name="submit"/>
</form>
';
break;
case 'go':
$okr = check::num($okr);
$okrs = file('data/okr.dat');
$osdata = explode(':||:', $okrs[$okr]);
if($okr != 0){
if($okrs[$okr]
== ''){
header('Location: /admin.php?go=mds'); exit;
}
}
echo 'Окрестноcти <b>'.$osdata[1].'</b><br>';
$mobs = file('data/mob.dat');
$cmobs = count($mobs);
for($i = 0; $i
< $cmobs; $i++){
$mob = explode(':||:', $mobs[$i]);
if($mob[2] == $okr){
echo '<br><a href="/admin.php?go=mds&go2=dm&id='.$i.'">[x]</a> <a href="/admin.php?go=mds&go2=em&okr='.$okr.'&id='.$i.'">'.$mob[0].'</a>';
$cm++;
}
}
if($cm == 0) echo '<br>Здесь мобов нет.';
echo '
<br><br>
<a href="/admin.php?go=mds&go2=nm&okr='.$okr.'">Создать</a>
';
break;
case 'dm':
$id = check::num($id);
$mobs = file('data/mob.dat');
if($id != 0){
if($mobs[$id]
== ''){
echo 'Такого моба нет!';
include('files/down.php'); exit;
}
}
$file = 'data/mob.dat';
$array = file($file);
$mdata = explode(':||:', $array[$id]);
$input = '';
$array[$id] = $input."n";
file_put_contents($file, $array);
echo 'Моб <b>'.$mdata[0].'</b> удален!<br><br>';
break;
case 'nm':
$okr = check::num($okr);
$okrs = file('data/okr.dat');
$osdata = explode(':||:', $okrs[$okr]);
if($okr != 0){
if($okrs[$okr]
== ''){
header('Location: /admin.php?go=mds'); exit;
}
}
echo 'Окрестноcти <b>'.$osdata[1].'</b><br><br>';
if(isset($_POST['submit'])){
$addmob = ''.$_POST['name'].':||:'.$_POST['agr'].':||:'.$okr.':||:'.$_POST['lvl'].':||:'.$_POST['hp'].':||:'.$_POST['hp'].':||:'.$_POST['mp'].':||:'.$_POST['mp'].':||:'.$_POST['pa'].':||:'.$_POST['ma'].':||:'.$_POST['pd'].':||:'.$_POST['md'].':||:'.$_POST['aden'].':||:'.$_POST['exp'].':||:'.$_POST['sp'].':||:'.time().':||::||:'.$_POST['res'].':||:';
$fp = fopen("data/mob.dat","a+");
flock ($fp,LOCK_EX);
fputs($fp,"$addmobrn");
flock ($fp,LOCK_UN);
fclose($fp);
echo 'Моб <b>'.$_POST['name'].'</b> добавлен!<br><br>';
}
echo '
<form action="/admin.php?go=mds&go2=nm&okr='.$okr.'" method="post">
<table width="100%" cellpadding="0">
<tr><td>Имя:</td><td><input name="name" style="width:99%"/></td></tr>
<tr><td>Уровень:</td><td><input name="lvl" style="width:99%"/></td></tr>
<tr><td>HP:</td><td><input name="hp" style="width:99%"/></td></tr>
<tr><td>MP:</td><td><input name="mp" style="width:99%"/></td></tr>
<tr><td>Физ.Атк.:</td><td><input name="pa" style="width:99%"/></td></tr>
<tr><td>Маг.Атк.:</td><td><input name="ma" style="width:99%"/></td></tr>
<tr><td>Физ.Защ.:</td><td><input name="pd" style="width:99%"/></td></tr>
<tr><td>Маг.Защ.:</td><td><input name="md" style="width:99%"/></td></tr>
<tr><td>Аден:</td><td><input name="aden" style="width:99%"/></td></tr>
<tr><td>EXP:</td><td><input name="exp" style="width:99%"/></td></tr>
<tr><td>SP:</td><td><input name="sp" style="width:99%"/></td></tr>
<tr><td>Респаун:</td><td><input name="res" style="width:99%"/></td></tr>
<input name="agr" type="hidden" value="0"/>
<tr><td>Агрессивый:</td><td><input name="agr" type="radio" value="1"/> ? <input name="agr" type="radio" value="0" checked="checked"/></td></tr>
</table>
<input type="submit" value="Создать" name="submit"/>
</form><br><br>
<a href="/admin.php?go=mds"><b>Мобы/Дроп/Спойл</b></a>
';
break;
}
break;
}
}else{
header('Location: /index.php');
}
include('files/down.php');
?>