From be1b631a186a62694d4332e7bcfeb74068287452 Mon Sep 17 00:00:00 2001 From: Ivor Barhansky Date: Tue, 11 Jul 2023 03:34:50 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=BF=D1=83=D1=82=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B2=20=D0=BE=D1=82=D0=B4=D0=B5=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D1=8B=D0=B9=20=D1=84=D0=B0=D0=B9=D0=BB.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _incl_data/class/User.php | 22 +++-------------- _incl_data/class/User/Reputation.php | 35 ++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 19 deletions(-) create mode 100644 _incl_data/class/User/Reputation.php diff --git a/_incl_data/class/User.php b/_incl_data/class/User.php index fcbb8f5b..aeaa11bb 100644 --- a/_incl_data/class/User.php +++ b/_incl_data/class/User.php @@ -6,6 +6,7 @@ use Core\Database; use Core\Db; use Model\ActionModel; use User\ItemsModel; +use User\Reputation; class User { @@ -577,7 +578,7 @@ class User public string $btl_txt = ''; public string $error = ''; public array $info = []; - public $rep; + public array $rep; public $tfer; public $stats; @@ -1537,25 +1538,8 @@ class User $this->info['login2'] = ''; } - $this->rep = mysql_fetch_array( - mysql_query( - 'SELECT - `add_slot`,`nu_sandcity`,`n_sandcity`, - `dl1`,`id`,`rep1`,`rep2`,`repcapitalcity`,`repdemonscity`,`repangelscity`,`repabandonedplain`, - `repdevilscity`,`repmooncity`,`repsuncity`,`repsandcity`,`repemeraldscity`,`repdreamscity`,`repizlom`, - `n_capitalcity`,`n_demonscity`,`n_suncity`,`nu_demonscity`,`nu_angelscity`,`nu_abandonedplain`,`nu_emeraldscity`, - `nu_capitalcity`,`nu_suncity`,`nu_devilscity`,`nu_dreamscity`,`add_stats`,`add_money`,`add_skills`,`add_skills2`, - `rep3`,`rep3_buy`,`repdragonscity`,`n_dragonscity`,`nu_dragonscity`, - (`repcapitalcity`+`repdemonscity`+`repangelscity`+`repsuncity`+`repdreamscity`+`repabandonedplain`+`repsandcity`+`repemeraldscity`+`repdevilscity`) as allrep, - (`nu_capitalcity`+`nu_demonscity`+`nu_angelscity`+`nu_suncity`+`nu_dreamscity`+`nu_abandonedplain`+`nu_sandcity`+`nu_emeraldscity`+`nu_devilscity`) as allnurep - FROM `rep` WHERE `id` = "' . $this->info['id'] . '" LIMIT 1' - ) - ); + $this->rep = (new Reputation($this->info['id']))->get(); - - if (!isset($this->rep['id'])) { - mysql_query('INSERT INTO `rep` (`id`) VALUES (' . $this->info['id'] . ')'); - } if ($this->info['login2'] != '' && $this->info['zv'] == 0 && $this->info['battle'] == 0) { $this->info['login2'] = ''; mysql_query('UPDATE `users` SET `login2` = "" WHERE `id` = "' . $this->info['id'] . '" LIMIT 1'); diff --git a/_incl_data/class/User/Reputation.php b/_incl_data/class/User/Reputation.php new file mode 100644 index 00000000..5212e7e2 --- /dev/null +++ b/_incl_data/class/User/Reputation.php @@ -0,0 +1,35 @@ +r = Db::getRow( + 'select *, + (repcapitalcity+repdemonscity+repangelscity+repsuncity+repdreamscity+repabandonedplain+repsandcity+repemeraldscity+repdevilscity) as allrep, + (nu_capitalcity+nu_demonscity+nu_angelscity+nu_suncity+nu_dreamscity+nu_abandonedplain+nu_sandcity+nu_emeraldscity+nu_devilscity) as allnurep + from rep where id = ?', [$userid] + ); + + if (empty($this->r)) { + Db::sql('insert into rep (id) value (?)', [$userid]); + $this->r = Db::getRow( + 'select *, + (repcapitalcity+repdemonscity+repangelscity+repsuncity+repdreamscity+repabandonedplain+repsandcity+repemeraldscity+repdevilscity) as allrep, + (nu_capitalcity+nu_demonscity+nu_angelscity+nu_suncity+nu_dreamscity+nu_abandonedplain+nu_sandcity+nu_emeraldscity+nu_devilscity) as allnurep + from rep where id = ?', [$userid] + ); + } + } + + public function get(): array + { + return $this->r; + } +} \ No newline at end of file