<?php session_start(); if (empty($_SESSION['uid'])) { header("Location: index.php"); exit; } require_once("functions.php"); $d = db::c()->query('SELECT SUM(`massa`) FROM `inventory` WHERE `dressed` = 0 AND `owner` = ?i', $_SESSION['uid'])->fetch_assoc(); if ($user->room != 23) { header("Location: main.php"); exit(); } if ($user->battle) { header('location: fbattle.php'); exit(); } define('GRAV_LIMIT', 32); define('GRAV_COST', 30); define('REPAIR_STATUS', [ 'OK_GRAV_ADDED' => 'Гравировка добавлена!', 'OK_GRAV_REMOVED' => 'Гравировка удалена!', 'OK_REPAIRED' => 'Предмет отремонтирован!', 'ERROR_SIZE_LIMIT' => 'Превышен лимит в ' . GRAV_LIMIT . ' символа!', 'ERROR_NO_MONEY' => 'Недостаточно денег!', ]); $gravirovkaText = $_POST['gravirovka_text'] ?? null; $itemId = $_POST['itemId'] ?? null; $gravirovkaRemove = $_POST['gravirovka_remove'] ?? null; $action = $_POST['action'] ?? null; $goto = $_POST['goto'] ?? null; // Гравировка 30 кред. Максимум 32 символа. if ($gravirovkaText && $itemId) { if ($user->money >= GRAV_COST) { if (iconv_strlen($gravirovkaText) <= GRAV_LIMIT) { db::c()->query('UPDATE `inventory` SET `text` = "?s" WHERE `dressed` = 0 AND `setsale` = 0 AND `owner` = ?i AND `id` = ?i', $gravirovkaText, $_SESSION['uid'], $itemId); $user->money -= GRAV_COST; Bank::setWalletMoney($user->money, $user->id); $status = REPAIR_STATUS['OK_GRAV_ADDED']; } else { $status = REPAIR_STATUS['ERROR_SIZE_LIMIT']; } } else { $status = REPAIR_STATUS['ERROR_NO_MONEY']; } } // Снять гравировку. if ($gravirovkaRemove) { if ($user->money >= GRAV_COST) { db::c()->query('UPDATE `inventory` SET `text` = ?n WHERE `dressed` = 0 AND `setsale` = 0 AND `id` = ?i AND `owner` = ?i', null, $gravirovkaRemove, $_SESSION['uid']); $user->money -= GRAV_COST; Bank::setWalletMoney($user->money, $user->id); $status = REPAIR_STATUS['OK_GRAV_REMOVED']; } else { $status = REPAIR_STATUS['ERROR_NO_MONEY']; } } // Ремонт 0,5 кред за единицу. if ($action == 'repair' && $itemId) { $q = db::c()->query('SELECT `name`, `duration` FROM `inventory` WHERE id = ?i', $itemId)->fetch_assoc(); if ($user->money > ceil($q['duration'] / 2)) { db::c()->query('UPDATE `inventory` SET `maxdur` = `maxdur` - 1, `duration` = 0 WHERE `dressed` = 0 AND `setsale` = 0 AND `id` = ?i AND `owner` = ?i', $itemId, $_SESSION['uid']); $user->money -= ceil($q['duration'] / 2); Bank::setWalletMoney($user->money, $user->id); addToDelo('Отремонтирован предмет «' . $q['name'] . '» id:(' . $itemId . ') за ' . ceil($q['duration'] / 2) . ' кр.'); $status = REPAIR_STATUS['OK_REPAIRED']; } else { $status = REPAIR_STATUS['ERROR_NO_MONEY']; } } if ($goto == 'remont') { $remont_query = db::c()->query('SELECT `id`,`name`,`img`,`duration`,`maxdur` FROM `inventory` WHERE `type` < 12 AND `dressed` = 0 AND `isrep` = 1 AND `setsale` = 0 AND `duration` > 0 AND `owner` = ?i ORDER BY `update` DESC', $_SESSION['uid']); } if ($goto == 'gravirovka') { $gravirovka_query = db::c()->query('SELECT `id`,`name`,`img`,`text` FROM `inventory` WHERE `owner` = ?i AND `dressed` = 0 AND `type` = 3 AND `name` NOT LIKE "?S" AND `setsale` = 0 OR `text` <> "?s" AND `owner` = ?i AND `dressed` = 0 AND `setsale` = 0 ORDER by `update` DESC', $_SESSION['uid'], '%Букет%', '', $_SESSION['uid']); } Template::header('Кузня'); ?> <link href="css/secondary.css" rel="stylesheet"/> <script src="js/main.js"></script> <h1>Ремонтная мастерская</h1> <a href=# onclick=hrefToFrame('city.php?cp')> ← выйти из мастерской</a><br> <div class="appblock appblock-main"> <span class="legend">Информация</span> <span class="wrap">Кредиты<span class="num"><?= $user['money'] ?></span></span> <span class="wrap">Масса вещей<span class="num"><?= getItemsMassaInfo() ?></span></span> </div> <div class="appblock"> <span class="legend">Зал ремонта</span> <form method="post"> <input type="hidden" name="goto" value="remont"> <input type="submit" value="Войти"> </form> <span class="wrap">Починка поврежденных предметов. В процессе ремонта состояние предмета уменьшится на единицу!</span> </div> <div class="appblock"> <span class="legend">Зал гравировки</span> <form method="post"> <input type="hidden" name="goto" value="gravirovka"> <input type="submit" value="Войти" disabled> </form> <span class="wrap">Нанесение надписей на оружие и удаление надписей из любого обмундирования. Максимум 32 символа!</span> </div> <div style="clear: both;"> <?php if (isset($status)): ?> <span class="wrap"><?= $status ?></span> <?php endif; ?> </div> <?php if ($goto == 'remont'): while ($row = $remont_query->fetch_assoc()): ?> <div class="appblock"> <span class="legend"><?= $row['name'] ?></span> <span class="wrap">Состояние предмета<span class="num"><?= $row['duration'] ?>/<?= $row['maxdur'] ?></span></span> <span class="wrap">Стоимость услуги<span class="num"><?= ceil($row['duration'] / 2) ?></span></span> <div style="text-align: center"> <img src="i/sh/<?= $row['img'] ?>"> <form method="post"> <input type="hidden" name="itemId" value="<?= $row['id'] ?>"> <input type="hidden" name="action" value="repair"> <input type="submit" value="Ремонт"> </form> </div> </div> <?php endwhile; endif; ?> <?php if ($goto == 'gravirovka'): while ($row = $gravirovka_query->fetch_assoc()): ?> <div class="appblock"> <span class="legend"><?= $row['name'] ?></span> <span class="wrap">Стоимость услуги<span class="num">30</span></span> <div style="text-align: center"> <?php if (empty($row['text'])): ?> <form method="post" id="gravirovka"> <input maxlength="32" placeholder="Текст гравировки" name="gravirovka_text"> <br><img src="i/sh/<?= $row['img'] ?>"><br> <input type="hidden" name="itemId" value="<?= $row['id'] ?>"> <input type="submit" value="Добавить надпись"> </form> <?php else: ?> <form method="post" id="gravirovka"> <input value="<?= $row['text'] ?>" readonly title> <br><img src="i/sh/<?= $row['img'] ?>"><br> <input type="hidden" name="gravirovka_remove" value="<?= $row['id'] ?>"> <input type="submit" value="Удалить надпись"> </form> <?php endif; ?> </div> </div> <?php endwhile; endif; ?> <?php if ($goto == 'modding') { $data = mysql_query("SELECT * FROM `inventory` WHERE `type` < 12 AND `type` != 3 AND `owner` = '{$_SESSION['uid']}' AND `dressed` = 0 AND `name` NOT LIKE '% (мф)%' AND `name` NOT LIKE '%Букет%' AND `setsale`=0 ORDER by `update` DESC; "); while ($row = mysql_fetch_array($data)) { ?> <TR bgcolor=<?= $color ?>> <TD align=center><IMG SRC="i/sh/<?= $row['img'] ?>" BORDER=0>"; <BR> <small> <A HREF="?razdel=3&mf=<?= $row['id'] ?>" onClick="if(!confirm('Вы действительно хотите модифицировать эту вещь?')){ return false;}">Модифицировать за <?= $row['cost'] ?> кр.</A><BR> </small> </TD> <TD valign=top><?php #showitem($row) ?></TD> </TR> <?php } } if ($goto == 'podgon') { $data = mysql_query("SELECT * FROM `inventory` WHERE `type` < 12 AND `type` != 3 AND `owner` = '{$user['id']}' AND `dressed` = 0 AND `modif`='1' AND `podgon`<'5' AND `name` NOT LIKE '%Букет%' AND `setsale`=0 ORDER by `update` DESC; "); while ($row = mysql_fetch_array($data)) { ?> <TR bgcolor=<?= $color ?>> <TD align=center><IMG SRC="i/sh/<?= $row['img'] ?>" BORDER=0>"; <BR> <small> <? if ($row['point'] > 0) { $babki = round(($row['point'] / 2), 0); $cost_t = 'Реп'; } else { $babki = round(($row['cost'] / 2), 0); $cost_t = 'Кр'; } ?> <A HREF="?razdel=4&podgon=<?= $row['id'] ?>" onclick="if(!confirm('Вы действительно хотите подогнать эту вещь?')){ return false;}">Подогнать за <?= $babki ?> <?= $cost_t ?>.</A><BR> </small> </TD> <TD valign=top><?php #showitem($row) ?></TD> </TR> <?php } } ?> </TABLE>