Utilisation des fonctions des users plutot que de le faire dans les fichier xaml

master
thchazot1 3 years ago
parent 8b2b30512e
commit 527416946d

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq; using System.Linq;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using System.Text; using System.Text;
@ -99,5 +100,10 @@ namespace Modèle
{ {
return Email == e.Email; return Email == e.Email;
} }
public override void AjouterRequin(Requin req, ObservableCollection<Requin> requins)
{
requins.Add(req);
}
} }
} }

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq; using System.Linq;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using System.Text; using System.Text;
@ -22,5 +23,7 @@ namespace Modèle
} }
public abstract override string ToString(); public abstract override string ToString();
public abstract void AjouterRequin(Requin req, ObservableCollection<Requin> requins);
} }
} }

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq; using System.Linq;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using System.Text; using System.Text;
@ -25,55 +26,18 @@ namespace Modèle
{ {
return Email + " " + MotDePasse + " " + NbSubmit; return Email + " " + MotDePasse + " " + NbSubmit;
} }
public int FaireUnSubmit(string nom, string nomSci, string desc, string photo, string video, string photoCarte, Conservation cons, List<Zone> rep, string funFact, List<Requin> lBdPasFinie)
{
Requin petitNouveau = new Requin(nom, nomSci, desc, photo, video, photoCarte, cons, rep, funFact);
lBdPasFinie.Add(petitNouveau);
NbSubmit++;
return 1;
}
public void FaireUnChangement(Requin req, string desc, string photo, string video, string photoCarte, Conservation cons, List<Zone> rep, string funFact, List<Requin> lBdPasFinie){
if (string.IsNullOrWhiteSpace(desc))
{
desc = req.Description;
}
if (string.IsNullOrWhiteSpace(photo))
{
photo = req.Photo;
}
if (string.IsNullOrWhiteSpace(video))
{
video = req.Video;
}
if (string.IsNullOrWhiteSpace(photoCarte))
{
photoCarte = req.PhotoCarte;
}
if (cons == Conservation.NE)
{
cons = req.StatutCons;
}
if (string.IsNullOrWhiteSpace(funFact))
{
funFact = req.FunFact;
}
if (rep.Count() == 0)
{
foreach (Zone z in req.Repartition)
{
rep.Add(z);
}
}
Requin requin = new Requin(req.Nom, req.NomSci, desc, photo, video, photoCarte, cons, rep, funFact);
lBdPasFinie.Add(requin);
NbSubmit++;
}
public bool Equals(Utilisateur u) public bool Equals(Utilisateur u)
{ {
return Email == u.Email; return Email == u.Email;
} }
public override void AjouterRequin(Requin req, ObservableCollection<Requin> requins)
{
requins.Add(req);
NbSubmit++;
}
} }
} }

@ -24,13 +24,13 @@ namespace WpfApp1
public AddAShark() public AddAShark()
{ {
InitializeComponent(); InitializeComponent();
Mgr.LoadRequins();
DataContext = Mgr; DataContext = Mgr;
} }
public Manager Mgr => (Application.Current as App).LeManager; public Manager Mgr => (Application.Current as App).LeManager;
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUsers;
private List<Conservation> consList = new List<Conservation> private List<Conservation> consList = new List<Conservation>
@ -111,13 +111,22 @@ namespace WpfApp1
if (testCons == 0 || lesZones.Count() == 0 || string.IsNullOrWhiteSpace(nom) || string.IsNullOrWhiteSpace(sciNam) || string.IsNullOrWhiteSpace(descri) if (testCons == 0 || lesZones.Count() == 0 || string.IsNullOrWhiteSpace(nom) || string.IsNullOrWhiteSpace(sciNam) || string.IsNullOrWhiteSpace(descri)
|| string.IsNullOrWhiteSpace(photo) || string.IsNullOrWhiteSpace(video) || string.IsNullOrWhiteSpace(map) || string.IsNullOrWhiteSpace(fun)) || string.IsNullOrWhiteSpace(photo) || string.IsNullOrWhiteSpace(video) || string.IsNullOrWhiteSpace(map) || string.IsNullOrWhiteSpace(fun))
{ {
MessageBox.Show("Veuillez remplir toutes les informations");
return; return;
} }
else else
{ {
Requin requin = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun); Requin requin = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun);
Mgr.AjouterRequinAdd(requin); if (MgrUser.SelectedUser is Utilisateur user)
{
user.AjouterRequin(requin, Mgr.RequinsAdd);
}
else if (MgrUser.SelectedUser is Expert exp)
{
exp.AjouterRequin(requin, Mgr.RequinsAdd);
}
Close(); Close();
} }
} }

@ -2,7 +2,9 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApp1" xmlns:local="clr-namespace:WpfApp1"
StartupUri="MainWindow.xaml"> StartupUri="MainWindow.xaml"
Deactivated="Application_Deactivated"
Activated="Application_Activated">
<Application.Resources> <Application.Resources>
<ResourceDictionary> <ResourceDictionary>
<ResourceDictionary.MergedDictionaries> <ResourceDictionary.MergedDictionaries>

@ -22,24 +22,23 @@ namespace WpfApp1
public Manager LeManager { get; private set; } = new Manager(strat); public Manager LeManager { get; private set; } = new Manager(strat);
public ManagerUsers LeManagerUsers { get; private set; } = new ManagerUsers(strat); public ManagerUsers LeManagerUsers { get; private set; } = new ManagerUsers(strat);
public App() public void Temp()
{ {
var dataReq = strat.LoadRequins(); var mw = MainWindow as MainWindow;
var dataUsers = strat.LoadUsers();
var users = dataUsers.users;
var experts = dataUsers.experts;
var requins = dataReq.reqs;
var requinsAdd = dataReq.reqsAdd;
var requinsEdit = dataReq.reqsEdit;
strat.SaveRequins(requins, requinsAdd, requinsEdit);
strat.SaveUsers(users, experts);
} }
public void Temp() private void Application_Activated(object sender, EventArgs e)
{ {
var mw = MainWindow as MainWindow;
LeManager.LoadRequins();
LeManagerUsers.LoadUsers();
} }
private void Application_Deactivated(object sender, EventArgs e)
{
LeManager.SaveRequins();
LeManagerUsers.SaveUsers();
}
} }
} }

@ -13,7 +13,7 @@
<Image Source="Images\cross.png" /> <Image Source="Images\cross.png" />
</Button> </Button>
</Grid> </Grid>
<DockPanel DockPanel.Dock="Right"> <DockPanel DockPanel.Dock="Left">
<DockPanel Style="{StaticResource Docky}" DockPanel.Dock="Left" Width="500"> <DockPanel Style="{StaticResource Docky}" DockPanel.Dock="Left" Width="500">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@ -35,15 +35,15 @@
<MediaElement Source="{Binding SelectedRequin.Video}" DockPanel.Dock="Bottom" MaxHeight="125" MinHeight="50" Margin="0,20,0,0" HorizontalAlignment="Center" Grid.ColumnSpan="2" Grid.Row="3" x:Name="vidOld"/> <MediaElement Source="{Binding SelectedRequin.Video}" DockPanel.Dock="Bottom" MaxHeight="125" MinHeight="50" Margin="0,20,0,0" HorizontalAlignment="Center" Grid.ColumnSpan="2" Grid.Row="3" x:Name="vidOld"/>
</Grid> </Grid>
</DockPanel> </DockPanel>
<DockPanel Background="{StaticResource Couleur3}" DockPanel.Dock="Right"> <DockPanel Background="{StaticResource Couleur3}" DockPanel.Dock="Right" Width="300">
<Image Source="{Binding SelectedRequin.PhotoCarte}" Margin="0,25,0,20" DockPanel.Dock="Top" MinHeight="50" MaxHeight="125" HorizontalAlignment="Center" x:Name="cartePicOld"></Image> <Image Source="{Binding SelectedRequin.PhotoCarte}" Margin="0,25,0,20" DockPanel.Dock="Top" MinHeight="50" MaxHeight="125" HorizontalAlignment="Center" x:Name="cartePicOld"></Image>
<Image Source="{Binding SelectedRequin.StatutCons}" Margin="15,5,5,5" DockPanel.Dock="Top" HorizontalAlignment="Center" MinHeight="5" MaxHeight="60" x:Name="consPicOld" ></Image> <Image Source="{Binding SelectedRequin.StatutCons}" Margin="15,5,5,5" DockPanel.Dock="Top" HorizontalAlignment="Center" MinHeight="5" MaxHeight="60" x:Name="consPicOld" ></Image>
<TextBlock Text="Fun fact" FontSize="20" DockPanel.Dock="Top" HorizontalAlignment="Center" Margin="0,15,0,0" Foreground="{StaticResource Couleur1}" FontFamily="{StaticResource Police2}" ></TextBlock> <TextBlock Text="Fun fact" FontSize="20" DockPanel.Dock="Top" HorizontalAlignment="Center" Margin="0,15,0,0" Foreground="{StaticResource Couleur1}" FontFamily="{StaticResource Police2}" ></TextBlock>
<TextBlock Text="{Binding SelectedRequin.FunFact}" FontSize="12" DockPanel.Dock="Top" TextWrapping="Wrap" Foreground="{StaticResource Couleur1}" Margin="0,5,0,0" TextAlignment="Center" HorizontalAlignment="Center" Width="175" x:Name="funFactOld"></TextBlock> <TextBlock Text="{Binding SelectedRequin.FunFact}" FontSize="12" DockPanel.Dock="Top" TextWrapping="Wrap" Foreground="{StaticResource Couleur1}" Margin="0,5,0,0" TextAlignment="Center" HorizontalAlignment="Center" Width="175" x:Name="funFactOld"></TextBlock>
<Button Style="{StaticResource Button1}" DockPanel.Dock="Left" Width="80" Height="50" Content="Remplacer" Margin="0,20,0,0" Click="remplacer_Click" x:Name="remplacer"/> <Button Style="{StaticResource Button1}" DockPanel.Dock="Left" Width="80" Height="50" Content="garder" Margin="0,20,0,0" Click="garder_Click" x:Name="garder"/>
</DockPanel> </DockPanel>
</DockPanel> </DockPanel>
<DockPanel DockPanel.Dock="Left"> <DockPanel DockPanel.Dock="Right">
<DockPanel Style="{StaticResource Docky}" DockPanel.Dock="Left" Width="500"> <DockPanel Style="{StaticResource Docky}" DockPanel.Dock="Left" Width="500">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@ -70,7 +70,7 @@
<Image Source="{Binding SelectedRequin.StatutCons}" Margin="15,5,5,5" DockPanel.Dock="Top" HorizontalAlignment="Center" MinHeight="5" MaxHeight="60" x:Name="consPic" ></Image> <Image Source="{Binding SelectedRequin.StatutCons}" Margin="15,5,5,5" DockPanel.Dock="Top" HorizontalAlignment="Center" MinHeight="5" MaxHeight="60" x:Name="consPic" ></Image>
<TextBlock Text="Fun fact" FontSize="20" DockPanel.Dock="Top" HorizontalAlignment="Center" Margin="0,15,0,0" Foreground="{StaticResource Couleur1}" FontFamily="{StaticResource Police2}" ></TextBlock> <TextBlock Text="Fun fact" FontSize="20" DockPanel.Dock="Top" HorizontalAlignment="Center" Margin="0,15,0,0" Foreground="{StaticResource Couleur1}" FontFamily="{StaticResource Police2}" ></TextBlock>
<TextBlock Text="{Binding SelectedRequin.FunFact}" FontSize="12" DockPanel.Dock="Top" TextWrapping="Wrap" Foreground="{StaticResource Couleur1}" Margin="0,5,0,0" TextAlignment="Center" HorizontalAlignment="Center" Width="175" x:Name="funFact"></TextBlock> <TextBlock Text="{Binding SelectedRequin.FunFact}" FontSize="12" DockPanel.Dock="Top" TextWrapping="Wrap" Foreground="{StaticResource Couleur1}" Margin="0,5,0,0" TextAlignment="Center" HorizontalAlignment="Center" Width="175" x:Name="funFact"></TextBlock>
<Button Style="{StaticResource Button1}" DockPanel.Dock="Left" Width="80" Height="50" Content="Garder" Margin="0,20,0,0" Click="garder_Click" x:Name="garder"/> <Button Style="{StaticResource Button1}" DockPanel.Dock="Left" Width="80" Height="50" Content="remplacer" Margin="0,20,0,0" Click="remplacer_Click" x:Name="remplacer"/>
</DockPanel> </DockPanel>
</DockPanel> </DockPanel>
</DockPanel> </DockPanel>

@ -62,7 +62,7 @@ namespace WpfApp1
private void exit_Click(object sender, RoutedEventArgs e) private void exit_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapAcc(); Close();
} }
private void deco_Click(object sender, RoutedEventArgs e) private void deco_Click(object sender, RoutedEventArgs e)

@ -34,11 +34,9 @@ namespace WpfApp1
public MainWindow() public MainWindow()
{ {
InitializeComponent();
Mgr.LoadRequins();
MgrUser.LoadUsers(); InitializeComponent();
DataContext = Mgr; DataContext = Mgr;

@ -1,113 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<DataToPersistReq xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Persistance"> <DataToPersistReq xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Persistance">
<Requins xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le"> <Requins xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" />
<d2p1:Requin> <RequinsAdd xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" />
<d2p1:Description>wow il est trop bo</d2p1:Description> <RequinsEdit xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" />
<d2p1:FunFact>(C'est pas un vrai requin)</d2p1:FunFact>
<d2p1:Nom>mon requin adoré</d2p1:Nom>
<d2p1:NomSci>trop cool ce requin</d2p1:NomSci>
<d2p1:Photo>Images/Dormeur-Mexicain.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>ATLANTIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EW</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-dormeur-mexicain.mp4</d2p1:Video>
</d2p1:Requin>
<d2p1:Requin>
<d2p1:Description>C'est un requin ultra banal</d2p1:Description>
<d2p1:FunFact>Il est pas aussi banal qu'il en a l'air</d2p1:FunFact>
<d2p1:Nom>Banane</d2p1:Nom>
<d2p1:NomSci>Le requin banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>ATLANTIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>LC</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-Requin-Blanc.mp4</d2p1:Video>
</d2p1:Requin>
<d2p1:Requin>
<d2p1:Description>C'est un requin pas ultra banal</d2p1:Description>
<d2p1:FunFact>Il est vraiment pas banal</d2p1:FunFact>
<d2p1:Nom>Req1</d2p1:Nom>
<d2p1:NomSci>Le requin pas banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>PACIFIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EX</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-dormeur-mexicain.mp4</d2p1:Video>
</d2p1:Requin>
</Requins>
<RequinsAdd xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le">
<d2p1:Requin>
<d2p1:Description>C'est un requin pas ultra banal</d2p1:Description>
<d2p1:FunFact>Il est vraiment pas banal</d2p1:FunFact>
<d2p1:Nom>leRequinAjouté</d2p1:Nom>
<d2p1:NomSci>Le requin pas banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>PACIFIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EX</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-dormeur-mexicain.mp4</d2p1:Video>
</d2p1:Requin>
<d2p1:Requin>
<d2p1:Description>C'est un requin vraiment pas ultra banal</d2p1:Description>
<d2p1:FunFact>Il est vraiment vraiment pas banal</d2p1:FunFact>
<d2p1:Nom>leDeuxièmeRequinAjouté</d2p1:Nom>
<d2p1:NomSci>Le requin vraiemnt pas banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>PACIFIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EX</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-dormeur-mexicain.mp4</d2p1:Video>
</d2p1:Requin>
<d2p1:Requin>
<d2p1:Description>C'est un requin pas ultra banal</d2p1:Description>
<d2p1:FunFact>Il est vraiment pas banal</d2p1:FunFact>
<d2p1:Nom>leTroisièmeRequinAjouté</d2p1:Nom>
<d2p1:NomSci>Le requin pas banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>PACIFIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EX</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-dormeur-mexicain.mp4</d2p1:Video>
</d2p1:Requin>
<d2p1:Requin>
<d2p1:Description>C'est un requin vraiment pas ultra banal</d2p1:Description>
<d2p1:FunFact>Il est vraiment vraiment pas banal</d2p1:FunFact>
<d2p1:Nom>leQuatrièmeRequinAjouté</d2p1:Nom>
<d2p1:NomSci>Le requin vraiemnt pas banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>PACIFIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EX</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-dormeur-mexicain.mp4</d2p1:Video>
</d2p1:Requin>
</RequinsAdd>
<RequinsEdit xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le">
<d2p1:Requin>
<d2p1:Description>C'est un requin ultra banal</d2p1:Description>
<d2p1:FunFact>En fait il est giga banal</d2p1:FunFact>
<d2p1:Nom>Banane</d2p1:Nom>
<d2p1:NomSci>Le requin banal</d2p1:NomSci>
<d2p1:Photo>Images/White_shark.png</d2p1:Photo>
<d2p1:PhotoCarte>Images/rep_Heterodontus_mexicanus.png</d2p1:PhotoCarte>
<d2p1:Repartition>
<d2p1:Zone>ATLANTIQUE</d2p1:Zone>
</d2p1:Repartition>
<d2p1:StatutCons>EW</d2p1:StatutCons>
<d2p1:Video>Videos/Vid-Requin-Blanc.mp4</d2p1:Video>
</d2p1:Requin>
</RequinsEdit>
</DataToPersistReq> </DataToPersistReq>

@ -1,18 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<DataToPersistUsers xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Persistance"> <DataToPersistUsers xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Persistance">
<Experts xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le"> <Experts xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" />
<d2p1:Expert> <Users xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" />
<d2p1:Email>salut</d2p1:Email>
<d2p1:MotDePasse>hey</d2p1:MotDePasse>
<d2p1:DateD>2022-06-09T14:59:29.3884138+02:00</d2p1:DateD>
<d2p1:Surnom>bob</d2p1:Surnom>
</d2p1:Expert>
</Experts>
<Users xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le">
<d2p1:Utilisateur>
<d2p1:Email>a</d2p1:Email>
<d2p1:MotDePasse>salut</d2p1:MotDePasse>
<d2p1:NbSubmit>0</d2p1:NbSubmit>
</d2p1:Utilisateur>
</Users>
</DataToPersistUsers> </DataToPersistUsers>

@ -22,13 +22,12 @@ namespace WpfApp1
public partial class SeConnecter : Window public partial class SeConnecter : Window
{ {
public ManagerUsers Mgr => (Application.Current as App).LeManagerUsers; public ManagerUsers MgrUser => (Application.Current as App).LeManagerUsers;
public SeConnecter() public SeConnecter()
{ {
InitializeComponent(); InitializeComponent();
Mgr.LoadUsers();
DataContext = Mgr; DataContext = MgrUser;
} }
private void exit_Click(object sender, RoutedEventArgs e) private void exit_Click(object sender, RoutedEventArgs e)
@ -52,20 +51,20 @@ namespace WpfApp1
MessageBox.Show("Veuillez remplir toutes les cases"); MessageBox.Show("Veuillez remplir toutes les cases");
return; return;
} }
foreach(Personne p in Mgr.Utilisateurs) foreach(Personne p in MgrUser.Utilisateurs)
{ {
if (p.Email==email && password == p.MotDePasse) if (p.Email==email && password == p.MotDePasse)
{ {
Mgr.SelectedUser = p; MgrUser.SelectedUser = p;
Close(); Close();
return; return;
} }
} }
foreach(Personne p in Mgr.Experts) foreach(Personne p in MgrUser.Experts)
{ {
if (p.Email==email && p.MotDePasse == password) if (p.Email==email && p.MotDePasse == password)
{ {
Mgr.SelectedUser = p; MgrUser.SelectedUser = p;
Close(); Close();
return; return;
} }

@ -1,40 +0,0 @@
<UserControl x:Class="WpfApp1.UCRequinValSubmit"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:WpfApp1"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<DockPanel>
<DockPanel Style="{StaticResource Docky}" DockPanel.Dock="Left" Width="500">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding SelectedRequin.Nom}" Foreground="{StaticResource Couleur3}" FontSize="20" Margin="15,5,0,0" DockPanel.Dock="Top" Grid.Column="1" Grid.Row="0" VerticalAlignment="Bottom" x:Name="nameReq"/>
<TextBlock Text="{Binding SelectedRequin.NomSci}" Foreground="{StaticResource Couleur3}" FontSize="15" Margin="15,0,0,10" DockPanel.Dock="Top" Grid.Column="1" Grid.Row="1" VerticalAlignment="Top" x:Name="sciName"/>
<Image Source="{Binding SelectedRequin.Photo}" DockPanel.Dock="Right" Margin="30,30,30,0" MinHeight="50" MaxHeight="125" Grid.Column="0" Grid.RowSpan="2" VerticalAlignment="Top" x:Name="photo"/>
<ScrollViewer Grid.Row="2" Grid.ColumnSpan="2">
<TextBlock TextWrapping="Wrap" FontSize="12" Margin="15,5,15,5" HorizontalAlignment="Left" DockPanel.Dock="Top" Foreground="{StaticResource Couleur3}" TextAlignment="Center" x:Name="desc" Text="{Binding SelectedRequin.Description}"></TextBlock>
</ScrollViewer>
<MediaElement Source="{Binding SelectedRequin.Video}" DockPanel.Dock="Bottom" MaxHeight="125" MinHeight="50" Margin="0,20,0,0" HorizontalAlignment="Center" Grid.ColumnSpan="2" Grid.Row="3" x:Name="vid"/>
</Grid>
</DockPanel>
<DockPanel Background="{StaticResource Couleur3}" DockPanel.Dock="Right">
<Image Source="{Binding SelectedRequin.PhotoCarte}" Margin="0,25,0,20" DockPanel.Dock="Top" MinHeight="50" MaxHeight="125" HorizontalAlignment="Center" x:Name="cartePic"></Image>
<Image Source="{Binding SelectedRequin.StatutCons}" Margin="15,5,5,5" DockPanel.Dock="Top" HorizontalAlignment="Center" MinHeight="5" MaxHeight="60" x:Name="consPic" ></Image>
<TextBlock Text="Fun fact" FontSize="20" DockPanel.Dock="Top" HorizontalAlignment="Center" Margin="0,15,0,0" Foreground="{StaticResource Couleur1}" FontFamily="{StaticResource Police2}" ></TextBlock>
<TextBlock Text="{Binding SelectedRequin.FunFact}" FontSize="12" DockPanel.Dock="Top" TextWrapping="Wrap" Foreground="{StaticResource Couleur1}" Margin="0,5,0,0" TextAlignment="Center" HorizontalAlignment="Center" Width="175" x:Name="funFact"></TextBlock>
<Button Style="{StaticResource Button1}" DockPanel.Dock="Left" Width="80" Height="50" Content="Valider" Margin="50,20,0,0" Click="valider_Click" x:Name="valider"/>
<Button Style="{StaticResource Button1}" DockPanel.Dock="Right" Width="80" Height="50" Content="Refuser" Margin="0,20,0,0" x:Name="refuser" Click="refuser_Click"/>
</DockPanel>
</DockPanel>
</UserControl>

@ -1,77 +0,0 @@
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApp1
{
/// <summary>
/// Logique d'interaction pour UCRequinValSubmit.xaml
/// </summary>
public partial class UCRequinValSubmit : UserControl
{
public Manager Mgr => (Application.Current as App).LeManager;
public UCRequinValSubmit()
{
InitializeComponent();
}
private Requin _requin;
public Requin requin
{
get { return _requin; }
set
{
_requin = value;
uptadeUi(_requin);
}
}
public void uptadeUi(Requin requin)
{
string url = "Images/" + requin.StatutCons.ToString() + ".png";
nameReq.Text = requin.Nom;
sciName.Text = requin.NomSci;
desc.Text = requin.Description;
vid.Source = new Uri(requin.Video, UriKind.Relative);
photo.Source = new BitmapImage(new Uri(requin.Photo, UriKind.Relative));
funFact.Text = requin.FunFact;
consPic.Source = new BitmapImage(new Uri(url, UriKind.Relative));
cartePic.Source = new BitmapImage(new Uri(requin.PhotoCarte, UriKind.Relative));
}
private void exit_Click(object sender, RoutedEventArgs e)
{
}
private void valider_Click(object sender, RoutedEventArgs e)
{
Mgr.AjouterRequin(requin);
Mgr.SupprimerRequinAdd(requin);
}
private void refuser_Click(object sender, RoutedEventArgs e)
{
Mgr.SupprimerRequinAdd(requin);
}
}
}

@ -75,9 +75,8 @@ namespace WpfApp1
foreach (Control control in this.radioButtons.Children) foreach (Control control in this.radioButtons.Children)
{ {
if (control is RadioButton) if (control is RadioButton radio)
{ {
RadioButton radio = control as RadioButton;
if (radio.Content is string radString) if (radio.Content is string radString)
{ {
if (radString == requin.StatutCons.ToString()) if (radString == requin.StatutCons.ToString())
@ -132,9 +131,8 @@ namespace WpfApp1
foreach (Control control in this.radioButtons.Children) foreach (Control control in this.radioButtons.Children)
{ {
if (control is RadioButton) if (control is RadioButton radio)
{ {
RadioButton radio = control as RadioButton;
if (radio.IsChecked == true) if (radio.IsChecked == true)
{ {
if (radio.Content is string radString) if (radio.Content is string radString)
@ -182,18 +180,27 @@ namespace WpfApp1
else if (string.IsNullOrWhiteSpace(fun)) else if (string.IsNullOrWhiteSpace(fun))
{ {
Requin req = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun); Requin req = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun);
Mgr.AjouterRequinEdit(req); if (MgrUser.SelectedUser is Utilisateur user)
{
user.AjouterRequin(req, Mgr.RequinsEdit);
}
else
{
Mgr.ModifieRequin(Mgr.Requins.SingleOrDefault(r => r.Equals(req)), req);
}
} }
else else
{ {
Requin req = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun); Requin req = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun);
Mgr.AjouterRequinEdit(req); if (MgrUser.SelectedUser is Utilisateur user)
{
user.AjouterRequin(req, Mgr.RequinsEdit);
}
else
{
Mgr.ModifieRequin(Mgr.Requins.SingleOrDefault(r => r.Equals(req)), req);
}
} }
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapDes(requin); ((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapDes(requin);
} }
} }

@ -41,11 +41,13 @@ namespace WpfApp1
private void RequinsAdd_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) private void RequinsAdd_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{ {
laListeAdd.Items.Clear();
ChargerUCAdd(); ChargerUCAdd();
} }
private void RequinsEdit_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) private void RequinsEdit_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{ {
laListeEdit.Items.Clear();
ChargerUCEdit(); ChargerUCEdit();
} }

@ -50,8 +50,6 @@ namespace WpfApp1
private void edit_Click(object sender, RoutedEventArgs e) private void edit_Click(object sender, RoutedEventArgs e)
{ {
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapEdit(requin);
/*
if (MgrUser.SelectedUser == null) if (MgrUser.SelectedUser == null)
{ {
MessageBox.Show("Vous avez besoin d'être connecté pour accéder à cette fonctionnalité"); MessageBox.Show("Vous avez besoin d'être connecté pour accéder à cette fonctionnalité");
@ -62,7 +60,6 @@ namespace WpfApp1
{ {
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapEdit(requin); ((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapEdit(requin);
} }
*/
} }

Loading…
Cancel
Save