battles/hostel.php

293 lines
15 KiB
PHP
Raw Normal View History

2018-01-28 16:40:49 +00:00
<?
session_start();
if(empty($_SESSION['uid'])) { header('Location: index.php'); exit; }
2018-01-28 16:40:49 +00:00
include('config.php');
$user = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `id` = "'.$_SESSION['uid'].'" LIMIT 1'));
$hostel = mysql_fetch_array(mysql_query('SELECT `id`, `uid`, `type`, `time` FROM `hostel` WHERE `uid` = "'.$user['id'].'" LIMIT 1'));
#include('functions.php');
2018-01-28 16:40:49 +00:00
$error = ''; $rs = '';
$base = array(1 => array('type' => 'Сумка'), 2 => array('type' => 'Сундук'), 3 => array('type' => 'Комната'), 4 => array('type' => 'Амбар'));
$times = array(1 => 7, 2 => 14, 3 => 21, 4 => 28);
$cost = array(1 => array(8, 16, 24, 32), 2 => array(15, 30, 45, 60), 3 => array(25, 50, 75, 100), 4 => array(40, 80, 120, 160));
function remove_hostel_items($u)
{
$itms = mysql_query('SELECT `id`, `owner` FROM `inventory` WHERE `owner` = "-101' . $u . '"');
while ($pl = mysql_fetch_array($itms)) {
mysql_query('UPDATE `inventory` SET `owner` = "' . $u . '" WHERE `id` = "' . $pl['id'] . '" AND `owner` = "-101' . $u . '"');
}
}
function select_arenda($u, $type, $redirect = false)
{
$hostel = mysql_fetch_array(mysql_query('SELECT `id` FROM `hostel` WHERE `uid` = "' . $u['id'] . '" LIMIT 1'));
$price = array(1 => 8, 2 => 15, 3 => 25, 4 => 40);
if (!isset($u['id'])) {
$r = 'Персонаж не найден ...';
} else {
if ($type > 0 && $type <= 4) {
if (isset($hostel['id'])) {
$r = 'Не более 1 арендованного места ...';
} else {
if ($u['money'] >= $price[$type]) {
$u['money'] -= $price[$type];
mysql_query('UPDATE `users` SET `money` = "' . $u['money'] . '" WHERE `id` = "' . $u['id'] . '" LIMIT 1');
mysql_query('INSERT INTO `hostel` (`uid`, `type`, `time`) VALUES ("' . $u['id'] . '", "' . $type . '", "' . (time() + 60 * 60 * 24 * 7) . '")');
$r = 'Поздравляем с успешной арендой ...';
} else {
$r = 'Недостаточно денег ...';
}
}
} else {
$r = 'Неверный тип аренды ...';
}
}
if ($redirect == true) {
header('Location: main.php');
}
return $r;
}
2018-01-28 16:40:49 +00:00
if($_GET['exit'] == 1) {
if($user['sleep'] == 0) {
mysql_query('UPDATE `users`,`online` SET `users`.`room` = 26, `online`.`room` = 26 WHERE `users`.`id` = "'.$user['id'].'" AND `online`.`id` = "'.$user['id'].'"');
header('Location: city.php');
} else {
$error = 'Вы спите ...';
}
}
if($_GET['to_room'] == 1) {
if(isset($hostel['id'])) {
if($hostel['time'] > time()) {
mysql_query('UPDATE `users`,`online` SET `users`.`room` = 661, `online`.`room` = 661 WHERE `users`.`id` = "'.$user['id'].'" AND `online`.`id` = "'.$user['id'].'"');
header('Location: hostel_room.php');
} else {
$error = 'У Вас просрочена аренда. Оплатите что-бы продолжить пользоваться нашими услугами ...';
}
} else {
$error = 'У Вас, нету комнаты ...';
}
}
if($_GET['pays']) {
if((int)$_GET['pays'] >= 1 && (int)$_GET['pays'] <= 4) {
if(isset($hostel['id'])) {
if($user['money'] >= $cost[$hostel['type']][(int)$_GET['pays']]) {
$time = $hostel['time']+60*60*24*$times[(int)$_GET['pays']];
$user['money'] -= $cost[$hostel['type']][(int)$_GET['pays']];
$hostel['time'] = $time;
mysql_query('UPDATE `users` SET `money` = "'.$user['money'].'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
mysql_query('UPDATE `hostel` SET `time` = "'.$time.'" WHERE `uid` = "'.$user['id'].'" AND `id` = "'.$hostel['id'].'" LIMIT 1');
$error = 'Всё прошло успешно ...';
} else {
$error = 'Недостаточно денег ...';
}
} else {
$error = 'Ошибка #1';
}
}
}
if(isset($_POST['select']) && isset($_POST['tariff'])) {
if($_POST['tariff'] == 0) {
$error = 'Выберите тариф ...';
} else {
$error = select_arenda($user, (int)$_POST['tariff']);
}
}
if($_GET['del'] == 1) {
if(isset($hostel['id']) && $hostel['time'] > time()) {
mysql_query('DELETE FROM `hostel` WHERE `uid` = "'.$user['id'].'" AND `id` = "'.$hostel['id'].'" LIMIT 1');
remove_hostel_items($user['id']);
$error = 'Вы успешно отказались от аренды ...';
unset($hostel);
} elseif(isset($hostel['id']) && $hostel['time'] < time()) {
$error = 'Нельзя отказаться от услуг если имеется задолежнность ...';
}
}
if(isset($_POST['deselect']) && isset($_POST['retariff'])) {
if(isset($hostel['id']) && $hostel['time'] > time()) {
mysql_query('DELETE FROM `hostel` WHERE `uid` = "'.$user['id'].'" AND `id` = "'.$hostel['id'].'" LIMIT 1');
remove_hostel_items($user['id']);
select_arenda($user, (int)$_POST['retariff'], true);
} elseif(isset($hostel['id']) && $hostel['time'] < time()) {
$error = 'Нельзя сменить услугу если имеется задолежнность ...';
}
}
if($_GET['sleep'] && $user['sleep'] == 0) {
if($user['sleep_time'] <= time()) {
if($user['vip'] == 1) { $sl = 8; } elseif($user['vip'] == 2) { $sl = 12; } elseif($user['vip'] == 3) { $sl = 18; } else { $sl = 2; }
mysql_query('UPDATE `users` SET `sleep` = "'.(time()+60*60*$sl).'", `sleep_time` = "'.(time()+60*60*8).'" WHERE `id` = "'.$user['id'].'" LIMIT 1');
mysql_query('INSERT INTO `effects` (`type`, `name`, `time`, `owner`) VALUES ("8", "Сон", "'.(time()+60*60*$sl).'", "'.$user['id'].'")');
$ef = mysql_query('SELECT `id`, `time`, `type` FROM `effects` WHERE `owner` = "'.$user['id'].'" AND `type` != 11 AND `type` != 12 AND `type` != 13 AND `type` != 14 AND `type` != 5 AND `type` != 4 AND `type` != 2 AND `type` != 3 AND `type` != 8');
while($pl = mysql_fetch_array($ef)) {
$tm = $pl['time']-time();
mysql_query('UPDATE `effects` SET `sleep` = "'.$tm.'" WHERE `id` = "'.$pl['id'].'" AND `owner` = "'.$user['id'].'"');
}
header('Location: hostel.php');
} else {
$error = 'Нельзя спать ... Приходите через : '.timeOut($user['sleep_time']-time());
}
}
if($_GET['unsleep'] && $user['sleep'] > 0) {
mysql_query('UPDATE `users` SET `sleep` = "0" WHERE `id` = "'.$user['id'].'" LIMIT 1');
mysql_query('DELETE FROM `effects` WHERE `owner` = "'.$user['id'].'" AND `type` = "8" LIMIT 1');
$ef = mysql_query('SELECT `id`, `time`, `sleep` FROM `effects` WHERE `owner` = "'.$user['id'].'" AND `sleep` != 0');
while($pl = mysql_fetch_array($ef)) {
$tm = time()+$pl['sleep'];
mysql_query('UPDATE `effects` SET `time` = "'.$tm.'", `sleep` = "0" WHERE `id` = "'.$pl['id'].'" AND `owner` = "'.$user['id'].'"');
}
header('Location: hostel.php');
}
?>
<!doctype html>
<html>
<head>
<title>404</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-language" content="ru" />
<script src="js/ajaxLoad.js"></script>
<? if(isset($hostel['id'])) { ?>
<script>
$(document).ready(function() {
$("#retariff option[value='<?=$hostel['type']; ?>']").remove();
});
</script>
<? } ?>
<link rel="stylesheet" type="text/css" href="css/hostel.css" />
</head>
<body>
<div class="contentContainer">
<div style="text-align: center;"><span class="hs">Гостиница, Холл</span></div>
<div class="buttonContainer">
<? if($user['sleep'] == 0) { ?>
<input type="button" class="btns button-route" value="Уснуть" onclick="location.href='?sleep=1';" />
<? } else { ?>
<input type="button" class="btns button-route" value="Пробудиться" onclick="location.href='?unsleep=1';" />
<? } ?>
<input type="button" class="btns" value="Обновить" onclick="location.href='main.php';" />
<input type="button" class="btns button-route" value="На улицу" onclick="location.href='?exit=1';" />
<input type="button" class="btns button-route" value="Комната" onclick="location.href='?to_room=1';" />
</div>
<div id="hostelLeft">
<div id="hostelInteractive">
<? if(!isset($hostel['id'])) { ?>
<fieldset class="hostelClientState">
<legend>Станьте нашим клиентом</legend>
<form method="post" style="text-align: center; width: 100%;">
<input type="hidden" name="act" value="settariff" />
<p>Выберите подходящий для Вас вариант обслуживания:</p>
<div style="text-align: center; width: 100%;">
<select name="tariff" class="tariff">
<option value="0">Выбор ...</option>
<option value="1">Сумка</option>
<option value="2">Сундук</option>
<option value="3">Комната</option>
<option value="4">Амбар</option>
</select>
<input type="submit" class="button" value="Выбрал" name="select" />
<? if($error != '') { echo '<br /><b style="color: Red;">'.$error.'</b><br />'; } ?>
</div>
</form>
</fieldset>
<? } else { ?>
<fieldset class="hostelClientState">
<legend>Добро пожаловать!</legend>
<form method="post" style="text-align: center; width: 100%;">
<p>Вы выбрали вариант предоставления жилья : <b><?=$base[$hostel['type']]['type']; ?></b></p>
<p>Аренда оплачена по: <? echo date('h:i d.m.y', $hostel['time']); ?> (<small><? echo timeOut($hostel['time']-time()); ?></small>)</p>
<div style="text-align: center; width: 100%;">
Сменить вариант аренды <select name="retariff" id="retariff">
<option value="0">Выбор ...</option>
<option value="1">Сумка</option>
<option value="2">Сундук</option>
<option value="3">Комната</option>
<option value="4">Амбар</option>
</select>
<input type="submit" class="button" value="Сменить" name="deselect" />
</div>
</form>
<a href="javascript: void(0);" style="float: left; margin-left: 3px;" onclick="if(confirm('Вы уверены?')) { location.href='?del=1'; }">Расторгнуть договор</a> <a href="javascript: void(0);" onclick="ajaxLoad('/hostel_checkpoint.php', 'hostelInteractive', {act:'pay'})" style="float: right; margin-right: 3px;">Внести предоплату</a>
2018-01-28 16:40:49 +00:00
<? if($error != '') { echo '<br /><center><b style="color: Red;">'.$error.'</b></center><br />'; } ?>
</fieldset>
<? } ?>
</div>
<fieldset class="hostelRules" style="overflow: hidden;">
<legend>Правила проживания</legend>
2019-01-16 17:45:30 +00:00
<div style="overflow: auto; height: 168px !important; margin: 0; padding: 0;">
2018-01-28 16:40:49 +00:00
<div style="margin: 0; padding: 0; height: 100%;">
<h2>И что я получу за свои кровные?</h2>
У нас ты можешь:
<br/>- хранить свое барахло и прочий хлам.
<h2>Охрана у вас есть? Не воруют?</h2>
Самые любопытные могут получить в сурло прямо здесь - в холле.
<br />- Устраивать беспорядки в комнатах не позволено.
<br />- Прислуга у нас проверенная - пожитки твои не тронут.
<h2>И сколько стоит всё это удовольствие?</h2>
- Комнаты есть разные, для людей разного достатка. Смотри справа расценки.
<br />- Платить нужно каждый день. Пока не заплатишь - на лестницу не ногой.
<br />- Вместимость - это сколько твоих вещей влезет в комнату, имеется ввиду общая масса инвентаря.
<h2>Как всем этим пользоваться?</h2>
Всё просто. Плати и живи.
<br />Приходишь, платишь по долгам, проходишь в аппартаменты. В сундуке есть секции для каждого вида вещей, фильтр поможет разобраться.
<h2>Что ещё мне нужно знать?</h2>
- При смене размера комнаты, ты теряешь оставшееся оплаченное время.
<br />- При просрочке платы более 60 суток, мы оставляем за собой право сдать вещи на аукцион для погашения задолжености.
<br />- Если долг будет разумный, то подарки забирать с полки не будем.
<br />- Быстро сориентироваться с шмотом поможет фильтр предметов.
<br />- Если что потеряешь - твои проблемы.
</div>
</div>
</fieldset>
</div>
<div id="hostelRight">
<fieldset>
<legend>Тарифы и услуги</legend>
<br />
<table class="tarifsList" cellpadding="0" cellspacing="0">
<caption>Сумка</caption>
<tbody>
<tr><td class="tarifListLabel">Вместимость</td><td class="tarifListValue">15 ед.</td></tr>
<tr><td class="tarifListLabel">Стоимость (7 сут.)</td><td class="tarifListValue">8.00 кр.</td></tr>
</tbody>
</table>
<br />
<table class="tarifsList" cellpadding="0" cellspacing="0">
<caption>Сундук</caption>
<tbody>
<tr><td class="tarifListLabel">Вместимость</td><td class="tarifListValue">30 ед.</td></tr>
<tr><td class="tarifListLabel">Стоимость (7 сут.)</td><td class="tarifListValue">15.00 кр.</td></tr>
</tbody>
</table>
<br />
<table class="tarifsList" cellpadding="0" cellspacing="0">
<caption>Комната</caption>
<tbody>
<tr><td class="tarifListLabel">Вместимость</td><td class="tarifListValue">50 ед.</td></tr>
<tr><td class="tarifListLabel">Стоимость (7 сут.)</td><td class="tarifListValue">25.00 кр.</td></tr>
</tbody>
</table>
<br />
<table class="tarifsList" cellpadding="0" cellspacing="0">
<caption>Амбар</caption>
<tbody>
<tr><td class="tarifListLabel">Вместимость</td><td class="tarifListValue">100 ед.</td></tr>
<tr><td class="tarifListLabel">Стоимость (7 сут.)</td><td class="tarifListValue">40.00 кр.</td></tr>
</tbody>
</table>
</fieldset>
</div>
</div>
</body>
</html>