diff --git a/system/libs/pot/OTS_Base_DB.php b/system/libs/pot/OTS_Base_DB.php index e6ffa9be..21902b9c 100644 --- a/system/libs/pot/OTS_Base_DB.php +++ b/system/libs/pot/OTS_Base_DB.php @@ -83,10 +83,10 @@ abstract class OTS_Base_DB extends PDO implements IOTS_DB $startTime = microtime(true); } - $ret = parent::query(...$args);; + $ret = parent::query(...$args); if($this->logged) { $totalTime = microtime(true) - $startTime; - $this->log .= round($totalTime, 4) . ' ms - ' . $query . PHP_EOL; + $this->log .= round($totalTime, 4) . ' ms - ' . $args[0] . PHP_EOL; } return $ret; diff --git a/system/pages/account/change_name.php b/system/pages/account/change_name.php index 009c39f8..ab7bd326 100644 --- a/system/pages/account/change_name.php +++ b/system/pages/account/change_name.php @@ -59,6 +59,29 @@ else $old_name = $player->getName(); $player->setName($name); $player->save(); + + if ($db->hasTable('player_deaths') && + $db->hasColumn('player_deaths', 'mostdamage_is_player') && + $db->hasColumn('player_deaths', 'killed_by')) { + + $namesToChange = $db->query('SELECT `player_id`, `time`, `is_player`, `killed_by`, `mostdamage_is_player`, `mostdamage_by` FROM `player_deaths` WHERE (`is_player` = 1 AND `killed_by` = ' . $db->quote($old_name) . ') OR (`mostdamage_is_player` = 1 AND `mostdamage_by` = ' . $db->quote($old_name) . ');'); + + if ($namesToChange->rowCount() > 0) { + foreach ($namesToChange->fetchAll(PDO::FETCH_ASSOC) as $row) { + $changeKey = ''; + if ($row['is_player'] == '1' && $row['killed_by'] == $old_name) { + $changeKey = 'killed_by'; + } else if ($row['mostdamage_is_player'] == '1' && $row['mostdamage_by'] == $old_name) { + $changeKey = 'mostdamage_by'; + } + + if (!empty($changeKey)) { + $db->update('player_deaths', [$changeKey => $name], ['player_id' => $row['player_id'], 'time' => $row['time']]); + } + } + } + } + $account_logged->setCustomField("premium_points", $points - $config['account_change_character_name_points']); $account_logged->logAction('Changed name from ' . $old_name . ' to ' . $player->getName() . '.'); $twig->display('success.html.twig', array(