<?php use Battles\Template; use Battles\User; require_once 'config.php'; $hostel = mysql_fetch_array(mysql_query('SELECT `id`, `uid`, `type`, `time` FROM `hostel` WHERE `uid` = "' . User::getInstance()->getId() . '" LIMIT 1')); $error = ''; $rs = ''; $base = [1 => ['type' => 'Сумка'], 2 => ['type' => 'Сундук'], 3 => ['type' => 'Комната'], 4 => ['type' => 'Амбар']]; $times = [1 => 7, 2 => 14, 3 => 21, 4 => 28]; $cost = [1 => [8, 16, 24, 32], 2 => [15, 30, 45, 60], 3 => [25, 50, 75, 100], 4 => [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 = [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) { header('Location: main.php'); } return $r; } if ($_GET['exit'] == 1) { if ($user['sleep'] == 0) { mysql_query('UPDATE `users`,`online` SET `users`.`room` = 26, `online`.`room` = 26 WHERE `users`.`id` = "' . User::getInstance()->getId() . '" AND `online`.`id` = "' . User::getInstance()->getId() . '"'); 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::getInstance()->getId() . '" AND `online`.`id` = "' . User::getInstance()->getId() . '"'); header('Location: hostel_room.php'); } else { $error = 'У Вас просрочена аренда. Оплатите что-бы продолжить пользоваться нашими услугами ...'; } } else { $error = 'У Вас, нету комнаты ...'; } } if ($_GET['pays'] && (int)$_GET['pays'] >= 1 && (int)$_GET['pays'] <= 4) { if (isset($hostel['id'])) { if (User::getInstance()->getMoney() >= $cost[$hostel['type']][(int)$_GET['pays']]) { $time = $hostel['time'] + 60 * 60 * 24 * $times[(int)$_GET['pays']]; User::getInstance()->setMoney(User::getInstance()->getMoney() -= $cost[$hostel['type']][(int)$_GET['pays']]); $hostel['time'] = $time; mysql_query('UPDATE `users` SET `money` = "' . User::getInstance()->getMoney() . '" WHERE `id` = "' . User::getInstance()->getId() . '" LIMIT 1'); mysql_query('UPDATE `hostel` SET `time` = "' . $time . '" WHERE `uid` = "' . User::getInstance()->getId() . '" 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::getInstance(), (int)$_POST['tariff']); } } if ($_GET['del'] == 1) { if (isset($hostel['id']) && $hostel['time'] > time()) { mysql_query('DELETE FROM `hostel` WHERE `uid` = "' . User::getInstance()->getId() . '" AND `id` = "' . $hostel['id'] . '" LIMIT 1'); remove_hostel_items(User::getInstance()->getId()); $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::getInstance()->getId() . '" AND `id` = "' . $hostel['id'] . '" LIMIT 1'); remove_hostel_items(User::getInstance()->getId()); select_arenda(User::getInstance(), (int)$_POST['retariff'], true); } elseif (isset($hostel['id']) && $hostel['time'] < time()) { $error = 'Нельзя сменить услугу если имеется задолежнность ...'; } } if ($_GET['sleep'] && $user['sleep'] == 0) { if ($user['sleep_time'] <= time()) { $sl = 2; mysql_query('UPDATE `users` SET `sleep` = "' . (time() + 60 * 60 * $sl) . '", `sleep_time` = "' . (time() + 60 * 60 * 8) . '" WHERE `id` = "' . User::getInstance()->getId() . '" LIMIT 1'); mysql_query('INSERT INTO `effects` (`type`, `name`, `time`, `owner`) VALUES ("8", "Сон", "' . (time() + 60 * 60 * $sl) . '", "' . User::getInstance()->getId() . '")'); $ef = mysql_query('SELECT `id`, `time`, `type` FROM `effects` WHERE `owner` = "' . User::getInstance()->getId() . '" 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::getInstance()->getId() . '"'); } 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::getInstance()->getId() . '" LIMIT 1'); mysql_query('DELETE FROM `effects` WHERE `owner` = "' . User::getInstance()->getId() . '" AND `type` = "8" LIMIT 1'); $ef = mysql_query('SELECT `id`, `time`, `sleep` FROM `effects` WHERE `owner` = "' . User::getInstance()->getId() . '" 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::getInstance()->getId() . '"'); } header('Location: hostel.php'); } Template::header('Хостел'); ?> <script src="js/ajaxLoad.js"></script> <? if (isset($hostel['id'])) { ?> <script> $(document).ready(function () { $("#retariff option[value='<?=$hostel['type']; ?>']").remove(); }); </script> <? } ?> <link rel="stylesheet" href="css/hostel.css"/> <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> <? if ($error != '') { echo '<br /><center><b style="color: Red;">' . $error . '</b></center><br />'; } ?> </fieldset> <? } ?> </div> <fieldset class="hostelRules" style="overflow: hidden;"> <legend>Правила проживания</legend> <div style="overflow: auto; height: 168px !important; margin: 0; padding: 0;"> <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>