1
0
Fork 0
mirror of https://codeberg.org/demostf/api.git synced 2026-06-03 18:04:08 +02:00

remove depricated dbal usage

This commit is contained in:
Robin Appelman 2022-05-15 19:02:48 +02:00
commit eb997b5ba2
7 changed files with 38 additions and 34 deletions

View file

@ -43,4 +43,12 @@ class ChatMessage implements JsonSerializable {
'message' => $this->message, 'message' => $this->message,
]; ];
} }
public static function fromRow(array $row): ChatMessage {
return new ChatMessage(
$row['from'],
(int) $row['time'],
$row['text']
);
}
} }

View file

@ -19,15 +19,11 @@ class ChatProvider extends BaseProvider {
->orderBy('time', 'ASC') ->orderBy('time', 'ASC')
->addOrderBy('id', 'ASC'); ->addOrderBy('id', 'ASC');
$result = $query->execute(); $result = $query->executeQuery();
return array_map(function (array $row) { return array_map(function (array $row) {
return new ChatMessage( return ChatMessage::fromRow($row);
$row['from'], }, $result->fetchAllAssociative());
(int) $row['time'],
$row['text']
);
}, $result->fetchAll());
} }
public function storeChatMessage(int $demoId, ChatMessage $message): void { public function storeChatMessage(int $demoId, ChatMessage $message): void {
@ -39,6 +35,6 @@ class ChatProvider extends BaseProvider {
'"from"' => $query->createNamedParameter($message->getUser()), '"from"' => $query->createNamedParameter($message->getUser()),
'time' => $query->createNamedParameter($message->getTime(), PDO::PARAM_INT), 'time' => $query->createNamedParameter($message->getTime(), PDO::PARAM_INT),
]); ]);
$query->execute(); $query->executeStatement();
} }
} }

View file

@ -17,14 +17,14 @@ class DemoListProvider extends BaseProvider {
* *
* @return Demo[] * @return Demo[]
*/ */
public function listUploads(string $steamId, int $page, array $where = [], string $order = 'DESC') { public function listUploads(string $steamId, int $page, array $where = [], string $order = 'DESC'): array {
$query = $this->getQueryBuilder(); $query = $this->getQueryBuilder();
$query->select('id') $query->select('id')
->from('users') ->from('users')
->where($query->expr()->eq('steamid', $query->createNamedParameter($steamId, PDO::PARAM_STR))); ->where($query->expr()->eq('steamid', $query->createNamedParameter($steamId, PDO::PARAM_STR)));
$result = $query->execute(); $result = $query->executeQuery();
$userId = $result->fetch(PDO::FETCH_COLUMN); $userId = $result->fetchOne();
$result->free(); $result->free();
$where['uploader'] = $userId; $where['uploader'] = $userId;
@ -48,8 +48,8 @@ class DemoListProvider extends BaseProvider {
->from('users') ->from('users')
->where($query->expr()->in('steamid', ->where($query->expr()->in('steamid',
$query->createNamedParameter($players, Connection::PARAM_STR_ARRAY))); $query->createNamedParameter($players, Connection::PARAM_STR_ARRAY)));
$result = $query->execute(); $result = $query->executeQuery();
$userIds = $result->fetchAll(PDO::FETCH_COLUMN); $userIds = $result->fetchFirstColumn();
$result->free(); $result->free();
$query = $this->getQueryBuilder(); $query = $this->getQueryBuilder();
@ -80,8 +80,8 @@ class DemoListProvider extends BaseProvider {
$this->addWhere($query, $where); $this->addWhere($query, $where);
} }
$result = $query->execute(); $result = $query->executeQuery();
$demoIds = $result->fetchAll(PDO::FETCH_COLUMN); $demoIds = $result->fetchFirstColumn();
$result->free(); $result->free();
$query = $this->getQueryBuilder(); $query = $this->getQueryBuilder();
@ -149,7 +149,7 @@ class DemoListProvider extends BaseProvider {
->setMaxResults(50) ->setMaxResults(50)
->setFirstResult($offset); ->setFirstResult($offset);
$demos = $query->execute()->fetchAll(PDO::FETCH_ASSOC); $demos = $query->executeQuery()->fetchAllAssociative();
return $this->formatList($demos); return $this->formatList($demos);
} }

View file

@ -26,7 +26,7 @@ class DemoProvider extends BaseProvider {
$query->select('*') $query->select('*')
->from('demos') ->from('demos')
->where($query->expr()->eq('id', $query->createNamedParameter($id, PDO::PARAM_INT))); ->where($query->expr()->eq('id', $query->createNamedParameter($id, PDO::PARAM_INT)));
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
return $row ? Demo::fromRow($row) : null; return $row ? Demo::fromRow($row) : null;
} }
@ -47,7 +47,7 @@ class DemoProvider extends BaseProvider {
if ($fetchDetails) { if ($fetchDetails) {
$uploader = $this->userProvider->getById($demo->getUploader()); $uploader = $this->userProvider->getById($demo->getUploader());
$playerQuery = $this->connection->executeQuery($sql, [$demo->getId()]); $playerQuery = $this->connection->executeQuery($sql, [$demo->getId()]);
$players = $playerQuery->fetchAll(PDO::FETCH_ASSOC); $players = $playerQuery->fetchAllAssociative();
$demo->setUploaderUser($uploader); $demo->setUploaderUser($uploader);
$uniquePlayers = []; $uniquePlayers = [];
@ -71,7 +71,7 @@ class DemoProvider extends BaseProvider {
->from('demos') ->from('demos')
->where($query->expr()->eq('hash', $query->createNamedParameter($hash))); ->where($query->expr()->eq('hash', $query->createNamedParameter($hash)));
return (int) $query->execute()->fetchOne(); return (int) $query->executeQuery()->fetchOne();
} }
public function storeDemo(Demo $demo, string $backend, string $path): int { public function storeDemo(Demo $demo, string $backend, string $path): int {
@ -97,7 +97,7 @@ class DemoProvider extends BaseProvider {
'"playerCount"' => $query->createNamedParameter($demo->getPlayerCount(), PDO::PARAM_INT), '"playerCount"' => $query->createNamedParameter($demo->getPlayerCount(), PDO::PARAM_INT),
'hash' => $query->createNamedParameter($demo->getHash()), 'hash' => $query->createNamedParameter($demo->getHash()),
]) ])
->execute(); ->executeStatement();
return (int) $this->connection->lastInsertId(); return (int) $this->connection->lastInsertId();
} }
@ -109,6 +109,6 @@ class DemoProvider extends BaseProvider {
->set('url', $query->createNamedParameter($url)) ->set('url', $query->createNamedParameter($url))
->set('path', $query->createNamedParameter($path)) ->set('path', $query->createNamedParameter($path))
->where($query->expr()->eq('id', $query->createNamedParameter($id, PDO::PARAM_INT))) ->where($query->expr()->eq('id', $query->createNamedParameter($id, PDO::PARAM_INT)))
->execute(); ->executeStatement();
} }
} }

View file

@ -15,9 +15,9 @@ class InfoProvider extends BaseProvider {
$query->select('map') $query->select('map')
->from('map_list') ->from('map_list')
->orderBy('count', 'DESC'); ->orderBy('count', 'DESC');
$result = $query->execute(); $result = $query->executeQuery();
return $result->fetchAll(PDO::FETCH_COLUMN); return $result->fetchFirstColumn();
} }
private function count(string $table): int { private function count(string $table): int {
@ -25,7 +25,7 @@ class InfoProvider extends BaseProvider {
$query->select('count(*)') $query->select('count(*)')
->from($table); ->from($table);
return $query->execute()->fetch(PDO::FETCH_COLUMN); return $query->executeQuery()->fetchOne();
} }
/** /**

View file

@ -21,7 +21,7 @@ class PlayerProvider extends BaseProvider {
'assists' => $query->createNamedParameter($player->getAssists()), 'assists' => $query->createNamedParameter($player->getAssists()),
'deaths' => $query->createNamedParameter($player->getDeaths()), 'deaths' => $query->createNamedParameter($player->getDeaths()),
]); ]);
$query->execute(); $query->executeStatement();
return (int) $this->connection->lastInsertId(); return (int) $this->connection->lastInsertId();
} }

View file

@ -38,7 +38,7 @@ class UserProvider extends BaseProvider {
'avatar' => $query->createNamedParameter(''), 'avatar' => $query->createNamedParameter(''),
'token' => $query->createNamedParameter($token), 'token' => $query->createNamedParameter($token),
])->add('orderBy', 'ON CONFLICT DO NOTHING')// hack to append arbitrary string to sql ])->add('orderBy', 'ON CONFLICT DO NOTHING')// hack to append arbitrary string to sql
->execute(); ->executeStatement();
$user = $this->get($steamId->getSteamId64()); $user = $this->get($steamId->getSteamId64());
@ -53,7 +53,7 @@ class UserProvider extends BaseProvider {
->from('users_named') ->from('users_named')
->where($query->expr()->eq('steamid', $query->createNamedParameter($steamid))); ->where($query->expr()->eq('steamid', $query->createNamedParameter($steamid)));
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
if (!$row) { if (!$row) {
// if the user is newly inserted it wont be in our view yet // if the user is newly inserted it wont be in our view yet
@ -63,7 +63,7 @@ class UserProvider extends BaseProvider {
->from('users') ->from('users')
->where($query->expr()->eq('steamid', $query->createNamedParameter($steamid))); ->where($query->expr()->eq('steamid', $query->createNamedParameter($steamid)));
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
} }
return $row ? User::fromRow($row) : null; return $row ? User::fromRow($row) : null;
@ -80,7 +80,7 @@ class UserProvider extends BaseProvider {
->from('users_named') ->from('users_named')
->where($query->expr()->eq('id', $query->createNamedParameter($userId, \PDO::PARAM_INT))); ->where($query->expr()->eq('id', $query->createNamedParameter($userId, \PDO::PARAM_INT)));
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
if (!$row) { if (!$row) {
// if the user is newly inserted it wont be in our view yet // if the user is newly inserted it wont be in our view yet
@ -90,7 +90,7 @@ class UserProvider extends BaseProvider {
->from('users') ->from('users')
->where($query->expr()->eq('id', $query->createNamedParameter($userId, \PDO::PARAM_INT))); ->where($query->expr()->eq('id', $query->createNamedParameter($userId, \PDO::PARAM_INT)));
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
} }
return $row ? User::fromRow($row) : null; return $row ? User::fromRow($row) : null;
@ -106,7 +106,7 @@ class UserProvider extends BaseProvider {
->orderBy('count(demo_id)', 'DESC') ->orderBy('count(demo_id)', 'DESC')
->setMaxResults(1); ->setMaxResults(1);
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
if ($row) { if ($row) {
return new SteamUser($row['id'], $row['steamid'], $row['name']); return new SteamUser($row['id'], $row['steamid'], $row['name']);
} else { } else {
@ -132,8 +132,8 @@ class UserProvider extends BaseProvider {
->orWhere($query->expr()->comparison('name', '~*', $nameParameter)) ->orWhere($query->expr()->comparison('name', '~*', $nameParameter))
->orderBy('count', 'DESC') ->orderBy('count', 'DESC')
->setMaxResults(100); ->setMaxResults(100);
$result = $query->execute(); $result = $query->executeQuery();
$players = $result->fetchAll(PDO::FETCH_ASSOC); $players = $result->fetchAllAssociative();
usort($players, function ($b, $a) use ($query) { usort($players, function ($b, $a) use ($query) {
if ($a['steamid'] === $query && $a['steamid'] !== $query) { if ($a['steamid'] === $query && $a['steamid'] !== $query) {
@ -166,7 +166,7 @@ class UserProvider extends BaseProvider {
->from('users') ->from('users')
->where($query->expr()->eq('token', $query->createNamedParameter($key))); ->where($query->expr()->eq('token', $query->createNamedParameter($key)));
$row = $query->execute()->fetch(); $row = $query->executeQuery()->fetchAssociative();
return $row ? User::fromRow($row) : null; return $row ? User::fromRow($row) : null;
} }