battles/bank.php
2018-03-22 22:46:12 +02:00

295 lines
12 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
ob_start("ob_gzhandler");
session_start();
if ($_SESSION['uid'] == null) header("Location: index.php");
include "config.php";
include "functions.php";
if ($user['room'] != 29) header("Location: main.php");
if ($user['battle'] != 0) {
header('location: fbattle.php');
die();
}
$bank = db::c()->query('SELECT `id`, `cr`, `ekr` FROM `bank` WHERE `id` = ?i', $_SESSION['uid'])->fetch_assoc();
/**
* Если вдруг нет счёта, создаём.
*/
if (!$bank['id']) {
db::c()->query('INSERT INTO `bank` (`id`) VALUES (?i)', $_SESSION['uid']);
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link href="css/main.css" rel="stylesheet"/>
<title>Банк</title>
<script>
function leave() {
top.frames['main'].location = 'city.php?strah'
}
</script>
<script src="/js/jquery-1.7.2.min.js"></script>
<style>
.appblock {
background: silver;
border-radius: 2px;
float: left;
height: 200px;
margin: 10px;
width: 250px;
opacity: 0.75;
padding: 5px;
}
div.appblock form {
margin: 5px;
}
div.appblock span {
padding: 0.2em 0.5em;
color: #666;
font-weight: bold;
display: block;
}
div.appblock br {
margin:5px;
}
</style>
</head>
<body>
<h1>Банк</h1>
<table class='adm'>
<tr>
<th>№</th>
<th>Кредитов.</th>
<th>ЕвроКредитов.</th>
</tr>
<tr>
<td><?=$bank['id']?></td>
<td><?=$bank['cr']?></td>
<td><?=$bank['ekr']?></td>
</tr>
</table><br>
<?php
if ($_GET['exit']) {
$_SESSION['bankid'] = null;
}
if (isset($_POST['userlogin'])) {
$_SESSION['bankid'] = $_SESSION['uid'];
}
if (!$_SESSION['bankid']) {
?>
<a href=# onclick=leave()> ← выйти из банка</a>
<form method="post"><input type="submit" name="userlogin" value="Управление счётом"></form>
<?
} else {
$toid = filter_input(INPUT_POST, 'to-id');
$summa = (int)filter_input(INPUT_POST, 'summa');
$submit = filter_input(INPUT_POST, 'action');
$mywarn = '';
/**
* Зачисдение кредитов на счёт.
*/
if ($submit == 'money-in' && $summa) {
if ($summa > 0 && ($summa <= $user['money'])) {
$user['money'] -= $summa;
db::c()->query('UPDATE `users` SET `money` = `money` - ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('UPDATE `bank` SET `cr` = `cr` + ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $bank['id'], $summa, 'money-in', 'Банк: Зачисление средств на счёт', $bank['id']);
} else {
$mywarn = "У вас недостаточно денег для выполнения операции";
}
$submit = '';
$summa = 0;
}
/**
* Снятие кредитов со счёта.
*/
if ($submit == 'money-out' && $summa) {
if ($summa > 0 && ($summa <= $bank['cr'])) {
$user['money'] += $summa;
db::c()->query('UPDATE `bank` SET `cr` = `cr` - ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('UPDATE `users` SET `money` = `money` + ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $bank['id'], $summa, 'money-out', 'Банк: Вывод средств на руки', $bank['id']);
} else {
$mywarn = "У вас недостаточно денег на счету для выполнения операции";
}
$submit = '';
$summa = 0;
}
/**
* Перевод кредитов на другой счёт.
*/
if ($submit == 'money-send' && $summa && $toid) {
$receiver = db::c()->query('SELECT `id` FROM `bank` WHERE `id` = ?i', $toid)->fetch_assoc();
if ($receiver['id']) {
if ($summa > 0) {
$nalog = round($summa * 0.05);
if ($nalog < 1) {
$nalog = 1;
}
$new_summa = $summa + $nalog;
if ($new_summa <= $bank['cr']) {
db::c()->query('UPDATE `bank` SET `cr` = `cr` - ?i WHERE `id` = ?i', $new_summa, $bank['id']);
db::c()->query('UPDATE `bank` SET `cr` = `cr` + ?i WHERE `id` = ?i', $summa, $toid);
db::c()->query('UPDATE `bank` SET `cr` = `cr` + ?i WHERE `id` = ?i', $nalog, 0);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $toid, $summa, 'money-in', 'Получение банковского перевода.', $bank['id']);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $bank['id'], $new_summa, 'money-send', 'Банк: Перевод средств на другой счёт. Комиссия: '.$nalog.'.', $toid);
} else {
$mywarn = "У вас недостаточно денег на счету для выполнения операции";
}
} else {
$mywarn = "Укажите сумму!";
}
} else {
$mywarn = "Счёт не существует.";
}
$submit = '';
$summa = 0;
$toid = 0;
}
/**
* Обмен еврокредитов на кредиты.
*/
if ($_POST['donate-exchange'] && $summa) {
if ($summa > 0 && $summa <= $bank['ekr']) {
db::c()->query('UPDATE `bank` SET `cr` = `cr` + ?i WHERE `id` = ?i', ($summa*5), $bank['id']);
db::c()->query('UPDATE `bank` SET `ekr` = `ekr` - ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $bank['id'], $summa, 'donate-exchange', 'Банк: Обмен валют на сумму '.($summa*5).' кр.', $bank['id']);
} else {
$mywarn = "У вас недостаточно денег на валютном счету для выполнения операции";
}
$submit = '';
$summa = 0;
}
//### Чеки
// /**
// *
// */
// function bank_show()
// {
// global $user;
// $pl = db::c()->query('SELECT `id`,`name`,`bcost` FROM `inventory` WHERE `owner` = ?i AND `bcost` > 0 ORDER BY `bcost` ASC', $user['id']);
// if ($pl->getNumRows() > 0) {
// echo '<select name=\'coste\'>';
// while ($sp = $pl->fetch_assoc()) {
// echo '<option value=\'' . $sp['id'] . '\'>' . $sp['name'] . '</option>';
// }
// echo '</select> <input class="ctContent" type="submit" value="Обменять" name="saled" />';
// } else {
// echo '<b>Нет чеков для обмена</b>';
// }
// }
//
// if ($_POST['sales'] && $_POST['count_ekr'] && (!empty($user['admin']))) {
// if (isset($bank['id'])) {
// $cnt = round($_POST['count_ekr'], 2);
// if ($cnt < 1) {
// err('Минимальная сумма: 1 екр');
// } elseif ($bank['ekr'] < $cnt) {
// err('Недостаточно средств ...');
// } else {
// $name = 'Банковский чек на ' . $cnt . ' еврокредитов';
// db::c()->query('INSERT INTO `inventory` SET `name` = "?s", `bcost` = ?i, `owner` = ?i, `prototype` = ?i', $name, $cnt, $user['id'], 1123);
//// $bank['ekr'] -= $cnt;
//// mysql_query('UPDATE `bank` SET `ekr` = "' . $bank['ekr'] . '" WHERE `id` = "' . $bank['id'] . '" LIMIT 1');
// db::c()->query('UPDATE `bank` SET `ekr` = `ekr` - ?i WHERE `id` = ?i', $cnt, $bank['id']);
// err('Чек на сумму : ' . $cnt . ' екр., появится у Вас в инвентаре ...');
// }
// } else {
// err('Банковский счёт, не найден ...');
// }
// }
//
// if ($_POST['saled'] && $_POST['coste'] && (!empty($user['admin']))) {
// $item = mysql_fetch_array(mysql_query('SELECT `id`, `name`, `bcost` FROM `inventory` WHERE `owner` = "' . $user['id'] . '" AND `id` = "' . mysql_real_escape_string($_POST['coste']) . '" LIMIT 1'));
// if (isset($item['id'])) {
// if ($item['bcost'] > 0) {
// mysql_query('DELETE FROM `inventory` WHERE `owner` = "' . $user['id'] . '" AND `id` = "' . $item['id'] . '" LIMIT 1');
// $bank['ekr'] += $item['bcost'];
// mysql_query('UPDATE `bank` SET `ekr` = "' . $bank['ekr'] . '" WHERE `id` = "' . $bank['id'] . '" LIMIT 1');
// err($item['name'] . ', успешно обналичен ...');
// } else {
// err('Это не чек ...');
// }
// } else {
// err('Чек, не найден ...');
// }
// }
//###
err($mywarn);
?>
<a href="?exit=1"> ← выйти из счёта</a>
<br><br>Красным <span style="background:#FFAAAA;">помечены</span> нерабочие элементы.<br>
<div class="appblock">
<span>Денежные средства</span>
Кредитов на руках: <b><?=$user['money']?></b> кр.<br>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input type="hidden" name="action" value="money-in">
<input type="submit" value="Положить на счёт">
</form>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input type="hidden" name="action" value="money-out">
<input type="submit" value="Снять со счёта">
</form>
</div>
<div class="appblock">
<span>Перевод кредитов</span>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input size="10" name="to-id" placeholder="Cчёт"><br>
<input type="hidden" name="action" value="money-send">
<input type="submit" value="Перевести кредиты">
</form>
<i>Комиссия составит 5% от переводимой суммы, но не менее 1 кр.</i>
</div>
<div class="appblock">
<span>Обменять екр. на кр.</span>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input type="hidden" name="action" value="donate-exchange">
<input type=submit value="Обменять">
</form>
<i>Курс обмена: 1:5.</i>
</div>
<? if (!empty($user['admin'])): ?>
<div class="appblock" style="background:#FFAAAA;">
<span>Выписать чек</span>
Услуга "чек на предъявителя". Вы выписываете екровый чек, который затем сможет обналичить любой
персонаж.<br>
<form method="POST">
Сумма (екр): <input type="text" size="4" name="count_ekr"/> <input type="submit" value="Выписать"
name="sales"/>
</form>
</div>
<div class="appblock" style="background:#FFAAAA;">
<span>Обналичить чек</span>
В нашем банке мы принимаем к погашению екровые чеки на предъявителя.
<form method="POST">
<?php #bank_show(); ?>
</form>
</div>
<?php endif;
} # Очень важная и гордая кавычка!
?>
</body>
</html>