Файл: adm/add_bots.php
Строк: 395
<?
require_once '../core/system.php';
echo only_reg();
$header = 'Боты';
$header_link = '?';
require_once H.'/core/head.php';
switch($act)
{
default:
?>
<div class="center-bottom-razdel"></div>
<div class="nfl p5 mb5 mt5 mlra">
<div class="cntr mt5 mb5">
<div class="mt5">
<span class="inbl w23 va_t">
<a class="atask" href="?act=razdel&type=1">
<span class="inbl prel">
<div class="img_grays"><img src="/style/icons/11.png" alt=""/></div>
</span>
<br/>
<span class="small mt3"><strong>Инфо-Боты</strong> <br />
<small>Боты этого типа используются для вывода какой то информации играку.</small></span>
</a>
</span>
<span class="inbl w23 va_t">
<a class="atask" href="?act=razdel&type=2">
<span class="inbl prel">
<img src="/style/icons/1.png" alt=""/>
</span>
<br/>
<span class="small mt3"><strong>Боевые</strong> <br />
<small>Используются для состязаний с играками.</small></span>
</a>
</span>
</div>
</div>
</div>
<?
break;
case 'razdel':
if($_GET['type'] < 1 || $_GET['type'] > 2) header('location: ?');
if($user['access'] >= 3) // Открываем для админов
{
echo'<div class="nav">';
echo''.(isset($_GET['form']) ? '<a href="?act=razdel&type='.(int)$_GET['type'].'">Скрыть форму</a>' : '<a href="?act=razdel&type='.(int)$_GET['type'].'&form">Добавить бота</a>').'';
echo'</div>';
/// Форма добавления умений
if(isset($_GET['form']))
{
echo '<form action="?act=add" class="menu_link2" method="post" enctype="multipart/form-data">';
echo'Название:<br /><input type="text" name="name"/><br/>';
echo'Изображение:<br /><input type="file" name="img" /><br />';
echo'Сообщение играку от бота:<br /><textarea name="content"></textarea><br />';
echo'<br />';
echo'<strong><u>Характеристики:</u></strong><br />';
echo'Ед. жизней:<br /><input type="text" name="max_life"/><br/>';
echo'Сила:<br /><input type="text" name="sila"/><br/>';
echo'Магия:<br /><input type="text" name="magic"/><br/>';
echo'Ловкость:<br /><input type="text" name="lovk"/><br/>';
echo'Защита:<br /><input type="text" name="zashit"/><br/>';
echo'<input type="hidden" name="type" value="'.$_GET['type'].'"/>';
echo'<br />';
if($_GET['type'] == 2)
{
echo'<strong><u>Бонус:</u></strong><br />';
echo'Баллы за победу:<br /><input type="text" name="add_ball_win"/><br/>';
echo'Баллы при поражении:<br /><input type="text" name="add_ball_def"/><br/>';
echo'<br />';
}
echo'<strong><u>Шпотки:</u></strong><br />';
echo'Шлем:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='1'");
echo'<select name="hmot_1">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (защита '.$arr['zashit'].')</option>';
}
echo'</select> <br />';
echo'Наплечники:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='4'");
echo'<select name="hmot_2">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (защита '.$arr['zashit'].')</option>';
}
echo'</select> <br />';
echo'Корпус:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='2'");
echo'<select name="hmot_3">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (защита '.$arr['zashit'].')</option>';
}
echo'</select> <br />';
echo'Штаны:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='5'");
echo'<select name="hmot_4">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (защита '.$arr['zashit'].')</option>';
}
echo'</select> <br />';
echo'Овувь:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='3'");
echo'<select name="hmot_5">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (защита '.$arr['zashit'].')</option>';
}
echo'</select> <br />';
echo'<br />';
echo'<strong><u>Оружие:</u></strong><br />';
echo'Левая рука:<br />';
$print = mysql_query("select * from `oruzhie`");
echo'<select name="oruzh_l">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (урон '.$arr['uron'].')</option>';
}
echo'</select> <br />';
echo'Правая рука:<br />';
$print = mysql_query("select * from `oruzhie`");
echo'<select name="oruzh_r">';
while($arr = mysql_fetch_array($print)) {
echo'<option value="'.$arr['id'].'"> '.$arr['name'].' (урон '.$arr['uron'].')</option>';
}
echo'</select> <br />';
echo'<br />';
echo '<input type="submit" name="submit" value="Добавить"/>';
echo'</form><hr />';
}
}
if(empty($_GET['page'])) $page = 0;
else
$page = (int)$_GET['page'];
$num = 12;
$posts = mysql_result(mysql_query("SELECT COUNT(*) FROM `bots` WHERE `type` = '".(int)$_GET['type']."'"), 0);
$total = intval(($posts - 1) / $num) + 1;
if(empty($page) OR $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;
$print = mysql_query("SELECT * FROM `bots` WHERE `type` = '".(int)$_GET['type']."' ORDER BY `id` DESC LIMIT ".$start.",".($num)."");
echo'<div class="content">';
if (mysql_affected_rows() == 0)
{
echo 'Нет данных для отображения!<br/>';
}
else
{
while($arr = mysql_fetch_array($print))
{
echo'
<center>
<div class="title">
<strong>'.$arr['name'].'</strong>
</div>
<table align="center">
<tr>
<td></td>
<td>
'.show_dospehi_bot($arr['hmot_1']).'
</td>
<td>
'.show_dospehi_bot($arr['hmot_2']).'
</td>
<td></td>
</tr>
<tr>
<td>
'.show_oruzhie_bot($arr['oruzh_l']).'
</td>
<td colspan="2" rowspan="2" align="center">
<img width="90" src="/file/bots/'.$arr['id'].'.'.$arr['img'].'">
<br />
'.show_dospehi_bot($arr['hmot_3']).'
</td>
<td>
'.show_oruzhie_bot($arr['oruzh_r']).'
</td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>
'.show_dospehi_bot($arr['hmot_4']).'
</td>
<td>
'.show_dospehi_bot($arr['hmot_5']).'
</td>
<td></td>
</tr>
</table>
</center>
<br />
<strong>Тип:</strong> '.type_bot($arr['type']).' <br />
'.($arr['content'] ? '<strong>Сообщение:</strong> <br /> <small>'.$arr['content'].'</small> <br />' : '').'
<br /><u><strong>Бонусы:</strong></u><br />
<strong>Eд. ловкости за победу: '.$arr['add_ball_win'].'</strong> <br />
<strong>Eд. ловкости при поражении: '.$arr['add_ball_def'].'</strong> <br />
<br /><u><strong>Характеристики:</strong></u><br />
<strong>Сила:</strong> '.$arr['sila'].' ед. <br />
<strong>Магия:</strong> '.$arr['magic'].' ед.<br />
<strong>Ловкость:</strong> '.$arr['lovk'].' ед.<br />
<strong>Защита:</strong> '.$arr['zashit'].' ед.<br />
';
if($user['access'] >= 3) // Открываем для админов
{
echo'<div class="nav">';
echo'[<a href="?act=edit&edit='.$arr['id'].'&type='.$_GET['type'].'">edit</a>]';
echo'[<a href="?act=copy&id='.$arr['id'].'&type='.$_GET['type'].'">copy</a>]';
echo'[<a href="?act=del&del='.$arr['id'].'&type='.$_GET['type'].'">del</a>]';
echo'</div>';
}
}
page_nav($page,$total,$cssClass="nav",$dopLink='act=razdel&type='.(int)$_GET['type'].'&');
}
echo'</div>';
break;
// Дублируем
case 'copy':
$arr=mysql_fetch_array(mysql_query("SELECT `img` FROM `bots` WHERE `id`='".(int)$_GET['id']."' LIMIT 1"));
if($arr['img'])
{
mysql_query("CREATE TEMPORARY TABLE `temp_bots` AS SELECT * FROM `bots` WHERE `id`='".(int)$_GET['id']."'");
mysql_query ('UPDATE `temp_bots` SET `id`=NULL');
mysql_query("INSERT INTO `bots` SELECT * FROM `temp_bots`");
$file = $_SERVER['DOCUMENT_ROOT'].'/file/bots/'.(int)$_GET['id'].'.'.$arr['img'];
$newfile = $_SERVER['DOCUMENT_ROOT'].'/file/bots/'.mysql_insert_id().'.'.$arr['img'];
copy($file, $newfile);
mysql_query("DROP TEMPORARY TABLE `temp_bots`");
}
header('location: '.$_SERVER['HTTP_REFERER']);
break;
// Создаем новое умение
case 'add':
if($user['access'] < 3) {
header('Location: /index.php');
$_SESSION['err'] = 'Доступ закрыт!';
}
//Обрабатываем данные перед отправкой на сервак
$name = trim(mysql_real_escape_string(htmlspecialchars($_POST['name'])));
$content = trim(mysql_real_escape_string(htmlspecialchars($_POST['content'])));
$max_life = (int)abs($_POST['max_life']);
$sila = (int)abs($_POST['sila']);
$magic = (int)abs($_POST['magic']);
$lovk = (int)abs($_POST['lovk']);
$zashit = (int)abs($_POST['zashit']);
$add_ball_win = (int)abs($_POST['add_ball_win']);
$add_ball_def = (int)abs($_POST['add_ball_def']);
if($_POST['type'] > 0 && $_POST['type'] <= 2 )$type = (int)$_POST['type']; else unset($type);
$hmot_1 = (int)abs($_POST['hmot_1']);
$hmot_2 = (int)abs($_POST['hmot_2']);
$hmot_3 = (int)abs($_POST['hmot_3']);
$hmot_4 = (int)abs($_POST['hmot_4']);
$hmot_5 = (int)abs($_POST['hmot_5']);
$oruzh_l = (int)abs($_POST['oruzh_l']);
$oruzh_r = (int)abs($_POST['oruzh_r']);
/// Обработываем файлик
if ($_FILES['img']['name'])
{
if($_FILES['img']['type'] == 'image/gif') $format = 'gif';
else
if($_FILES['img']['type'] == 'image/png') $format = 'png';
else
if($_FILES['img']['type'] == 'image/jpg') $format = 'jpg';
else
if($_FILES['img']['type'] == 'image/jpeg') $format = 'jpeg';
else
$format = NULL;
}
// Формируем ошибки
if(!$name ||
!$content ||
!$max_life ||
!$sila ||
!$magic ||
!$lovk ||
!$zashit ||
!$hmot_1 ||
!$hmot_2 ||
!$hmot_3 ||
!$hmot_4 ||
!$hmot_5 ||
!$oruzh_l ||
!$oruzh_r ||
!$type) $error = 'Все поля обязательны для заполнения!';
if($_FILES['img']['size'] && !$format) $error = 'Неверный формат файла! <br /> Допускается jpg, gif, png!';
if($_FILES['img']['size'] && $_FILES['img']['size'] > 51200) $error = 'Неверный размер файла! <br /> Допускается до 50 кб!';
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `bots` WHERE `name`='".$name."'"),0)) $error = 'Умение с таким названием уже существует в базе!';
/// И выполняем дейстрия с данными
if($error)
{
echo'<font color="red"><b>'.$error.'</b></font><br />';
echo'<a href="javascript:history.back()" onMouseOver="window.status="Назад";return true"><strong>Назад</strong></a> <br />';
} else {
mysql_query("INSERT INTO `bots` SET
`name` = '".$name."',
`content` = '".$content."',
`max_life` = '".$max_life."',
`sila` = '".$sila."',
`magic` = '".$magic."',
`lovk` = '".$lovk."',
`zashit` = '".$zashit."',
`type` = '".$type."',
`add_ball_win` = '".$add_ball_win."',
`add_ball_def` = '".$add_ball_def."',
`hmot_1` = '".$hmot_1."',
`hmot_2` = '".$hmot_2."',
`hmot_3` = '".$hmot_3."',
`hmot_4` = '".$hmot_4."',
`hmot_5` = '".$hmot_5."',
`oruzh_l` = '".$oruzh_l."',
`oruzh_r` = '".$oruzh_r."',
`img` = '".$format."'
");
$id = mysql_insert_id();
$uploadfile = $_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$id.'.'.$format;
move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile);
header ("Location: ?act=razdel&type=$type");
}
break;
/// Редактирование
case 'edit':
if($user['access'] < 3) {
header('Location: /index.php');
$_SESSION['err'] = 'Доступ закрыт!';
}
$arr=mysql_fetch_array(mysql_query("Select * from `bots` WHERE id='".(int)$_GET['edit']."' AND `type`='".(int)$_GET['type']."'"));
if($_GET['type'] < 1 || $_GET['type'] > 3 || !$arr['id']) header('location: ?');
if(!$_POST['submit'])
{
echo '<form action="?act=edit&edit='.$_GET['edit'].'&type='.$_GET['type'].'" method="post" enctype="multipart/form-data">';
echo'Название:<br /><input type="text" name="name" value="'.$arr['name'].'"/><br/>';
echo'Изображение:<br /><input type="file" name="img" /><br />';
echo'Сообщение играку от бота:<br /><textarea name="content">'.$arr['content'].'</textarea><br />';
echo'<br />';
echo'<strong><u>Характеристики:</u></strong><br />';
echo'Ед. жизней:<br /><input type="text" name="max_life" value="'.$arr['max_life'].'"/><br/>';
echo'Сила:<br /><input type="text" name="sila" value="'.$arr['sila'].'"/><br/>';
echo'Магия:<br /><input type="text" name="magic" value="'.$arr['magic'].'"/><br/>';
echo'Ловкость:<br /><input type="text" name="lovk" value="'.$arr['lovk'].'"/><br/>';
echo'Защита:<br /><input type="text" name="zashit" value="'.$arr['zashit'].'"/><br/>';
echo'<br />';
if($_GET['type'] == 2)
{
echo'<strong><u>Бонусы:</u></strong><br />';
echo'За победу:<br /><input type="text" name="add_ball_win" value="'.$arr['add_ball_win'].'"/><br/>';
echo'При поражении:<br /><input type="text" name="add_ball_def" value="'.$arr['add_ball_def'].'"/><br/>';
echo'<br />';
}
echo'<strong><u>Шпотки:</u></strong><br />';
echo'Шлем:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='1'");
echo'<select name="hmot_1">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['hmot_1'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (защита '.$arr2['zashit'].')</option>';
}
echo'</select> <br />';
echo'Наплечники:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='4'");
echo'<select name="hmot_2">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['hmot_2'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (защита '.$arr2['zashit'].')</option>';
}
echo'</select> <br />';
echo'Корпус:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='2'");
echo'<select name="hmot_3">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['hmot_3'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (защита '.$arr2['zashit'].')</option>';
}
echo'</select> <br />';
echo'Штаны:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='5'");
echo'<select name="hmot_4">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['hmot_4'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (защита '.$arr2['zashit'].')</option>';
}
echo'</select> <br />';
echo'Овувь:<br />';
$print = mysql_query("select * from `dospehi` WHERE `type`='3'");
echo'<select name="hmot_5">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['hmot_5'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (защита '.$arr2['zashit'].')</option>';
}
echo'</select> <br />';
echo'<br />';
echo'<strong><u>Оружие:</u></strong><br />';
echo'Левая рука:<br />';
$print = mysql_query("select * from `oruzhie`");
echo'<select name="oruzh_l">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['oruzh_l'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (урон '.$arr2['uron'].')</option>';
}
echo'</select> <br />';
echo'Правая рука:<br />';
$print = mysql_query("select * from `oruzhie`");
echo'<select name="oruzh_r">';
while($arr2 = mysql_fetch_array($print)) {
echo'<option '.($arr['oruzh_r'] == $arr2['id'] ? 'selected="selected"' : '').' value="'.$arr2['id'].'"> '.$arr2['name'].' (урон '.$arr2['uron'].')</option>';
}
echo'</select> <br />';
echo '<input type="submit" name="submit" value="Сохранить" class="submit white"/>';
echo'</form>';
}
else
{
//Обрабатываем данные перед отправкой на сервак
$name = trim(mysql_real_escape_string(htmlspecialchars($_POST['name'])));
$content = trim(mysql_real_escape_string(htmlspecialchars($_POST['content'])));
$max_life = (int)abs($_POST['max_life']);
$sila = (int)abs($_POST['sila']);
$magic = (int)abs($_POST['magic']);
$lovk = (int)abs($_POST['lovk']);
$zashit = (int)abs($_POST['zashit']);
$add_ball_win = (int)abs($_POST['add_ball_win']);
$add_ball_def = (int)abs($_POST['add_ball_def']);
if($_GET['type'] > 0 && $_GET['type'] <= 2 )$type = (int)$_GET['type']; else unset($type);
$hmot_1 = (int)abs($_POST['hmot_1']);
$hmot_2 = (int)abs($_POST['hmot_2']);
$hmot_3 = (int)abs($_POST['hmot_3']);
$hmot_4 = (int)abs($_POST['hmot_4']);
$hmot_5 = (int)abs($_POST['hmot_5']);
$oruzh_l = (int)abs($_POST['oruzh_l']);
$oruzh_r = (int)abs($_POST['oruzh_r']);
$edit = (int)$_GET['edit'];
/// Обработываем файлик
if ($_FILES['img']['name'])
{
if($_FILES['img']['type'] == 'image/gif') $format = 'gif';
else
if($_FILES['img']['type'] == 'image/png') $format = 'png';
else
if($_FILES['img']['type'] == 'image/jpg') $format = 'jpg';
else
if($_FILES['img']['type'] == 'image/jpeg') $format = 'jpeg';
else
$format = NULL;
if($format) $up_img = "`img` = '".$format."', ";
}
// Формируем ошибки
if(!$name ||
!$content ||
!$max_life ||
!$sila ||
!$magic ||
!$lovk ||
!$zashit ||
!$hmot_1 ||
!$hmot_2 ||
!$hmot_3 ||
!$hmot_4 ||
!$hmot_5 ||
!$oruzh_l ||
!$oruzh_r ||
!$type) $error = 'Все поля обязательны для заполнения!';
if($_FILES['img']['size'] && !$format) $error = 'Неверный формат файла! <br /> Допускается jpg, gif, png!';
if($_FILES['img']['size'] && $_FILES['img']['size'] > 51200) $error = 'Неверный размер файла! <br /> Допускается до 50 кб!';
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `bots` WHERE `name`='".$name."' AND `id` != '".$edit."'"),0)) $error = 'Бот с таким названием уже существует в базе!';
/// И выполняем дейстрия с данными
if($error)
{
echo'<font color="red"><b>'.$error.'</b></font><br />';
echo'<a href="javascript:history.back()" onMouseOver="window.status="Назад";return true"><strong>Назад</strong></a> <br />';
} else {
mysql_query("UPDATE `bots` SET
`name` = '".$name."',
`content` = '".$content."',
`max_life` = '".$max_life."',
`sila` = '".$sila."',
`magic` = '".$magic."',
`lovk` = '".$lovk."',
`zashit` = '".$zashit."',
`add_ball_def` = '".$add_ball_def."',
`add_ball_win` = '".$add_ball_win."',
`type` = '".$type."',
`hmot_1` = '".$hmot_1."',
`hmot_2` = '".$hmot_2."',
`hmot_3` = '".$hmot_3."',
`hmot_4` = '".$hmot_4."',
`hmot_5` = '".$hmot_5."',
".$up_img."
`oruzh_l` = '".$oruzh_l."',
`oruzh_r` = '".$oruzh_r."'
WHERE `id` = '".$edit."'
");
if($_FILES['img']['size'])
{
///удаляем существующий файл
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$edit.'.'.$arr['img'].'');
$uploadfile = $_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$edit.'.'.$format;
move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile);
}
header ("Location: ?act=razdel&type=".$_GET['type']."");
}
}
break;
/// Удаляем
case 'del':
if($user['access'] < 3) {
header('Location: /index.php');
$_SESSION['err'] = 'Доступ закрыт!';
}
$del = (int)$_GET['del'];
// Удаляем у всех пользоватей
mysql_query ("DELETE FROM `bots_us` WHERE `um` = '".(int)$del."'");
///удаляем существующий файл
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$del.'.gif');
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$del.'.png');
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$del.'.jpg');
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/bots/'.$del.'.jpeg');
mysql_query ("DELETE FROM `bots` WHERE `id` = '".(int)$del."' LIMIT 1");
header ("Location: ".$_SERVER['HTTP_REFERER']);
break;
} // switch
require_once H.'/core/foot.php';
?>