adapt Container usage to new soko-web
This commit is contained in:
23 files changed
+248
-397
No files matched your search
@@ -5,20 +5,12 @@ use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\Challenge;
|
||||
use MapGuesser\PersistentData\Model\Place;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class ChallengeRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $challengeId): ?Challenge
|
||||
{
|
||||
return $this->pdm->selectFromDbById($challengeId, Challenge::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($challengeId, Challenge::class);
|
||||
}
|
||||
|
||||
public function getByToken(int $token): ?Challenge
|
||||
@@ -26,7 +18,7 @@ class ChallengeRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('token', '=', $token);
|
||||
|
||||
return $this->pdm->selectFromDb($select, Challenge::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, Challenge::class);
|
||||
}
|
||||
|
||||
public function getByTokenStr(string $token_str): ?Challenge
|
||||
@@ -50,7 +42,7 @@ class ChallengeRepository
|
||||
$select->innerJoin('users', ['users', 'id'], '=', ['user_in_challenge', 'user_id']);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Challenge::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Challenge::class);
|
||||
}
|
||||
|
||||
public function getAllByOwner(User $user): Generator
|
||||
@@ -61,7 +53,7 @@ class ChallengeRepository
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
$select->where('is_owner', '=', true);
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Challenge::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Challenge::class);
|
||||
}
|
||||
|
||||
public function getAllByPlace(Place $place): Generator
|
||||
@@ -70,6 +62,6 @@ class ChallengeRepository
|
||||
$select->innerJoin('place_in_challenge', ['challenges', 'id'], '=', ['place_in_challenge', 'challenge_id']);
|
||||
$select->where('place_id', '=', $place->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Challenge::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Challenge::class);
|
||||
}
|
||||
}
|
||||
@@ -7,23 +7,15 @@ use MapGuesser\PersistentData\Model\Guess;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use MapGuesser\PersistentData\Model\Place;
|
||||
use MapGuesser\PersistentData\Model\PlaceInChallenge;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class GuessRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getAllByUser(User $user): Generator
|
||||
{
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Guess::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Guess::class);
|
||||
}
|
||||
|
||||
public function getAllByUserAndChallenge(User $user, Challenge $challenge): Generator
|
||||
@@ -33,7 +25,7 @@ class GuessRepository
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Guess::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Guess::class);
|
||||
}
|
||||
|
||||
public function getByUserAndPlaceInChallenge(User $user, Challenge $challenge, Place $place): ?Guess
|
||||
@@ -44,7 +36,7 @@ class GuessRepository
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
$select->where('place_id', '=', $place->getId());
|
||||
|
||||
return $this->pdm->selectFromDb($select, Guess::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, Guess::class);
|
||||
}
|
||||
|
||||
public function getAllInChallengeByUser(int $userId, Challenge $challenge): Generator
|
||||
@@ -55,7 +47,7 @@ class GuessRepository
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
$select->orderBy('round');
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Guess::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Guess::class);
|
||||
}
|
||||
|
||||
public function getAllInChallenge(Challenge $challenge, array $withRelations = []): Generator
|
||||
@@ -69,7 +61,7 @@ class GuessRepository
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
$select->orderBy('round');
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Guess::class, true, $withRelations);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Guess::class, true, $withRelations);
|
||||
}
|
||||
|
||||
public function getAllInChallengeByRound(int $round, Challenge $challenge, array $withRelations = []): Generator
|
||||
@@ -83,7 +75,7 @@ class GuessRepository
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
$select->where('round', '=', $round);
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Guess::class, true, $withRelations);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Guess::class, true, $withRelations);
|
||||
}
|
||||
|
||||
public function getAllByPlace(Place $place): Generator
|
||||
@@ -92,6 +84,6 @@ class GuessRepository
|
||||
$select->innerJoin('place_in_challenge', ['place_in_challenge', 'id'], '=', ['guesses', 'place_in_challenge_id']);
|
||||
$select->where('place_id', '=', $place->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Guess::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Guess::class);
|
||||
}
|
||||
}
|
||||
@@ -4,20 +4,12 @@ use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\Challenge;
|
||||
use MapGuesser\PersistentData\Model\Map;
|
||||
use MapGuesser\PersistentData\Model\Place;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class MapRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $mapId): ?Map
|
||||
{
|
||||
return $this->pdm->selectFromDbById($mapId, Map::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($mapId, Map::class);
|
||||
}
|
||||
|
||||
public function getByPlace(Place $place): ?Map
|
||||
@@ -33,6 +25,6 @@ class MapRepository
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
$select->limit(1);
|
||||
|
||||
return $this->pdm->selectFromDb($select, Map::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, Map::class);
|
||||
}
|
||||
}
|
||||
@@ -4,20 +4,12 @@ use DateTime;
|
||||
use Generator;
|
||||
use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\MultiRoom;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class MultiRoomRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $id): ?MultiRoom
|
||||
{
|
||||
return $this->pdm->selectFromDbById($id, MultiRoom::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($id, MultiRoom::class);
|
||||
}
|
||||
|
||||
public function getByRoomId(string $roomId): ?MultiRoom
|
||||
@@ -25,7 +17,7 @@ class MultiRoomRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('room_id', '=', $roomId);
|
||||
|
||||
return $this->pdm->selectFromDb($select, MultiRoom::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, MultiRoom::class);
|
||||
}
|
||||
|
||||
public function getAllExpired(): Generator
|
||||
@@ -33,6 +25,6 @@ class MultiRoomRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('updated', '<', (new DateTime('-7 day'))->format('Y-m-d H:i:s'));
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, MultiRoom::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, MultiRoom::class);
|
||||
}
|
||||
}
|
||||
@@ -5,23 +5,15 @@ use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\Challenge;
|
||||
use MapGuesser\PersistentData\Model\Place;
|
||||
use MapGuesser\PersistentData\Model\PlaceInChallenge;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class PlaceInChallengeRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getAllByPlace(Place $place, array $withRelations = []) : Generator
|
||||
{
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('place_id', '=', $place->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, PlaceInChallenge::class, true, $withRelations);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, PlaceInChallenge::class, true, $withRelations);
|
||||
}
|
||||
|
||||
public function getAllByChallenge(Challenge $challenge) : Generator
|
||||
@@ -29,7 +21,7 @@ class PlaceInChallengeRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, PlaceInChallenge::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, PlaceInChallenge::class);
|
||||
}
|
||||
|
||||
public function getByPlaceAndChallenge(Place $place, Challenge $challenge) : ?PlaceInChallenge
|
||||
@@ -38,7 +30,7 @@ class PlaceInChallengeRepository
|
||||
$select->where('place_id', '=', $place->getId());
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
|
||||
return $this->pdm->selectFromDb($select, PlaceInChallenge::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, PlaceInChallenge::class);
|
||||
}
|
||||
|
||||
public function getByRoundInChallenge(int $round, Challenge $challenge, array $withRelations = []): ?PlaceInChallenge
|
||||
@@ -48,6 +40,6 @@ class PlaceInChallengeRepository
|
||||
$select->orderBy('round');
|
||||
$select->limit(1, $round);
|
||||
|
||||
return $this->pdm->selectFromDb($select, PlaceInChallenge::class, true, $withRelations);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, PlaceInChallenge::class, true, $withRelations);
|
||||
}
|
||||
}
|
||||
@@ -5,20 +5,12 @@ use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\Challenge;
|
||||
use MapGuesser\PersistentData\Model\Map;
|
||||
use MapGuesser\PersistentData\Model\Place;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class PlaceRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $placeId): ?Place
|
||||
{
|
||||
return $this->pdm->selectFromDbById($placeId, Place::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($placeId, Place::class);
|
||||
}
|
||||
|
||||
public function getAllForMap(Map $map): Generator
|
||||
@@ -26,7 +18,7 @@ class PlaceRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('map_id', '=', $map->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Place::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Place::class);
|
||||
}
|
||||
|
||||
//TODO: use Map and User instead of id
|
||||
@@ -99,7 +91,7 @@ class PlaceRepository
|
||||
$select->where('id', 'NOT IN', $exclude);
|
||||
$select->limit(1, $randomOffset);
|
||||
|
||||
return $this->pdm->selectFromDb($select, Place::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, Place::class);
|
||||
}
|
||||
|
||||
// Never visited places
|
||||
@@ -186,7 +178,7 @@ class PlaceRepository
|
||||
$select->orderBy('round');
|
||||
$select->limit(1, $round);
|
||||
|
||||
return $this->pdm->selectFromDb($select, Place::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, Place::class);
|
||||
}
|
||||
|
||||
public function getAllInChallenge(Challenge $challenge): Generator
|
||||
@@ -196,7 +188,7 @@ class PlaceRepository
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
$select->orderBy('round');
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, Place::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, Place::class);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -3,20 +3,12 @@
|
||||
use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use MapGuesser\PersistentData\Model\UserConfirmation;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class UserConfirmationRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $userConfirmationId): ?UserConfirmation
|
||||
{
|
||||
return $this->pdm->selectFromDbById($userConfirmationId, UserConfirmation::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($userConfirmationId, UserConfirmation::class);
|
||||
}
|
||||
|
||||
public function getByToken(string $token): ?UserConfirmation
|
||||
@@ -24,7 +16,7 @@ class UserConfirmationRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('token', '=', $token);
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserConfirmation::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserConfirmation::class);
|
||||
}
|
||||
|
||||
public function getByUser(User $user): ?UserConfirmation
|
||||
@@ -32,6 +24,6 @@ class UserConfirmationRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserConfirmation::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserConfirmation::class);
|
||||
}
|
||||
}
|
||||
@@ -5,23 +5,15 @@ use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\Challenge;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use MapGuesser\PersistentData\Model\UserInChallenge;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class UserInChallengeRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getAllByUser(User $user) : Generator
|
||||
{
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserInChallenge::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserInChallenge::class);
|
||||
}
|
||||
|
||||
public function getAllByChallenge(Challenge $challenge) : Generator
|
||||
@@ -29,7 +21,7 @@ class UserInChallengeRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserInChallenge::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserInChallenge::class);
|
||||
}
|
||||
|
||||
public function getAllByChallengeWithUsers(Challenge $challenge) : Generator
|
||||
@@ -37,7 +29,7 @@ class UserInChallengeRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserInChallenge::class, true, [User::class]);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserInChallenge::class, true, [User::class]);
|
||||
}
|
||||
|
||||
public function getByUserIdAndChallenge(int $userId, Challenge $challenge): ?UserInChallenge
|
||||
@@ -46,7 +38,7 @@ class UserInChallengeRepository
|
||||
$select->where('user_id', '=', $userId);
|
||||
$select->where('challenge_id', '=', $challenge->getId());
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserInChallenge::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserInChallenge::class);
|
||||
}
|
||||
|
||||
public function getByUserIdAndToken(int $userId, string $token_str, array $withRelations = []): ?UserInChallenge
|
||||
@@ -67,7 +59,7 @@ class UserInChallengeRepository
|
||||
$select->where('user_id', '=', $userId);
|
||||
$select->where('token', '=', $token);
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserInChallenge::class, true, $withRelations);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserInChallenge::class, true, $withRelations);
|
||||
}
|
||||
|
||||
public function isUserParticipatingInChallenge(int $userId, Challenge $challenge): bool
|
||||
|
||||
@@ -5,20 +5,12 @@ use Generator;
|
||||
use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use MapGuesser\PersistentData\Model\UserPasswordResetter;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class UserPasswordResetterRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $userConfirmationId): ?UserPasswordResetter
|
||||
{
|
||||
return $this->pdm->selectFromDbById($userConfirmationId, UserPasswordResetter::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($userConfirmationId, UserPasswordResetter::class);
|
||||
}
|
||||
|
||||
public function getByToken(string $token): ?UserPasswordResetter
|
||||
@@ -26,7 +18,7 @@ class UserPasswordResetterRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('token', '=', $token);
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserPasswordResetter::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserPasswordResetter::class);
|
||||
}
|
||||
|
||||
public function getByUser(User $user): ?UserPasswordResetter
|
||||
@@ -34,7 +26,7 @@ class UserPasswordResetterRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserPasswordResetter::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserPasswordResetter::class);
|
||||
}
|
||||
|
||||
public function getAllExpired(): Generator
|
||||
@@ -42,6 +34,6 @@ class UserPasswordResetterRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('expires', '<', (new DateTime())->format('Y-m-d H:i:s'));
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserPasswordResetter::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserPasswordResetter::class);
|
||||
}
|
||||
}
|
||||
@@ -5,23 +5,15 @@ use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use MapGuesser\PersistentData\Model\Place;
|
||||
use MapGuesser\PersistentData\Model\UserPlayedPlace;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class UserPlayedPlaceRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getByUser(User $user): Generator
|
||||
{
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserPlayedPlace::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserPlayedPlace::class);
|
||||
}
|
||||
|
||||
public function getAllByPlace(Place $place): Generator
|
||||
@@ -29,7 +21,7 @@ class UserPlayedPlaceRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('place_id', '=', $place->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserPlayedPlace::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserPlayedPlace::class);
|
||||
}
|
||||
|
||||
public function getAllByUser(User $user) : Generator
|
||||
@@ -37,7 +29,7 @@ class UserPlayedPlaceRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('user_id', '=', $user->getId());
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, UserPlayedPlace::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, UserPlayedPlace::class);
|
||||
}
|
||||
|
||||
public function getByUserIdAndPlaceId(int $userId, int $placeId) : ?UserPlayedPlace
|
||||
@@ -46,6 +38,6 @@ class UserPlayedPlaceRepository
|
||||
$select->where('user_id', '=', $userId);
|
||||
$select->where('place_id', '=', $placeId);
|
||||
|
||||
return $this->pdm->selectFromDb($select, UserPlayedPlace::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, UserPlayedPlace::class);
|
||||
}
|
||||
}
|
||||
@@ -6,20 +6,12 @@ use SokoWeb\Interfaces\Repository\IUserRepository;
|
||||
use SokoWeb\Database\Query\Select;
|
||||
use MapGuesser\PersistentData\Model\Guess;
|
||||
use MapGuesser\PersistentData\Model\User;
|
||||
use SokoWeb\PersistentData\PersistentDataManager;
|
||||
|
||||
class UserRepository implements IUserRepository
|
||||
{
|
||||
private PersistentDataManager $pdm;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->pdm = new PersistentDataManager();
|
||||
}
|
||||
|
||||
public function getById(int $userId): ?User
|
||||
{
|
||||
return $this->pdm->selectFromDbById($userId, User::class);
|
||||
return \Container::$persistentDataManager->selectFromDbById($userId, User::class);
|
||||
}
|
||||
|
||||
public function getByEmail(string $email): ?User
|
||||
@@ -27,7 +19,7 @@ class UserRepository implements IUserRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('email', '=', $email);
|
||||
|
||||
return $this->pdm->selectFromDb($select, User::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, User::class);
|
||||
}
|
||||
|
||||
public function getByGoogleSub(string $sub): ?User
|
||||
@@ -35,7 +27,7 @@ class UserRepository implements IUserRepository
|
||||
$select = new Select(\Container::$dbConnection);
|
||||
$select->where('google_sub', '=', $sub);
|
||||
|
||||
return $this->pdm->selectFromDb($select, User::class);
|
||||
return \Container::$persistentDataManager->selectFromDb($select, User::class);
|
||||
}
|
||||
|
||||
public function getAllInactiveExpired(): Generator
|
||||
@@ -44,7 +36,7 @@ class UserRepository implements IUserRepository
|
||||
$select->where('active', '=', false);
|
||||
$select->where('created', '<', (new DateTime('-1 day'))->format('Y-m-d H:i:s'));
|
||||
|
||||
yield from $this->pdm->selectMultipleFromDb($select, User::class);
|
||||
yield from \Container::$persistentDataManager->selectMultipleFromDb($select, User::class);
|
||||
}
|
||||
|
||||
public function getByGuess(Guess $guess): ?User
|
||||
|
||||
Reference in new issue
Block a user