mirror of
https://codeberg.org/demostf/api.git
synced 2026-06-03 09:54:17 +02:00
fix listing by unknown users
This commit is contained in:
parent
3c47087cad
commit
bfaaaa17d7
1 changed files with 8 additions and 3 deletions
|
|
@ -40,12 +40,14 @@ class DemoListProvider extends BaseProvider {
|
||||||
* @return Demo[]
|
* @return Demo[]
|
||||||
*/
|
*/
|
||||||
public function listProfile(int $page, array $where = [], string $order = 'DESC'): array {
|
public function listProfile(int $page, array $where = [], string $order = 'DESC'): array {
|
||||||
|
$players = $where['players'];
|
||||||
|
unset($where['players']);
|
||||||
|
|
||||||
$query = $this->getQueryBuilder();
|
$query = $this->getQueryBuilder();
|
||||||
$query->select('id')
|
$query->select('id')
|
||||||
->from('users')
|
->from('users')
|
||||||
->where($query->expr()->in('steamid',
|
->where($query->expr()->in('steamid',
|
||||||
$query->createNamedParameter($where['players'], Connection::PARAM_STR_ARRAY)));
|
$query->createNamedParameter($players, Connection::PARAM_STR_ARRAY)));
|
||||||
unset($where['players']);
|
|
||||||
$result = $query->execute();
|
$result = $query->execute();
|
||||||
$userIds = $result->fetchAll(PDO::FETCH_COLUMN);
|
$userIds = $result->fetchAll(PDO::FETCH_COLUMN);
|
||||||
$result->free();
|
$result->free();
|
||||||
|
|
@ -54,7 +56,10 @@ class DemoListProvider extends BaseProvider {
|
||||||
$query->select('p.demo_id')
|
$query->select('p.demo_id')
|
||||||
->from('players', 'p');
|
->from('players', 'p');
|
||||||
|
|
||||||
if (\count($userIds) > 1) {
|
if (\count($userIds) != count($players)) {
|
||||||
|
// one of more user ids don't have any demos
|
||||||
|
return [];
|
||||||
|
} else if (\count($userIds) > 1) {
|
||||||
$query->where($query->expr()->in('user_id',
|
$query->where($query->expr()->in('user_id',
|
||||||
$query->createNamedParameter($userIds, Connection::PARAM_INT_ARRAY)))
|
$query->createNamedParameter($userIds, Connection::PARAM_INT_ARRAY)))
|
||||||
->groupBy('demo_id')
|
->groupBy('demo_id')
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue