diff --git a/clan_create.php b/clan_create.php
index a2d1540..2ad6aad 100644
--- a/clan_create.php
+++ b/clan_create.php
@@ -10,23 +10,26 @@ if ($user->room != 30) {
header("Location: main.php");
exit;
}
-$klanName = $_POST['klanname'] ?? '';
-$klanAbbr = $_POST['klanabbr'] ?? '';
-$klanDescr = $_POST['klandescr'] ?? '';
+$userClan = db::c()->query('SELECT short_name, full_name, info FROM clans where owner_id = ?i', $user->id)->fetch_object();
+$clanFullName = $_POST['clan_full_name'] ?? '';
+$clanShortName = $_POST['clan_short_name'] ?? '';
+$clanInfo = $_POST['clan_info'] ?? '';
+$userBank = new Bank($user->id);
+if ($clanFullName && $clanShortName && $clanInfo && !$userClan) {
-if ($klanName && $klanAbbr && $klanDescr) {
-
- $eff = db::c()->query('SELECT 1 FROM `effects` WHERE `owner` = ?i AND `type` = 20', $user->id);
- $name_check = db::c()->query('SELECT 1 FROM `clans` WHERE `name` = "?s" OR `short` = "?s"', 111, 333);
+ $eff = db::c()->query('SELECT 1 FROM users_effects WHERE type = 20 AND owner_id = ?i', $user->id);
+ $name_check = db::c()->query('SELECT owner_id FROM clans WHERE full_name = "?s" OR short_name = "?s"', $clanFullName, $clanShortName);
$errorMessage = [];
-
+ if (Config::$clan_register_lock) {
+ $errorMessage[10] = 'Регистрация кланов закрыта!
';
+ }
if ($user->align) {
$errorMessage[0] = 'Вы уже имеете направленность!.
';
}
if ($user->clan) {
$errorMessage[1] = 'Вы уже состоите в клане!.
';
}
- if (Config::$clan_register_cost >= $user->money) {
+ if (Config::$clan_register_cost >= $userBank->getMoney()) {
$errorMessage[2] = 'Не хватает денег на регистрацию клана.
';
}
if (!$eff) {
@@ -35,67 +38,62 @@ if ($klanName && $klanAbbr && $klanDescr) {
if (!$name_check) {
$errorMessage[4] = 'Клан с такими данными уже существует.
';
}
-
- if (!$errorMessage && !Config::$clan_register_lock) {
-// db::c()->query('INSERT INTO `reg_klan` (owner, name, abr, descr) VALUES (?i,"?s","?s","?s")',
-// $user->id, $klanName, $klanAbbr, $klanDescr);
- $user->money -= Config::$clan_register_cost;
- Bank::setBankMoney($user->money, $user->id);
- echo 'Заявка на регистрацию клана подана.';
- err('Проверки пройдены, но клан регистрировать пока нельзя!');
+ if (!$errorMessage || $user->admin) {
+ try {
+ db::c()->query('INSERT INTO clans (owner_id, full_name, short_name, info) VALUES (?i,"?s","?s","?s")', $user->id, $clanFullName, $clanShortName, $clanInfo);
+ $userBank->setMoney($userBank->getMoney() - Config::$clan_register_cost);
+ Bank::setBankMoney($userBank->getMoney(), $user->id, 'clanRegister');
+ // Заглушка для отображения данных по только что зарегистрированному клану, когда запрос в базу в начале файла ещё не проходит.
+ $userClan = new stdClass();
+ $userClan->full_name = $clanFullName;
+ $userClan->short_name = $clanShortName;
+ $userClan->info = $clanInfo;
+ unset($clanShortName, $clanFullName, $clanInfo);
+ echo 'Заявка на регистрацию клана подана.';
+ } catch (Throwable $exception) {
+ echo '
", $clanreg_row['date'], " | -", $clanreg_row['name'], " | -", $clanreg_row['abbr'], " | -", Nick::id($clanreg_row['owner'])->full(), " | -", nl2br($clanreg_row['descr']), " | -