From dca28921fcff64040a2a8f78ed29aae8296d8334 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20LAVERGNE?= Date: Sat, 15 Jun 2024 23:46:03 +0200 Subject: [PATCH] Display the profile picture and pseudo on the Main Page only if connected --- .../GameAtlas/GameAtlas/Views/PageAccueil.xaml | 11 ++++++----- .../GameAtlas/Views/PageAccueil.xaml.cs | 2 +- .../GameAtlas/Views/PageConnexion.xaml.cs | 2 ++ .../GameAtlas/GameAtlas/Views/PageProfil.xaml.cs | 1 + Sources/GameAtlas/Models/Manager.cs | 16 ++++++++++++++++ 5 files changed, 26 insertions(+), 6 deletions(-) diff --git a/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml b/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml index 0005956..d408c65 100644 --- a/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml +++ b/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml @@ -23,7 +23,7 @@ RowDefinitions="auto, auto, auto, auto, auto, auto, *"> - + @@ -35,11 +35,12 @@ - + - + @@ -52,7 +53,7 @@ /> - + @@ -106,7 +107,7 @@ /> - + diff --git a/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml.cs b/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml.cs index d095d00..a879d69 100644 --- a/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml.cs +++ b/Sources/GameAtlas/GameAtlas/Views/PageAccueil.xaml.cs @@ -16,7 +16,7 @@ public partial class PageAcceuil : ContentPage { InitializeComponent(); - BindingContext = this; + BindingContext = AccueilManager; } private async void OnProfil_Tapped(object sender, EventArgs e) diff --git a/Sources/GameAtlas/GameAtlas/Views/PageConnexion.xaml.cs b/Sources/GameAtlas/GameAtlas/Views/PageConnexion.xaml.cs index fabb959..d1ec8bc 100644 --- a/Sources/GameAtlas/GameAtlas/Views/PageConnexion.xaml.cs +++ b/Sources/GameAtlas/GameAtlas/Views/PageConnexion.xaml.cs @@ -110,6 +110,7 @@ public partial class PageConnexion : ContentPage { Debug.WriteLine("Mot de Passe verifié et valide"); ConnexionManager.ConnectedUser = user; + ConnexionManager.IsConnected = true; return true; } } @@ -117,6 +118,7 @@ public partial class PageConnexion : ContentPage Debug.WriteLine("La connexion a échoué (pseudo ou mot de passe invalide)"); DisplayAlert("Erreur", "Utilisateur ou Mot de Passe invalide.", "Ok"); ConnexionManager.ConnectedUser = null; + ConnexionManager.IsConnected = false; return false; } diff --git a/Sources/GameAtlas/GameAtlas/Views/PageProfil.xaml.cs b/Sources/GameAtlas/GameAtlas/Views/PageProfil.xaml.cs index fdd336a..9a77e1a 100644 --- a/Sources/GameAtlas/GameAtlas/Views/PageProfil.xaml.cs +++ b/Sources/GameAtlas/GameAtlas/Views/PageProfil.xaml.cs @@ -74,5 +74,6 @@ public partial class PageProfil : ContentPage { await Shell.Current.GoToAsync("//page/PageAccueil"); ProfilManager.ConnectedUser = null; + ProfilManager.IsConnected = false; } } \ No newline at end of file diff --git a/Sources/GameAtlas/Models/Manager.cs b/Sources/GameAtlas/Models/Manager.cs index d5f122e..5256ece 100644 --- a/Sources/GameAtlas/Models/Manager.cs +++ b/Sources/GameAtlas/Models/Manager.cs @@ -78,6 +78,20 @@ namespace Models } } + private bool _isConnected; + /// + /// Indique si un utilisateur est connecté sur l'application. + /// + public bool IsConnected + { + get => _isConnected; + set + { + _isConnected = value; + OnPropertyChanged(); + } + } + /// /// Gestionnaire de persistance utilisé pour charger et sauvegarder les donnees. /// @@ -116,6 +130,7 @@ namespace Models Admins = new List(); ListJeux = new ObservableCollection(); Persistance = persistance; + IsConnected = false; ConnectedUser = null; } @@ -127,6 +142,7 @@ namespace Models ListJeux = new ObservableCollection(); Admins = new List(); Utilisateurs = new List(); + IsConnected = false; ConnectedUser = null; }