From bcfa07a0372630f20933b6ff94657feb7977bd68 Mon Sep 17 00:00:00 2001 From: Ivor Barhansky Date: Tue, 31 May 2022 12:44:28 +0000 Subject: [PATCH] patch-admin (#56) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 5b29d5b593 Админка: создание предметов. 197e489e0e Админка: класс регистрации кланов. --- admin/NewItem.php | 233 ++++++++++++++------------------- admin/admin.php | 51 +------- classes/Battles/Admin/Clan.php | 49 +++++++ classes/Battles/Admin/Item.php | 49 +++++++ 4 files changed, 197 insertions(+), 185 deletions(-) create mode 100644 classes/Battles/Admin/Clan.php create mode 100644 classes/Battles/Admin/Item.php diff --git a/admin/NewItem.php b/admin/NewItem.php index 98cd34e..a953114 100644 --- a/admin/NewItem.php +++ b/admin/NewItem.php @@ -1,143 +1,100 @@ -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Добавление вещей в магазин
Основное -
-
-
-
-
-
-
-
-
Требования -
-
-
-
-
-
-
-
Характеристики -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
+require_once '../config.php'; + +use Battles\Admin\Item; - +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Добавление вещей в игру
Основное +
+
+
+
+
+
+
+
+
Требования +
+
+
+
+
+
+
+
Характеристики +
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ +
+
\ No newline at end of file diff --git a/admin/admin.php b/admin/admin.php index 23fcc34..1061197 100644 --- a/admin/admin.php +++ b/admin/admin.php @@ -6,11 +6,9 @@ */ require_once '../functions.php'; -use Battles\Bank; +use Battles\Admin\Clan; use Battles\Database\Db; -use Battles\GameConfigs; use Battles\Moderation; -use Battles\Nick; use Battles\Template; use Battles\User; @@ -31,56 +29,15 @@ if (isset($_POST['syschatmsg'])) { } //clans to reg -$unregisteredClans = new class { - - public function getList() - { - $row = Db::getInstance()->ofetchAll('SELECT * FROM clans WHERE status = 0'); - $i = 0; - while ($i < count($row)) { - $id = $row[$i]->owner_id; - $login = User::getInstance($row[$i]->owner_id)->getLogin(); - $fullName = $row[$i]->full_name; - $shortName = $row[$i]->short_name; - $info = nl2br($row[$i]->info); - $i++; - echo << -
- $fullName [$shortName] - Глава клана: $login
- Описание:
$info
-
- - -
- -UNREGCLANLIST; - } - unset($i); - } - - public function allowRegister($id) - { - Db::getInstance()->execute('UPDATE clans SET status = 1 WHERE status = 0 AND owner_id = ?', $id); - } - - public function disallowRegister($id) - { - $bank = new Bank($id); - Db::getInstance()->execute('DELETE FROM clans WHERE status = 0 AND owner_id = ?', $id); - $bank::setBankMoney($bank->getMoney() + GameConfigs::CLAN['clan_register_cost'], $id); - } -}; -$unregisteredClans->getList(); +Clan::getUnapprovedList(); if (isset($_GET['regclan'])) { - $unregisteredClans->allowRegister($_GET['regclan']); + Clan::allowRegister($_GET['regclan']); header('Location:/admin/admin.php'); exit; } if (isset($_GET['remclan'])) { - $unregisteredClans->disallowRegister($_GET['remclan']); + Clan::disallowRegister($_GET['remclan']); header('Location:/admin/admin.php'); exit; } diff --git a/classes/Battles/Admin/Clan.php b/classes/Battles/Admin/Clan.php new file mode 100644 index 0000000..f8e30e4 --- /dev/null +++ b/classes/Battles/Admin/Clan.php @@ -0,0 +1,49 @@ +ofetchAll('select * from clans where status = 0'); + foreach ($rows as $row) { + $id = $row->owner_id; + $login = User::getInstance($id)->getLogin(); + $full = $row->full_name; + $short = $row->short_name; + $info = nl2br($row->info); + $list .= << +
+ $full [$short] + Глава клана: $login
+ Описание:
$info
+
+ + +
+ +UNREGCLANLIST; + } + return $list; + } + + public static function allowRegister($id) + { + Db::getInstance()->execute('UPDATE clans SET status = 1 WHERE status = 0 AND owner_id = ?', $id); + } + + public static function disallowRegister($id) + { + $bank = new Bank($id); + Db::getInstance()->execute('DELETE FROM clans WHERE status = 0 AND owner_id = ?', $id); + $bank::setBankMoney($bank->getMoney() + GameConfigs::CLAN['clan_register_cost'], $id); + } +} \ No newline at end of file diff --git a/classes/Battles/Admin/Item.php b/classes/Battles/Admin/Item.php new file mode 100644 index 0000000..2efb5ee --- /dev/null +++ b/classes/Battles/Admin/Item.php @@ -0,0 +1,49 @@ + $params['name'] ?? uniqid(), + 'item_type' => $params['item_type'], + 'durability' => $params['durability'] ?? 1, + 'need_strength' => $params['need_strength'] ?? 0, + 'need_dexterity' => $params['need_dexterity'] ?? 0, + 'need_intuition' => $params['need_intuition'] ?? 0, + 'need_endurance' => $params['need_endurance'] ?? 0, + 'need_intelligence' => $params['need_intelligence'] ?? 0, + 'need_wisdom' => $params['need_wisdom'] ?? 0, + 'add_strength' => $params['add_strength'] ?? 0, + 'add_dexterity' => $params['add_dexterity'] ?? 0, + 'add_intuition' => $params['add_intuition'] ?? 0, + 'add_endurance' => $params['add_endurance'] ?? 0, + 'add_intelligence' => $params['add_intelligence'] ?? 0, + 'add_wisdom' => $params['add_wisdom'] ?? 0, + 'add_accuracy' => $params['add_accuracy'] ?? 0, + 'add_evasion' => $params['add_evasion'] ?? 0, + 'add_criticals' => $params['add_criticals'] ?? 0, + 'add_min_physical_damage' => $params['add_min_physical_damage'] ?? 0, + 'add_max_physical_damage' => $params['add_max_physical_damage'] ?? 0, + 'image' => $params['image'] ?? 'noitem.png', + 'weight' => $params['weight'] ?? 1, + ]; + Db::getInstance()->execute($query, $values); + } +} \ No newline at end of file