Рефакторинг, очистка, работа над ошибками, связанными с базой, отказ от глобальной переменной $user во многих файлах.

Singleton в некоторых местах вместо решения #42.
Новые шаги для решения #16 и #52.
Closes #42.
Closes #32.
Closes #31.
This commit is contained in:
Igor Barkov (iwork)
2022-01-27 01:15:33 +02:00
parent b1ba212c8c
commit 3502904656
82 changed files with 1575 additions and 2015 deletions
+5 -5
View File
@@ -1,11 +1,11 @@
<?php
use Battles\Bank;
use Battles\Database\DBPDO;
use Battles\Database\Db;
use Battles\User;
require_once "functions.php";
if (User::$current->getBattle()) {
if (User::getInstance()->getBattle()) {
exit();
}
const PRICES = [
@@ -26,7 +26,7 @@ const PRICES = [
'unclone' => 25,
];
$check_bonuses = DBPDO::$db->ofetch('select 1 from users_bonuses where user_id = ?', User::$current->getId());
$check_bonuses = Db::getInstance()->ofetch('select 1 from users_bonuses where user_id = ?', User::getInstance()->getId());
if (!$check_bonuses) {
exit('Запрещено: Вам нельзя покупать бонусы.');
@@ -35,12 +35,12 @@ if (!$check_bonuses) {
function buy_bonus($name): bool
{
global $prices;
$bank = new Bank(User::$current->getId());
$bank = new Bank(User::getInstance()->getId());
if ($bank->getMoney() <= PRICES[$name]) {
return false;
}
$query = sprintf('update users_bonuses set %s = %s + 1 where user_id = ?', $name, $name);
DBPDO::$db->execute($query, User::$current->getId());
Db::getInstance()->execute($query, User::getInstance()->getId());
$bank->setMoney($bank->getMoney() - $prices[$name]);
return true;
}