battles/bank.php
2019-01-28 17:56:35 +02:00

187 lines
8.1 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();
//TODO Написать класс банковских переводов
if (is_null($_SESSION['uid'])) header("Location: index.php");
require_once "functions.php";
if ($user['room'] != 29) {
header("Location: main.php");
die();
}
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"/>
<link href="css/secondary.css" rel="stylesheet"/>
<script src="js/main.js"></script>
<title>Банк</title>
</head>
<body>
<h1>Банк</h1>
<?php
$get = urldecode(filter_input(INPUT_SERVER, 'QUERY_STRING'));
if ($get == 'exit') {
$_SESSION['bankid'] = null;
}
if (isset($_POST['userlogin'])) {
$_SESSION['bankid'] = $_SESSION['uid'];
}
if (!$_SESSION['bankid']) {
?>
<a href=# onclick=hrefToFrame('city.php?strah')> ← выйти из банка</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 ($submit == '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;
}
err($mywarn);
?>
<p><a href="?exit"> ← выйти из счёта</a></p>
<div class="appblock appblock-main">
<span class="legend">Cчет №<?= $bank['id'] ?></span>
<span class="wrap">Кредитов<span class="num"><?= $bank['cr'] ?></span></span>
<span class="wrap">ЕвроКредитов<span class="num"><?= $bank['ekr'] ?></span></span>
<hr>
<span class="wrap">На руках<span class="num"><?= $user['money'] ?></span></span>
</div>
<div class="appblock">
<span class="legend">Работа со счётом</span>
<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 class="legend">Перевод кредитов</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>
<span class="wrap">Комиссия: 5% от переводимой суммы, но не менее 1 кр.</span>
</div>
<div class="appblock">
<span class="legend">Обменять екр. на кр.</span>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input type="hidden" name="action" value="donate-exchange">
<input type=submit value="Обменять">
</form>
<span class="wrap">Курс обмена: 1:5.</span>
</div>
<?
} # Очень важная и гордая кавычка!
?>
</body>
</html>