You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.9 KiB
67 lines
1.9 KiB
using System.Collections.ObjectModel;
|
|
using System.Linq;
|
|
|
|
namespace Model
|
|
{
|
|
public class Manager
|
|
{
|
|
public IPersistance Mgrpersistance
|
|
{
|
|
get { return mgrpersistance; }
|
|
set { mgrpersistance = value; }
|
|
}
|
|
private IPersistance mgrpersistance;
|
|
public ObservableCollection<Game> GameList { get;}
|
|
public ObservableCollection<Game> ResearchedGame { get; set; }
|
|
public User CurrentUser { get; set; }
|
|
public HashSet<User> Users { get; set; }
|
|
|
|
public Manager(IPersistance persistance)
|
|
{
|
|
Mgrpersistance = persistance;
|
|
CurrentUser = new User("","", "", "", "Azerty123*");
|
|
GameList = persistance.LoadGame();
|
|
ResearchedGame = persistance.LoadGame();
|
|
Users = persistance.LoadUser();
|
|
if (GameList == null)
|
|
{
|
|
GameList = new ObservableCollection<Game>();
|
|
}
|
|
}
|
|
|
|
public void AddGametoGamesList(Game game)
|
|
{
|
|
GameList.Add(game);
|
|
Mgrpersistance.SaveGame(GameList);
|
|
}
|
|
public void AddUsertoUserList(User user)
|
|
{
|
|
Users.Add(user);
|
|
Mgrpersistance.SaveUser(Users);
|
|
}
|
|
|
|
public void RemoveGameFromGamesList(Game game)
|
|
{
|
|
GameList.Remove(game);
|
|
Mgrpersistance.SaveGame(GameList);
|
|
}
|
|
|
|
public void SaveGames()
|
|
{
|
|
Mgrpersistance.SaveGame(GameList);
|
|
}
|
|
public User? SearchUser(string username)
|
|
{
|
|
foreach (User user in Users)
|
|
{
|
|
if (user.Username == username) return user;
|
|
}
|
|
return null;
|
|
}
|
|
public void SaveUser()
|
|
{
|
|
Mgrpersistance.SaveUser(Users);
|
|
}
|
|
}
|
|
}
|