passage du selectedgame dans le manager

Popup_qui_marche_pas
Anthony RICHARD 2 years ago
parent cd90803e9c
commit b1ce8f74e7

@ -5,28 +5,19 @@ namespace Model
{ {
public class Manager public class Manager
{ {
public IPersistance Mgrpersistance private IPersistance Mgrpersistance { get; set; }
{ public ObservableCollection<Game> GameList { get; set; }
get { return mgrpersistance; }
set { mgrpersistance = value; }
}
private IPersistance mgrpersistance;
public ObservableCollection<Game> GameList { get;}
public ObservableCollection<Game> ResearchedGame { get; set; } public ObservableCollection<Game> ResearchedGame { get; set; }
public User CurrentUser { get; set; } public Game? SelectedGame { get; set; }
public User? CurrentUser { get; set; }
public HashSet<User> Users { get; set; } public HashSet<User> Users { get; set; }
public Manager(IPersistance persistance) public Manager(IPersistance persistance)
{ {
Mgrpersistance = persistance; Mgrpersistance = persistance;
CurrentUser = new User("","", "", "", "Azerty123*");
GameList = persistance.LoadGame(); GameList = persistance.LoadGame();
ResearchedGame = persistance.LoadGame(); ResearchedGame = persistance.LoadGame();
Users = persistance.LoadUser(); Users = persistance.LoadUser();
if (GameList == null)
{
GameList = new ObservableCollection<Game>();
}
} }
public void AddGametoGamesList(Game game) public void AddGametoGamesList(Game game)

@ -6,16 +6,19 @@ namespace Stim;
public partial class DetailledPage : ContentPage public partial class DetailledPage : ContentPage
{ {
public Game CurrGame { get; set; } private Game currentGame;
public DetailledPage(Game game)
public DetailledPage()
{ {
InitializeComponent(); InitializeComponent();
BindingContext = game; currentGame = (App.Current as App).Manager.SelectedGame;
CurrGame= game; BindingContext = currentGame;
if (CurrGame != null)
if (currentGame is null) Navigation.PopAsync();
else
{ {
avgLabel.Text = game.GetAvgRate().ToString(); avgLabel.Text = currentGame.GetAvgRate().ToString();
AddStars(starsContainer, game.GetAvgRate()); AddStars(starsContainer, currentGame.GetAvgRate());
} }
} }
@ -46,6 +49,6 @@ public partial class DetailledPage : ContentPage
private async void AddFollow(object sender, EventArgs e) private async void AddFollow(object sender, EventArgs e)
{ {
await this.ShowPopupAsync(new MessagePopup("Jeu ajouté dans les suivis !")); await this.ShowPopupAsync(new MessagePopup("Jeu ajouté dans les suivis !"));
((App)App.Current).Manager.CurrentUser.FollowAGame(CurrGame); ((App)App.Current).Manager.CurrentUser.FollowAGame(currentGame);
} }
} }

@ -12,6 +12,7 @@ public partial class FollowPage : ContentPage
public async void GoToDetail(object sender, EventArgs e) public async void GoToDetail(object sender, EventArgs e)
{ {
await Navigation.PushAsync(new DetailledPage((sender as CollectionView).SelectedItem as Game)); (App.Current as App).Manager.SelectedGame = (sender as CollectionView).SelectedItem as Game;
await Navigation.PushAsync(new DetailledPage());
} }
} }

@ -17,7 +17,8 @@ public partial class MainPage : ContentPage
private async void OnClickGameList(object sender, EventArgs e) private async void OnClickGameList(object sender, EventArgs e)
{ {
await Navigation.PushAsync(new DetailledPage((sender as CollectionView).SelectedItem as Game)); (App.Current as App).Manager.SelectedGame = (sender as CollectionView).SelectedItem as Game;
await Navigation.PushAsync(new DetailledPage());
} }
private async void GoToAddGamePage(object sender, EventArgs e) private async void GoToAddGamePage(object sender, EventArgs e)

Loading…
Cancel
Save