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