Item returning fix.

This commit is contained in:
Igor Barkov [iwork] 2019-02-13 15:28:06 +02:00
parent 4787848cb4
commit 647ddb4221

View File

@ -18,8 +18,10 @@ if ($user['battle'] != 0) {
$get = urldecode(filter_input(INPUT_SERVER, 'QUERY_STRING'));
$itemCost = filter_var($_GET['kredit'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]);
$itemId = filter_var($_GET['n'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]);
$itemCost = filter_input(INPUT_GET, $_GET['kredit'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]);
$itemId = filter_input(INPUT_GET, $_GET['n'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]);
$returningItemId = filter_input(INPUT_GET, $_GET['back'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]);
if ($get == 'sale' && $itemCost && $itemId) {
$commission = ceil($itemCost / 10); # 10% от суммы с округлением вверх.
if ($user['money'] > $commission) {
@ -27,7 +29,7 @@ if ($get == 'sale' && $itemCost && $itemId) {
if (db::c()->getAffectedRows()) {
$deloText = "{$user['login']} выставил товар: «{$dress['name']}» id:({$itemId}) [{$dress['duration']}/{$dress['maxdur']}] на продажу в комиссионку за {$itemCost} кр. ";
addToDelo($deloText);
db::c()->query('UPDATE `inventory` SET `setsale` = ?i WHERE `id` = ?i AND `owner` = ?i', $itemCost, $itemId, $_SESSION['uid']);
db::c()->query('UPDATE `inventory` SET `setsale` = ?i WHERE `id` = ?i', $itemCost, $itemId);
db::c()->query('UPDATE `users` SET `money` = `money` - ?i WHERE `id` = ?i', $commission, $_SESSION['uid']);
$status = "Вы сдали в магазин «{$dress['name']}» за {$itemCost} кр. Вычтено за услуги магазина: {$commission} кр.";
} else $status = "Предмет не найден в инвентаре!";
@ -39,27 +41,14 @@ if ($get == 'unsale') {
return 1;
}
if ($_GET['back']) {
if ($user['money'] >= 1) {
if (is_numeric($_GET['back']) && $_GET['back'] > 0) {
$dress = mysql_fetch_array(mysql_query("SELECT * FROM `inventory` WHERE `dressed`=0 AND `id` = '{$_GET['back']}' AND `owner` = '{$_SESSION['uid']}' AND `setsale` > '0' LIMIT 1;"));
if ($dress['id']) {
mysql_query("UPDATE `users` set `money` = `money`-'1' WHERE id = {$_SESSION['uid']}");
mysql_query("UPDATE `inventory` SET `setsale` = '0' WHERE `id` = '{$_GET['back']}' AND `owner` = '{$_SESSION['uid']}' LIMIT 1;");
mysql_query("INSERT INTO `delo` (`id` , `author` ,`pers`, `text`, `type`, `date`) VALUES ('','0','{$_SESSION['uid']}','\"" . $user['login'] . "\" забрал предмет: \"" . $dress['name'] . "\" id:(cap" . $dress['id'] . ") [" . $dress['duration'] . "/" . $dress['maxdur'] . "] из комиссионки ',1,'" . time() . "');");
mysql_query("INSERT INTO `delo` (`id` , `author` ,`pers`, `text`, `type`, `date`) VALUES ('','0','{$_SESSION['uid']}','\"" . $user['login'] . "\" заплатил 1 кр за хранение предмета: \"" . $dress['name'] . "\" id:(cap" . $dress['id'] . ") [" . $dress['duration'] . "/" . $dress['maxdur'] . "] в комиссионке ',1,'" . time() . "');");
$user['money'] = $user['money'] - 1;
echo "<font color=red><b>Вы забрали из магазина \"" . $dress['name'] . "\" за 1 кр.</b></font>";
} else {
echo "<font color=red><b>Произошла ошибка. Вещь не найдена в магазине!</b></font>";
}
} else {
echo "<font color=red><b>Не надо так делать</b></font>";
}
} else {
echo "<font color=red><b>У вас недостаточно денег на уплату комиссии.</b></font>";
}
if ($returningItemId) {
$dress = db::c()->query('SELECT `name`,`duration`,`maxdur` FROM `inventory` WHERE `dressed` = 0 AND `setsale` > 0 AND `id` = ?i AND `owner` = ?i', $returningItemId, $_SESSION['uid'])->fetch_assoc();
if (db::c()->getAffectedRows()) {
$deloText = "{$user['login']} забрал свой товар: «{$dress['name']}» id:({$returningItemId}) [{$dress['duration']}/{$dress['maxdur']}] из комиссионки.";
addToDelo($deloText);
db::c()->query('UPDATE `inventory` SET `setsale` = 0 WHERE `id` = ?i', $returningItemId);
$status = "Вы забрали из магазина ваш «{$dress['name']}».";
} else $status = "Предмет не найден на полках магазина!";
}