219 lines
6.4 KiB
PHP
219 lines
6.4 KiB
PHP
<?php
|
||
|
||
use Battles\Bank;
|
||
use Battles\Item;
|
||
use Battles\ShopItem;
|
||
use Battles\Template;
|
||
|
||
ob_start();
|
||
session_start();
|
||
require_once 'functions.php';
|
||
$saleItems = false;
|
||
$shopCategoryType = $_POST['sale'] ?? '';
|
||
$shopCategoryTypeNumber = $_GET['otdel'] ?? 0;
|
||
$status = null;
|
||
|
||
if (!empty($_POST['sellshop'])) {
|
||
$status = ShopItem::sellItem($_POST['itemId'], $user, 1);
|
||
}
|
||
|
||
if (!empty($_POST['buyshop'])) {
|
||
$status = ShopItem::buyItem($_POST['itemId'], $user);
|
||
}
|
||
|
||
$bank = new Bank($user->getId());
|
||
|
||
switch ($shopCategoryTypeNumber) {
|
||
default:
|
||
$shopCategoryType = "Все товары";
|
||
break;
|
||
case Item::ITEM_TYPE_HELMET:
|
||
$shopCategoryType = "Шлемы";
|
||
break;
|
||
case Item::ITEM_TYPE_ARMOR:
|
||
$shopCategoryType = "Броня";
|
||
break;
|
||
case Item::ITEM_TYPE_LEGS:
|
||
$shopCategoryType = "Поножи";
|
||
break;
|
||
case Item::ITEM_TYPE_BOOTS:
|
||
$shopCategoryType = "Сапоги";
|
||
break;
|
||
case Item::ITEM_TYPE_GLOVES:
|
||
$shopCategoryType = "Перчатки";
|
||
break;
|
||
case Item::ITEM_TYPE_WEAPON:
|
||
$shopCategoryType = "Оружие";
|
||
break;
|
||
case Item::ITEM_TYPE_SHIELD:
|
||
$shopCategoryType = "Щиты";
|
||
break;
|
||
case Item::ITEM_TYPE_BELT:
|
||
$shopCategoryType = "Пояса";
|
||
break;
|
||
case Item::ITEM_TYPE_RING:
|
||
$shopCategoryType = "Кольца";
|
||
break;
|
||
case Item::ITEM_TYPE_AMULET:
|
||
$shopCategoryType = "Амулеты";
|
||
break;
|
||
case Item::ITEM_TYPE_CONSUMABLE:
|
||
$shopCategoryType = "Расходники";
|
||
break;
|
||
case Item::ITEM_TYPE_OTHER:
|
||
$shopCategoryType = "Разное";
|
||
break;
|
||
case 'sale':
|
||
$shopCategoryType = "Предметы в инвентаре";
|
||
$saleItems = true;
|
||
break;
|
||
}
|
||
// MUST BE ARRAY!
|
||
$iteminfo = [];
|
||
if (!$saleItems) {
|
||
$shopItems = $db->ofetchAll("select * from items inner join trade_offers on id = shop_item_id where shop_id = 1 and shop_item_quantity !=0");
|
||
foreach ($shopItems as $shopItemObject) {
|
||
$iteminfo[] = new ShopItem($shopItemObject, 'buyshop');
|
||
}
|
||
} else {
|
||
$inventoryItems = $db->ofetchall("select * from inventory where on_sale = 0 and dressed_slot = 0 and durability > 0 and owner_id = ?", $user->getId());
|
||
foreach ($inventoryItems as $inventoryItemObject) {
|
||
$iteminfo[] = new ShopItem($inventoryItemObject, 'sellshop');
|
||
}
|
||
}
|
||
|
||
Template::header('Магазин');
|
||
?>
|
||
<script src="js/main.js"></script>
|
||
<style>
|
||
a.waretype {
|
||
margin: 2px 16px;
|
||
padding: 6px;
|
||
border: 1px silver solid;
|
||
border-radius: 4px;
|
||
background-color: #ccc;
|
||
display: block;
|
||
}
|
||
|
||
a.sell {
|
||
background-color: #cdc;
|
||
}
|
||
|
||
a.alltypes {
|
||
background-color: #ccd;
|
||
}
|
||
|
||
.status {
|
||
color: darkgreen;
|
||
background: #afa;
|
||
}
|
||
|
||
table.shop {
|
||
width: 100%;
|
||
border-collapse: collapse;
|
||
border-spacing: 0;
|
||
padding: 4px;
|
||
}
|
||
|
||
table.shop > tbody > tr > td {
|
||
vertical-align: top;
|
||
}
|
||
|
||
table.shop > tbody > tr > td:nth-child(1) {
|
||
text-align: left;
|
||
}
|
||
|
||
table.shop > tbody > tr > td:nth-child(2) {
|
||
width: 280px;
|
||
}
|
||
|
||
table.shop table {
|
||
width: 100%;
|
||
border-collapse: separate;
|
||
border-spacing: 1px;
|
||
padding: 2px;
|
||
}
|
||
|
||
table.shop table tr {
|
||
background-color: #C7C7C7;
|
||
}
|
||
|
||
table.shop table td {
|
||
padding: 5px;
|
||
}
|
||
|
||
table.shop table tr:nth-child(even) {
|
||
background-color: #D5D5D5;
|
||
}
|
||
|
||
table.shop table td:nth-child(1) {
|
||
width: 150px;
|
||
text-align: center;
|
||
}
|
||
|
||
table.shop table td:nth-child(2) {
|
||
vertical-align: top;
|
||
}
|
||
|
||
h3 + div {
|
||
text-align: center;
|
||
}
|
||
|
||
table.shop strong span:last-child {
|
||
color: darkgreen;
|
||
}
|
||
|
||
hr + div {
|
||
text-align: center;
|
||
font-weight: bold;
|
||
}
|
||
|
||
</style>
|
||
<h1>Государственный магазин</h1>
|
||
<a href=# onclick=hrefToFrame('city.php?cp')> ← выйти на Центральную площадь</a>
|
||
<div class="status"><?= $status ?></div>
|
||
<table class="shop">
|
||
<tr>
|
||
<td>
|
||
<h3><?= $shopCategoryType ?></h3>
|
||
<?php if ($saleItems): ?>
|
||
<div>Вы можете продать ваши предметы за сущие копейки.</div>
|
||
<?php endif; ?>
|
||
<!--Магазин-->
|
||
<table>
|
||
<?php
|
||
foreach ($iteminfo as $ii) {
|
||
if ($ii->getItemType() != $shopCategoryTypeNumber && $shopCategoryTypeNumber != 'sale') {
|
||
continue;
|
||
}
|
||
echo "<tr><td>";
|
||
$ii->printImage();
|
||
$ii->printControls();
|
||
echo "<td>";
|
||
$ii->printInfo();
|
||
}
|
||
?>
|
||
</table>
|
||
<td>
|
||
<strong>
|
||
Масса всех вещей: <?= getItemsMassaInfo() ?> <br>
|
||
Деньги: <?= $user->getMoney() ?> [Б:<?= $bank->getMoney() ?>].
|
||
</strong>
|
||
<hr>
|
||
<div>Отделы магазина</div>
|
||
<a class="waretype" href="?otdel=6&rnd=<?= mt_rand() ?>">Оружие</a>
|
||
<a class="waretype" href="?otdel=1&rnd=<?= mt_rand() ?>">Шлемы</a>
|
||
<a class="waretype" href="?otdel=2&rnd=<?= mt_rand() ?>">Броня</a>
|
||
<a class="waretype" href="?otdel=3&rnd=<?= mt_rand() ?>">Поножи</a>
|
||
<a class="waretype" href="?otdel=4&rnd=<?= mt_rand() ?>">Сапоги</a>
|
||
<a class="waretype" href="?otdel=5&rnd=<?= mt_rand() ?>">Перчатки</a>
|
||
<a class="waretype" href="?otdel=7&rnd=<?= mt_rand() ?>">Щиты</a>
|
||
<a class="waretype" href="?otdel=8&rnd=<?= mt_rand() ?>">Пояса</a>
|
||
<a class="waretype" href="?otdel=9&rnd=<?= mt_rand() ?>">Кольца</a>
|
||
<a class="waretype" href="?otdel=10&rnd=<?= mt_rand() ?>">Амулеты</a>
|
||
<a class="waretype" href="?otdel=20&rnd=<?= mt_rand() ?>">Расходники</a>
|
||
<a class="waretype" href="?otdel=50&rnd=<?= mt_rand() ?>">Разное</a>
|
||
<a class="waretype alltypes" href="?rnd=<?= mt_rand() ?>">Все товары</a>
|
||
<a class="waretype sell" href="?otdel=sale&rnd=<?= mt_rand() ?>">Продать вещи</a>
|
||
<div id="hint3" class="ahint"></div>
|
||
</table>
|