Файл: users/umenija.php
Строк: 368
<?
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>
<span class="inbl w23 va_t">
<a class="atask" href="?act=razdel&type=3">
<span class="inbl prel">
<img src="/style/icons/9.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'] > 3) header('location: ?');
echo'<div class="title">';
echo'Очки умений: '.$user['ochki_umenij'].'';
echo'</div>';
if($user['access'] >= 3) // Открываем для админов
{
echo'<div class="menu_link3">';
if(!isset($_GET['form'])) echo'<a href="?act=razdel&type='.(int)$_GET['type'].'&form">Добавить умение </a>';
else
echo'<a href="?act=razdel&type='.$_GET['type'].'">Закрыть форму </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 /><textarea name="content"></textarea><br />';
echo''.type_umen_dejstv((int)$_GET['type'], false, 1).':<br /><input type="text" name="uron"/><br/>';
echo'Время восстановления:<br /><input type="text" name="time"/><br/>';
echo'Использует маны:<br /><input type="text" name="mana"/><br/>';
echo'<br /><strong>Необходимые характеристики:</strong><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 />';
echo'Изображение:<br /><input type="file" name="img" /><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 `umenija` 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 `umenija` WHERE `type` = '".(int)$_GET['type']."' ORDER BY `id` DESC LIMIT ".$start.",".($num)."");
echo'<div class="content">';
if (mysql_affected_rows() == 0 || !$_GET['type'] || $_GET['type'] > 3)
{
echo 'Нет данных для отображения!<br/>';
}
else
{
while($arr = mysql_fetch_array($print))
{
if($_GET['edit'] == $arr['id']) echo'<div class="title">Редактирование <a href="?act='.$_GET['act'].'&type='.$_GET['type'].'">[<font color="red">Х</font>]</a></div>';
// Ищем изображение
if (is_file($_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$arr['id'].'.'.$arr['img'].''))
$img = '<img class="img_umen'.check_umen_us($arr['id']).'" src="/file/umenija/'.$arr['id'].'.'.$arr['img'].'" width="50" height="50"/>';
echo'
<center>
<div class="title">
<strong>'.$arr['name'].'</strong>
</div>
'.$img.'
</center> <br />
<strong>Тип:</strong> '.type_umen($arr['type']).' <br />
<strong>Действие: </strong>'.type_umen_dejstv($arr['type'], $arr['uron']).' <br />
<strong>Время восстановления:</strong> '.$arr['time'].' сек <br />
<strong>Использует маны:</strong> '.$arr['mana'].' ед. <br />
<strong>Описание:</strong> <br /> <small>'.$arr['content'].'</small> <br />
<br /><u><strong>Необходимые характеристики:</strong></u><br />
<strong>Сила:</strong> '.($arr['sila'] > $user['sila'] ? '<font color="red">'.$arr['sila'].' ед.</font>' : $arr['sila'].' ед.').' <br />
<strong>Магия:</strong> '.($arr['magic'] > $user['magic'] ? '<font color="red">'.$arr['magic'].' ед.</font>' : $arr['magic'].' ед.').'<br />
<strong>Ловкость:</strong> '.($arr['lovk'] > $user['lovk'] ? '<font color="red">'.$arr['lovk'].' ед.</font>' : $arr['lovk'].' ед.').'<br />
<strong>Защита:</strong> '.($arr['zashit'] > $user['zashit'] ? '<font color="red">'.$arr['zashit'].' ед.</font>' : $arr['zashit'].' ед.').'<br />
';
// Отображаем возможно ли открыть открытие или открыто
echo'<div class="menu_link3"> ';
if(check_umen_us($arr['id']) == 1)
{
echo'<img src="/images/galochka.png" width="16" height="16" alt="*"> ';
echo'<strong style="color: #00FD00;">Открыто</strong>';
}
else
if(check_umen_us($arr['id']) == 2)
{
if($user['ochki_umenij'])
{
echo'<img src="/images/o4ki.png" width="" height="" alt="*">';
echo' <a style="color: #00FD00;" href="?act=open&id='.$arr['id'].'">Открыть умение</a>';
}
else
echo'Не хватает очков умений!';
}
else
{
echo'Не доступно!';
}
echo'</div>';
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 `umenija` WHERE `id`='".(int)$_GET['id']."' LIMIT 1"));
if($arr['img'])
{
mysql_query("CREATE TEMPORARY TABLE `temp_umenija` AS SELECT * FROM `umenija` WHERE `id`='".(int)$_GET['id']."'");
mysql_query ('UPDATE `temp_umenija` SET `id`=NULL');
mysql_query("INSERT INTO `umenija` SELECT * FROM `temp_umenija`");
$file = $_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.(int)$_GET['id'].'.'.$arr['img'];
$newfile = $_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.mysql_insert_id().'.'.$arr['img'];
copy($file, $newfile);
mysql_query("DROP TEMPORARY TABLE `temp_umenija`");
}
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'])));
$uron = (int)abs($_POST['uron']);
$time = (int)abs($_POST['time']);
$sila = (int)abs($_POST['sila']);
$magic = (int)abs($_POST['magic']);
$mana = (int)abs($_POST['mana']);
$lovk = (int)abs($_POST['lovk']);
$zashit = (int)abs($_POST['zashit']);
if($_POST['type'] > 0 && $_POST['type'] <= 3 )$type = (int)$_POST['type']; else unset($type);
/// Обработываем файлик
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 || !$uron || !$time || !$sila || !$magic || !$mana || !$lovk || !$zashit || !$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 `umenija` 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 `umenija` SET
`name` = '".$name."',
`content` = '".$content."',
`uron` = '".$uron."',
`time` = '".$time."',
`sila` = '".$sila."',
`magic` = '".$magic."',
`mana` = '".$mana."',
`lovk` = '".$lovk."',
`zashit` = '".$zashit."',
`type` = '".$type."',
`img` = '".$format."'
");
$id = mysql_insert_id();
$uploadfile = $_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$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 `umenija` 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'<textarea name="content">'.$arr['content'].'</textarea><br />';
echo''.type_umen_dejstv((int)$_GET['type']).':<br /><input type="text" name="uron" value="'.$arr['uron'].'"/><br/>';
echo'Время восстановления (сек):<br /><input type="text" name="time" value="'.$arr['time'].'"/><br/>';
echo'Испрльзует маны:<br /><input type="text" name="mana" value="'.$arr['mana'].'"/><br/>';
echo'<br /><strong>Необходимые характеристики:</strong><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 />';
echo'Изображение:<br /><input type="file" name="img" /><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'])));
$uron = (int)abs($_POST['uron']);
$time = (int)abs($_POST['time']);
$sila = (int)abs($_POST['sila']);
$magic = (int)abs($_POST['magic']);
$mana = (int)abs($_POST['mana']);
$lovk = (int)abs($_POST['lovk']);
$zashit = (int)abs($_POST['zashit']);
$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 || !$uron || !$time || !$sila || !$magic || !$mana || !$lovk || !$zashit) $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 `umenija` 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 `umenija` SET
`name` = '".$name."',
`content` = '".$content."',
`uron` = '".$uron."',
`time` = '".$time."',
`sila` = '".$sila."',
`magic` = '".$magic."',
`mana` = '".$mana."',
`lovk` = '".$lovk."',
".$up_img."
`zashit` = '".$zashit."'
WHERE `id` = '".$edit."'
");
if($_FILES['img']['size'])
{
///удаляем существующий файл
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$edit.'.'.$arr['img'].'');
$uploadfile = $_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$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 `umenija_us` WHERE `um` = '".(int)$del."'");
///удаляем существующий файл
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$del.'.gif');
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$del.'.png');
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$del.'.jpg');
@unlink($_SERVER['DOCUMENT_ROOT'].'/file/umenija/'.$del.'.jpeg');
mysql_query ("DELETE FROM `umenija` WHERE `id` = '".(int)$del."' LIMIT 1");
header ("Location: ".$_SERVER['HTTP_REFERER']);
break;
/// Открытие умения
case 'open':
if(check_umen_us($_GET['id']) == 2 &&
!mysql_result(mysql_query("SELECT COUNT(*) FROM `umenija_us` WHERE `us`='".(int)$user['id']."' AND `um`='".(int)$_GET['id']."'"),0) &&
$user['ochki_umenij'])
{
mysql_query("INSERT INTO `umenija_us` SET `us`='".(int)$user['id']."', `um`='".(int)$_GET['id']."'");
mysql_query ('UPDATE `user` SET `ochki_umenij`=`ochki_umenij`-1 WHERE `id`="'.(int)$user['id'].'" ');
}
header('location: '.$_SERVER['HTTP_REFERER']);
break;
} // switch
require_once H.'/core/foot.php';
?>