2018-01-28 16:40:49 +00:00
< ? php
2021-01-27 15:19:05 +00:00
use Battles\Bank ;
use Battles\GameLogs ;
use Battles\Template ;
2018-01-28 16:40:49 +00:00
session_start ();
2018-12-11 23:00:19 +00:00
require_once ( " functions.php " );
2018-12-11 23:20:11 +00:00
$d = db :: c () -> query ( 'SELECT SUM(`massa`) FROM `inventory` WHERE `dressed` = 0 AND `owner` = ?i' , $_SESSION [ 'uid' ]) -> fetch_assoc ();
2020-08-29 23:21:22 +00:00
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 ;
2018-01-28 16:40:49 +00:00
2018-12-12 17:16:36 +00:00
// Гравировка 30 кред. Максимум 32 символа.
2020-08-29 23:21:22 +00:00
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 );
2020-09-29 22:39:06 +00:00
$user -> money -= GRAV_COST ;
Bank :: setWalletMoney ( $user -> money , $user -> id );
2020-08-29 23:21:22 +00:00
$status = REPAIR_STATUS [ 'OK_GRAV_ADDED' ];
} else {
$status = REPAIR_STATUS [ 'ERROR_SIZE_LIMIT' ];
}
} else {
$status = REPAIR_STATUS [ 'ERROR_NO_MONEY' ];
}
2018-01-28 16:40:49 +00:00
}
2018-12-12 17:16:36 +00:00
// Снять гравировку.
2020-08-29 23:21:22 +00:00
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' ]);
2020-09-29 22:39:06 +00:00
$user -> money -= GRAV_COST ;
Bank :: setWalletMoney ( $user -> money , $user -> id );
2020-08-29 23:21:22 +00:00
$status = REPAIR_STATUS [ 'OK_GRAV_REMOVED' ];
} else {
$status = REPAIR_STATUS [ 'ERROR_NO_MONEY' ];
}
2018-01-28 16:40:49 +00:00
}
2018-12-12 16:09:39 +00:00
// Ремонт 0,5 кред за единицу.
2020-08-29 23:21:22 +00:00
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' ]);
2020-09-29 22:39:06 +00:00
$user -> money -= ceil ( $q [ 'duration' ] / 2 );
Bank :: setWalletMoney ( $user -> money , $user -> id );
2021-01-27 15:19:05 +00:00
GameLogs :: addUserLog ( $user -> id , 'Отремонтирован предмет «' . $q [ 'name' ] . '» id:(' . $itemId . ') за ' . ceil ( $q [ 'duration' ] / 2 ) . ' кр.' );
2020-08-29 23:21:22 +00:00
$status = REPAIR_STATUS [ 'OK_REPAIRED' ];
} else {
$status = REPAIR_STATUS [ 'ERROR_NO_MONEY' ];
}
2018-12-11 23:20:11 +00:00
}
2020-08-29 23:21:22 +00:00
if ( $goto == 'remont' ) {
2018-12-12 17:16:36 +00:00
$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' ]);
2018-12-12 14:58:41 +00:00
}
2020-08-29 23:21:22 +00:00
if ( $goto == 'gravirovka' ) {
2018-12-12 18:30:21 +00:00
$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' ]);
2018-12-12 14:37:00 +00:00
}
2021-01-27 15:19:05 +00:00
Template :: header ( 'Кузня' );
2018-01-28 16:40:49 +00:00
?>
2018-12-12 11:59:29 +00:00
< link href = " css/secondary.css " rel = " stylesheet " />
2019-01-15 19:34:35 +00:00
< script src = " js/main.js " ></ script >
2018-12-11 23:20:11 +00:00
< h1 > Ремонтная мастерская </ h1 >
2019-01-15 19:34:35 +00:00
< a href = # onclick=hrefToFrame('city.php?cp')> ← выйти из мастерской</a><br>
2018-12-12 14:18:11 +00:00
< 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 >
2018-12-12 17:16:36 +00:00
< span class = " wrap " > Починка поврежденных предметов . В процессе ремонта состояние предмета
уменьшится на единицу !</ span >
2018-12-12 14:18:11 +00:00
</ div >
< div class = " appblock " >
< span class = " legend " > Зал гравировки </ span >
< form method = " post " >
< input type = " hidden " name = " goto " value = " gravirovka " >
2020-08-29 23:21:22 +00:00
< input type = " submit " value = " Войти " disabled >
2018-12-12 14:18:11 +00:00
</ form >
2018-12-12 17:16:36 +00:00
< span class = " wrap " > Нанесение надписей на оружие и удаление надписей из любого обмундирования .
Максимум 32 символа !</ span >
2018-12-12 14:18:11 +00:00
</ div >
2018-12-12 14:23:58 +00:00
< div style = " clear: both; " >
< ? php if ( isset ( $status )) : ?>
< span class = " wrap " >< ? = $status ?> </span>
< ? php endif ; ?>
</ div >
2020-08-29 23:21:22 +00:00
< ? php if ( $goto == 'remont' ) :
2018-12-12 14:48:43 +00:00
while ( $row = $remont_query -> fetch_assoc ()) : ?>
2018-12-12 14:37:00 +00:00
< div class = " appblock " >
< span class = " legend " >< ? = $row [ 'name' ] ?> </span>
2018-12-12 16:09:39 +00:00
< span class = " wrap " > Состояние предмета < span class = " num " >< ? = $row [ 'duration' ] ?> /<?= $row['maxdur'] ?></span></span>
2018-12-12 17:16:36 +00:00
< span class = " wrap " > Стоимость услуги < span class = " num " >< ? = ceil ( $row [ 'duration' ] / 2 ) ?> </span></span>
2018-12-12 14:37:00 +00:00
< div style = " text-align: center " >
2018-12-12 16:14:22 +00:00
< img src = " i/sh/<?= $row['img'] ?> " >
2018-12-12 16:09:39 +00:00
< form method = " post " >
< input type = " hidden " name = " itemId " value = " <?= $row['id'] ?> " >
< input type = " hidden " name = " action " value = " repair " >
< input type = " submit " value = " Ремонт " >
</ form >
2018-12-12 14:37:00 +00:00
</ div >
</ div >
< ? php endwhile ; endif ; ?>
2018-12-12 14:58:41 +00:00
2020-08-29 23:21:22 +00:00
< ? php if ( $goto == 'gravirovka' ) :
2018-12-12 14:58:41 +00:00
while ( $row = $gravirovka_query -> fetch_assoc ()) : ?>
< div class = " appblock " >
< span class = " legend " >< ? = $row [ 'name' ] ?> </span>
2018-12-12 17:16:36 +00:00
< span class = " wrap " > Стоимость услуги < span class = " num " > 30 </ span ></ span >
2018-12-12 14:58:41 +00:00
< div style = " text-align: center " >
2018-12-12 17:16:36 +00:00
< ? php if ( empty ( $row [ 'text' ])) : ?>
< form method = " post " id = " gravirovka " >
< input maxlength = " 32 " placeholder = " Текст гравировки " name = " gravirovka_text " >
2018-12-12 17:19:25 +00:00
< br >< img src = " i/sh/<?= $row['img'] ?> " >< br >
2018-12-12 17:16:36 +00:00
< 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 >
2018-12-12 17:19:25 +00:00
< br >< img src = " i/sh/<?= $row['img'] ?> " >< br >
2018-12-12 17:16:36 +00:00
< input type = " hidden " name = " gravirovka_remove " value = " <?= $row['id'] ?> " >
< input type = " submit " value = " Удалить надпись " >
</ form >
< ? php endif ; ?>
2018-12-12 14:58:41 +00:00
</ div >
</ div >
< ? php endwhile ; endif ; ?>
2020-06-23 14:30:21 +00:00
< ? php
2020-08-29 23:21:22 +00:00
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 >
2021-01-27 15:19:05 +00:00
< TD valign = top >< ? php #showitem($row) ?>
2020-08-29 23:21:22 +00:00
< ? php
2018-12-12 18:59:19 +00:00
}
2020-08-29 23:21:22 +00:00
}
2018-12-11 23:20:11 +00:00
2020-08-29 23:21:22 +00:00
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 >
2021-01-27 15:19:05 +00:00
< TD valign = top >< ? php #showitem($row) ?>
2020-08-29 23:21:22 +00:00
< ? php
2018-12-12 18:59:19 +00:00
}
2020-08-29 23:21:22 +00:00
}
?>
2020-09-30 19:12:34 +00:00
</ TABLE >