start Debug
continuous-integration/drone/push Build is failing Details

DataBinding
Matheo HERSAN 2 years ago
parent 4bdcd5dd3e
commit 79db066a03

@ -19,11 +19,12 @@ public partial class App : Application
if (File.Exists(Path.Combine(FilePath, FileName)))
{
MyManager = new Manager(new Stub.DataContract()); //pour utiliser le dataContract comme moyen de persistance.
MyManager = new Manager(new Stub.Stub()); //pour utiliser le dataContract comme moyen de persistance.
}
MyManager.charger();
//MyManager.charger();
MyManager.Admins.Add(MyAdmin);
MyManager.UtilisateurActuel = MyManager.charger();
MainPage = new AppShell();
@ -32,7 +33,7 @@ public partial class App : Application
MyManager.Persistance = new DataContract(); //pour utiliser le stub comme moyen de persistance.
}
MyManager.sauvegarder();
//MyManager.sauvegarder();
Console.WriteLine("sauvegarde faite");
}
}

@ -30,19 +30,25 @@ namespace MangaMap.Model
Admins = new List<Admin>();
Utilisateurs = new List<Utilisateur>();
Oeuvres = new List<Oeuvre>();
UtilisateurActuel = null;
UtilisateurActuel = new Utilisateur();
}
public void charger()
public Utilisateur charger()
{
var donne = Persistance.chargeDonne();
foreach (var item in donne.Item1)
var donnees = Persistance.chargeDonne();
foreach (var item in donnees.Item1)
{
Oeuvres.Add(item);
}
Utilisateurs.AddRange(donne.Item2);
Utilisateurs.AddRange(donnees.Item2);
// récupérer le premier utilisateur de la liste Utilisateurs :
Utilisateur utilisateurActuel = Utilisateurs.FirstOrDefault();
return utilisateurActuel; // Renvoyez l'utilisateur actuel
}
public void sauvegarder()
{
Persistance.sauvegarder(Oeuvres, Utilisateurs);

@ -40,6 +40,13 @@ namespace MangaMap.Model
ListeOeuvreFavorites = new List<Oeuvre>();
}
public Utilisateur() {
ListeOeuvreEnVisionnage = new List<Oeuvre>();
ListeOeuvreDejaVu = new List<Oeuvre>();
ListeOeuvrePourPlusTard = new List<Oeuvre>();
ListeOeuvreFavorites = new List<Oeuvre>();
}
public void SupprimerUtilisateur()
{
this.nom = null;

@ -17,7 +17,7 @@ namespace MangaMap.Stub
List<Oeuvre> l1 = new List<Oeuvre>();
List<Utilisateur> l2 = new List<Utilisateur>();
Utilisateur u1 = new Utilisateur("test@test.ts", "Pseudo1", "MotDePasse123", "Jean", "Baptiste", 12);
Utilisateur u1 = new Utilisateur("t", "Pseudo1", "123", "Jean", "Baptiste", 12);
Utilisateur u2 = new Utilisateur("test@test.ts", "Pseudo2", "MotDePasse123", "Baptiste", "Jean", 12);
Utilisateur u3 = new Utilisateur("test@test.ts", "Pseudo3", "MotDePasse123", "David", "Marc", 12);
List<string> genres = new List<string>();
@ -29,6 +29,8 @@ namespace MangaMap.Stub
l1.Add(o1); l1.Add(o2);
l2.Add(u1); l2.Add(u2); l2.Add(u3);
u1.ListeOeuvreEnVisionnage.Add(o1);
return (l1, l2);
}

@ -1,6 +1,7 @@
namespace MangaMap.Views;
using Model;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Linq;
public partial class ficheAnime : ContentPage, INotifyPropertyChanged
@ -35,7 +36,15 @@ public partial class ficheAnime : ContentPage, INotifyPropertyChanged
return;
}
if (my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage == null)
{
// Initialisez la liste si elle est nulle
//my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage = new List<Oeuvre>();
}
Debug.WriteLine("Iciii");
my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage.Add(AnimeModel);
Debug.WriteLine("Okkkkkkkkkkkk");
// Naviguez vers la page de la fiche d'anime en passant l'objet sélectionné
await Navigation.PushAsync(new listPage());
}

@ -40,7 +40,6 @@
<ScrollView Grid.Row="1" VerticalScrollBarVisibility="Always">
<VerticalStackLayout BindableLayout.ItemsSource="{Binding ListeOeuvreEnVisionnage}" Spacing="10">
<BindableLayout.ItemTemplate>
<DataTemplate>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">

@ -27,11 +27,11 @@ public partial class loginPage : ContentPage
}
// Vérifier que l'e-mail a la bonne forme
if (!Regex.IsMatch(email, @"^[^@\s]+@[^@\s]+\.[^@\s]+$"))
/*if (!Regex.IsMatch(email, @"^[^@\s]+@[^@\s]+\.[^@\s]+$"))
{
await DisplayAlert("Erreur", "L'email n'est pas valide.", "OK");
return;
}
}*/
// Vérifier que l'utilisateur existe
Utilisateur utilisateur = my_manager.Utilisateurs.FirstOrDefault(u => u.Email == email && u.MotDePasse == password);

Loading…
Cancel
Save