Merged
continuous-integration/drone/push Build is failing Details

pull/26/head
Matheo HERSAN 2 years ago
commit 2ff103dba4

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

@ -24,7 +24,6 @@ public partial class App : Application
MyManager.charger(); MyManager.charger();
MyManager.Admins.Add(MyAdmin); MyManager.Admins.Add(MyAdmin);
//MyManager.UtilisateurActuel = MyManager.charger();
MainPage = new AppShell(); MainPage = new AppShell();

@ -3,7 +3,7 @@
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MangaMap.NewContent1" x:Class="MangaMap.NewContent1"
Background="{StaticResource Primary}"> Background="{StaticResource Primary}">
<Grid ColumnDefinitions="50, *, 40"> <Grid ColumnDefinitions="50, *,40, 40">
<ImageButton Source="logo.png" <ImageButton Source="logo.png"
MaximumHeightRequest="30" MaximumHeightRequest="30"
MaximumWidthRequest="30" MaximumWidthRequest="30"
@ -11,6 +11,13 @@
Clicked="ImageButton_Clicked"/> Clicked="ImageButton_Clicked"/>
<ImageButton Grid.Column="2" <ImageButton Grid.Column="2"
Source="account_circle.png"
MaximumHeightRequest="30"
MaximumWidthRequest="30"
VerticalOptions="Center"
Clicked="AccountButton_Clicked"/>
<ImageButton Grid.Column="3"
Source="settings.png" Source="settings.png"
MaximumHeightRequest="30" MaximumHeightRequest="30"
MaximumWidthRequest="30" MaximumWidthRequest="30"

@ -18,4 +18,9 @@ public partial class NewContent1 : ContentView
{ {
await Shell.Current.GoToAsync("//page/secondaire/settingsPage"); await Shell.Current.GoToAsync("//page/secondaire/settingsPage");
} }
async void AccountButton_Clicked(object sender, System.EventArgs e)
{
await Shell.Current.GoToAsync("//page/secondaire/connexionPage");
}
} }

@ -58,6 +58,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Remove="Resources\Images\account_circle.png" />
<None Remove="Resources\Images\Evangelion.jpg" /> <None Remove="Resources\Images\Evangelion.jpg" />
<None Remove="Resources\Images\logo.png" /> <None Remove="Resources\Images\logo.png" />
<None Remove="Resources\Images\settings.png" /> <None Remove="Resources\Images\settings.png" />

@ -20,7 +20,7 @@ namespace MangaMap.Model
Admins = new List<Admin>(); Admins = new List<Admin>();
Utilisateurs = new List<Utilisateur>(); Utilisateurs = new List<Utilisateur>();
Oeuvres = new List<Oeuvre>(); Oeuvres = new List<Oeuvre>();
UtilisateurActuel = null; UtilisateurActuel = new Utilisateur();
Persistance = Pers; Persistance = Pers;
} }

@ -19,11 +19,11 @@ namespace MangaMap.Model
[DataMember] [DataMember]
public List<Oeuvre> ListeOeuvreEnVisionnage { get; set; } public List<Oeuvre> ListeOeuvreEnVisionnage { get; set; }
[DataMember] [DataMember]
public List<Oeuvre> ListeOeuvreDejaVu { get; private set; } public List<Oeuvre> ListeOeuvreDejaVu { get; set; }
[DataMember] [DataMember]
public List<Oeuvre> ListeOeuvrePourPlusTard { get; private set; } public List<Oeuvre> ListeOeuvrePourPlusTard { get; set; }
[DataMember] [DataMember]
public List<Oeuvre> ListeOeuvreFavorites { get; private set; } public List<Oeuvre> ListeOeuvreFavorites { get; set; }
public Utilisateur(string email, string pseudo, string mdp, string nom, string prenom, int age) public Utilisateur(string email, string pseudo, string mdp, string nom, string prenom, int age)
{ {

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

@ -17,7 +17,7 @@ namespace MangaMap.Stub
List<Oeuvre> l1 = new List<Oeuvre>(); List<Oeuvre> l1 = new List<Oeuvre>();
List<Utilisateur> l2 = new List<Utilisateur>(); List<Utilisateur> l2 = new List<Utilisateur>();
Utilisateur u1 = new Utilisateur("test@test.tst", "Pseudo1", "MotDePasse123", "Jean", "Baptiste", 12); Utilisateur u1 = new Utilisateur("t", "Pseudo1", "t", "Jean", "Baptiste", 12);
Utilisateur u2 = new Utilisateur("test@test.ts", "Pseudo2", "MotDePasse123", "Baptiste", "Jean", 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); Utilisateur u3 = new Utilisateur("test@test.ts", "Pseudo3", "MotDePasse123", "David", "Marc", 12);
List<string> genres = new List<string>(); List<string> genres = new List<string>();

@ -32,7 +32,7 @@ public partial class ficheAnime : ContentPage, INotifyPropertyChanged
public async void AjouterListe(object sender, EventArgs e) public async void AjouterListe(object sender, EventArgs e)
{ {
if (my_manager.UtilisateurActuel == null) if (my_manager.UtilisateurActuel.Email == null)
{ {
await DisplayAlert("Erreur", "Vous n'êtes pas connecté.", "OK"); await DisplayAlert("Erreur", "Vous n'êtes pas connecté.", "OK");
return; return;
@ -66,15 +66,16 @@ public partial class ficheAnime : ContentPage, INotifyPropertyChanged
break; break;
} }
foreach (Oeuvre oeuvre in my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage) ////foreach (oeuvre oeuvre in my_manager.utilisateuractuel.listeoeuvreenvisionnage)
{ ////{
Debug.WriteLine("Titre de l'oeuvre : " + oeuvre.Nom); //// debug.writeline("titre de l'oeuvre : " + oeuvre.nom);
// Faites d'autres opérations avec chaque élément de la liste //// // faites d'autres opérations avec chaque élément de la liste
} ////}
my_manager.sauvegarder(); my_manager.sauvegarder();
await Navigation.PushAsync(new listPage()); //await Navigation.PushAsync(new listPage());
await Shell.Current.GoToAsync("//page/secondaire/listPage");
} }

@ -2,7 +2,12 @@
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:MangaMap" xmlns:local="clr-namespace:MangaMap"
x:Class="MangaMap.Views.listPage" x:Class="MangaMap.Views.listPage"
<<<<<<< HEAD
BackgroundColor="Black"> BackgroundColor="Black">
=======
BackgroundColor="Black"
>
>>>>>>> 5ff49db92d0e603606c630e81dea03593ebab802
<Grid RowDefinitions="40, *"> <Grid RowDefinitions="40, *">
<local:NewContent1 HeightRequest="40" VerticalOptions="Start" Padding="10, 0"/> <local:NewContent1 HeightRequest="40" VerticalOptions="Start" Padding="10, 0"/>
@ -39,7 +44,7 @@
</Grid> </Grid>
<ScrollView Grid.Row="1" VerticalScrollBarVisibility="Always"> <ScrollView Grid.Row="1" VerticalScrollBarVisibility="Always">
<!--<VerticalStackLayout BindableLayout.ItemsSource="{Binding ListeOeuvreEnVisionnage}" Spacing="10">--> <VerticalStackLayout BindableLayout.ItemsSource="{Binding ListeOeuvreEnVisionnage}" Spacing="10">
<BindableLayout.ItemTemplate> <BindableLayout.ItemTemplate>
<DataTemplate> <DataTemplate>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300"> <Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
@ -51,7 +56,12 @@
</DataTemplate> </DataTemplate>
</BindableLayout.ItemTemplate> </BindableLayout.ItemTemplate>
<!--</VerticalStackLayout>--> </VerticalStackLayout>
<!--<Grid x:Name="grille"
Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
</Grid>-->
</ScrollView> </ScrollView>
</Grid> </Grid>
</Frame> </Frame>

@ -1,5 +1,6 @@
namespace MangaMap.Views; namespace MangaMap.Views;
using MangaMap.Model; using MangaMap.Model;
using static System.Net.Mime.MediaTypeNames;
public partial class listPage : ContentPage public partial class listPage : ContentPage
{ {
@ -8,10 +9,36 @@ public partial class listPage : ContentPage
public listPage() public listPage()
{ {
InitializeComponent(); InitializeComponent();
BindingContext = my_manager.UtilisateurActuel; BindingContext = my_manager;
if (my_manager.UtilisateurActuel.Email != null)
{
chargerFavoris();
}
} }
private void chargerFavoris()
{
int indice = 0;
for (int i = 0; i < my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage.Count; i++)
{
Oeuvre favoris = my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage[i];
ImageButton imageButton = new ImageButton
{
Source = favoris.Affiche,
WidthRequest = 100,
HeightRequest = 100,
};
int ligne = 1 + indice;
Grid.SetRow(imageButton, ligne);
Grid.SetColumn(imageButton, 0);
//grille.Children.Add(imageButton);
indice++;
}
}
} }

@ -13,12 +13,11 @@
<Entry x:Name="passwordEntry" Placeholder="Mot de passe" Margin="0,0,0,20" Style="{StaticResource ChampsMdp}"/> <Entry x:Name="passwordEntry" Placeholder="Mot de passe" Margin="0,0,0,20" Style="{StaticResource ChampsMdp}"/>
<Button Text="Se connecter" Clicked="OnLoginClicked" Style="{StaticResource Bouton}"/> <Button Text="Se connecter" Clicked="OnLoginClicked" Style="{StaticResource Bouton}" />
<StackLayout Orientation="Horizontal" HorizontalOptions="Center"> <StackLayout Orientation="Horizontal" HorizontalOptions="Center">
<Label Text="Pas de compte ? " TextColor="#FFFFFF" Margin="0,0,5,0"/> <Label Text="Pas de compte ? " TextColor="#FFFFFF" Margin="0,12,5,0"/>
<Label Text="S'inscrire" TextColor="{StaticResource Primary}"> <Button Text="S'inscrire" TextColor="{StaticResource Primary}" BackgroundColor="{StaticResource Secondary}" Clicked="OnSignUpClicked"/>
</Label>
</StackLayout> </StackLayout>
</StackLayout> </StackLayout>

@ -13,6 +13,11 @@ public partial class loginPage : ContentPage
InitializeComponent(); InitializeComponent();
} }
async void OnSignUpClicked(object sender, EventArgs e)
{
await Shell.Current.GoToAsync("//page/secondaire/inscriptionPage");
}
async void OnLoginClicked(object sender, EventArgs e) async void OnLoginClicked(object sender, EventArgs e)
{ {
// Récupération de l'email et du mot de passe entrés // Récupération de l'email et du mot de passe entrés
@ -27,11 +32,11 @@ public partial class loginPage : ContentPage
} }
// Vérifier que l'e-mail a la bonne forme // 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"); // await DisplayAlert("Erreur", "L'email n'est pas valide.", "OK");
return; // return;
} //}
// Vérifier que l'utilisateur existe // Vérifier que l'utilisateur existe
Utilisateur utilisateur = my_manager.Utilisateurs.FirstOrDefault(u => u.Email == email && u.MotDePasse == password); Utilisateur utilisateur = my_manager.Utilisateurs.FirstOrDefault(u => u.Email == email && u.MotDePasse == password);

@ -1,7 +1,10 @@
namespace MangaMap.Views; namespace MangaMap.Views;
using Model;
public partial class settingsPage : ContentPage public partial class settingsPage : ContentPage
{ {
public Manager my_manager => (App.Current as App).MyManager;
public settingsPage() public settingsPage()
{ {
InitializeComponent(); InitializeComponent();
@ -9,6 +12,7 @@ public partial class settingsPage : ContentPage
private async void OnDisconnectClicked(object sender, EventArgs e) private async void OnDisconnectClicked(object sender, EventArgs e)
{ {
my_manager.UtilisateurActuel = new Utilisateur();
await Shell.Current.Navigation.PushAsync(new loginPage()); await Shell.Current.Navigation.PushAsync(new loginPage());
} }

@ -26,8 +26,8 @@
<Button Text="S'inscire" Clicked="OnSignUpClicked" Style="{StaticResource Bouton}"/> <Button Text="S'inscire" Clicked="OnSignUpClicked" Style="{StaticResource Bouton}"/>
<StackLayout Orientation="Horizontal" HorizontalOptions="Center"> <StackLayout Orientation="Horizontal" HorizontalOptions="Center">
<Label Text="Déjà un compte ? " TextColor="#FFFFFF" Margin="0,0,5,0"/> <Label Text="Déjà un compte ? " TextColor="#FFFFFF" Margin="0,12,5,0"/>
<Label Text="Se connecter" TextColor="{StaticResource Primary}"/> <Button Text="Se connecter" TextColor="{StaticResource Primary}" BackgroundColor="{StaticResource Secondary}" Clicked="OnLoginClicked"/>
</StackLayout> </StackLayout>
</StackLayout> </StackLayout>

@ -14,6 +14,11 @@ public partial class signUpPage : ContentPage
InitializeComponent(); InitializeComponent();
} }
async void OnLoginClicked(object sender, EventArgs e)
{
await Shell.Current.GoToAsync("//page/secondaire/connexionPage");
}
async void OnSignUpClicked(object sender, System.EventArgs e) async void OnSignUpClicked(object sender, System.EventArgs e)
{ {
// Récupérer les valeurs des entrées // Récupérer les valeurs des entrées

Loading…
Cancel
Save