Рефакторинг, очистка, работа над ошибками, связанными с базой, отказ от глобальной переменной $user во многих файлах.
Singleton в некоторых местах вместо решения #42. Новые шаги для решения #16 и #52. Closes #42. Closes #32. Closes #31.
This commit is contained in:
@@ -2,16 +2,16 @@
|
||||
|
||||
namespace Battles;
|
||||
|
||||
use Battles\Database\DBPDO;
|
||||
use Battles\Database\Db;
|
||||
use DateTime;
|
||||
use Exception;
|
||||
|
||||
class Chat
|
||||
{
|
||||
private DateTime $d;
|
||||
private DBPDO $db;
|
||||
private Db $db;
|
||||
|
||||
public function __construct(DBPDO $db)
|
||||
public function __construct(Db $db)
|
||||
{
|
||||
$this->db = $db;
|
||||
}
|
||||
@@ -34,7 +34,7 @@ class Chat
|
||||
or r.id is null
|
||||
or s.id = ?
|
||||
order by chat.id';
|
||||
$chatrows = $this->db->ofetchALL($query, [User::$current->getId(), User::$current->getId()]);
|
||||
$chatrows = $this->db->ofetchALL($query, [User::getInstance()->getId(), User::getInstance()->getId()]);
|
||||
$wrappedMessage = null;
|
||||
foreach ($chatrows as $row) {
|
||||
try {
|
||||
@@ -45,7 +45,7 @@ class Chat
|
||||
$m = htmlspecialchars($row->msg);
|
||||
if ($row->type === 'sys' && empty($row->rid)) {
|
||||
$wrappedMessage .= sprintf('<span class="chatsys">%s %s</span><br>', $this->d->format('H:i'), $m);
|
||||
} elseif ($row->rid === User::$current->getId()) {
|
||||
} elseif ($row->rid === User::getInstance()->getId()) {
|
||||
if ($row->type === 'sys') {
|
||||
$wrappedMessage .= sprintf('<span class="chatsys">%s [Система] → %s</span><br>', $this->d->format('H:i'), $m);
|
||||
} elseif ($row->type == 'sms') {
|
||||
@@ -64,12 +64,12 @@ class Chat
|
||||
|
||||
public function addMessage(string $msg)
|
||||
{
|
||||
$this->db->execute('insert into chat (user_id, msg) values (?,?)', [User::$current->getId(), $msg]);
|
||||
$this->db->execute('insert into chat (user_id, msg) values (?,?)', [User::getInstance()->getId(), $msg]);
|
||||
}
|
||||
|
||||
public static function addSYSMessage( string $msg, ?int $receiver_id = null)
|
||||
{
|
||||
DBPDO::$db->execute('insert into chat (user_id, msg, receiver_id, type) values (?,?,?,?)', [User::$current->getId(), $msg, $receiver_id, 'sys']);
|
||||
Db::getInstance()->execute('insert into chat (user_id, msg, receiver_id, type) values (?,?,?,?)', [User::getInstance()->getId(), $msg, $receiver_id, 'sys']);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user