Cleaner code ♻️
continuous-integration/drone/push Build is passing Details

deployed
Emre KARTAL 2 years ago
parent 891c661dbb
commit f49ef5bac5

@ -11,7 +11,7 @@ abstract class IManager {
late final IUserManager _userMgr; late final IUserManager _userMgr;
late final IGameManager _gameMgr; late final IGameManager _gameMgr;
// Getters and setters // Getters and settersz
User get userCurrent => _userCurrent; User get userCurrent => _userCurrent;
set userCurrent(User user) { set userCurrent(User user) {

@ -31,32 +31,22 @@ class GameManager extends IGameManager {
await parent.database.createGameDetail(gameDetail); await parent.database.createGameDetail(gameDetail);
} }
@override
List<GameDetail> getGamesByPlayerId(int id) { List<GameDetail> getGamesByPlayerId(int id) {
List<GameDetail> games = []; return parent.gameDetails.where((element) =>
for (var element in parent.gameDetails) { element.players.any((player) => player is User && player.id == id)
for (Player player in element.players) { ).toList();
if (player is User && player.id == id) {
games.add(element);
break;
}
}
}
return games;
} }
@override
List<GameDetail> getGamesByPlayer(Player user) { List<GameDetail> getGamesByPlayer(Player user) {
List<GameDetail> games = []; return parent.gameDetails
for (var element in parent.gameDetails) { .where((element) =>
for (Player player in element.players) { element.players.any((player) => player is User && user is User && player.id == user.id))
if (player is User && user is User && player.id == user.id) { .toList();
games.add(element);
break;
}
}
}
return games;
} }
@override
List<GameDetail> getGamesByPlayers(List<Player> users) { List<GameDetail> getGamesByPlayers(List<Player> users) {
List<GameDetail> games = []; List<GameDetail> games = [];
for (var element in parent.gameDetails) { for (var element in parent.gameDetails) {
@ -67,19 +57,16 @@ class GameManager extends IGameManager {
return games; return games;
} }
@override
List<Player> getPlayersByIdGame(int id) { List<Player> getPlayersByIdGame(int id) {
List<Player> players = []; final gameDetails = parent.gameDetails.firstWhere(
for (var element in parent.gameDetails) { (element) => element.id == id,
if (element.id == id) { orElse: () => throw Exception("Game not found.")
for (var player in element.players) { );
players.add(player); return gameDetails.players;
}
return players;
}
}
throw Exception("Game not found.");
} }
@override
Map<Player, int> getRankByIdGame(int id) { Map<Player, int> getRankByIdGame(int id) {
for (var game in parent.gameDetails) { for (var game in parent.gameDetails) {
if (game.id == id) { if (game.id == id) {

@ -27,6 +27,7 @@ class UserManager extends IUserManager {
} }
} }
@override
saveUser(User user) async { saveUser(User user) async {
var result = await parent.database.readUser(0); var result = await parent.database.readUser(0);
if (result == null) { if (result == null) {
@ -36,15 +37,6 @@ class UserManager extends IUserManager {
} }
} }
Map<String, dynamic> userToMap(User user) {
return {
'_id': user.id,
'name': user.name,
'image': user.image,
'_mail': user.mail,
};
}
@override @override
List<User> getRankingWithFriends() { List<User> getRankingWithFriends() {
List<User> sortedPlayers = List.from(parent.userCurrent.friends); List<User> sortedPlayers = List.from(parent.userCurrent.friends);
@ -54,13 +46,11 @@ class UserManager extends IUserManager {
@override @override
Player getUserById(int id) { Player getUserById(int id) {
// TODO: implement getUserById
throw UnimplementedError(); throw UnimplementedError();
} }
@override @override
List<Player> getUsersByName(String name) { List<Player> getUsersByName(String name) {
// TODO: implement getUsersByName
throw UnimplementedError(); throw UnimplementedError();
} }
} }

@ -13,6 +13,7 @@ class UserManager extends IUserManager {
UserManager(this.parent) : super(AuthManager(parent)); UserManager(this.parent) : super(AuthManager(parent));
// Methods // Methods
@override
List<Player> getUsersByName(String name) { List<Player> getUsersByName(String name) {
List<Player> players = []; List<Player> players = [];
for (var player in parent.players) { for (var player in parent.players) {
@ -23,6 +24,7 @@ class UserManager extends IUserManager {
return players; return players;
} }
@override
Player getUserById(int id) { Player getUserById(int id) {
for (var player in parent.players) { for (var player in parent.players) {
if (player is User && player.id == id) { if (player is User && player.id == id) {

Loading…
Cancel
Save