thchazot1 3 years ago
commit 8b2b30512e

@ -36,25 +36,29 @@ namespace Business
} }
public void LoadRequins() public void LoadRequins()
{ {
var data = Pers.LoadRequins();
Requins.Clear(); Requins.Clear();
foreach (Requin req in Pers.LoadRequins()) foreach(var r in data.reqs)
{ {
Requins.Add(req); Requins.Add(r);
} }
RequinsEdit.Clear(); RequinsAdd.Clear();
foreach (Requin req in Pers.LoadRequinsEdit()) foreach(var rA in data.reqsAdd)
{ {
RequinsEdit.Add(req); RequinsAdd.Add(rA);
} }
RequinsAdd.Clear(); RequinsEdit.Clear();
foreach (Requin req in Pers.LoadRequinsAdd()) foreach(var rE in data.reqsEdit)
{ {
RequinsAdd.Add(req); RequinsEdit.Add(rE);
} }
SelectedRequin = null; SelectedRequin = null;
} }
public void SaveRequins() public void SaveRequins()
{ {
List<Requin> req = new List<Requin>(); List<Requin> req = new List<Requin>();
req.AddRange(Requins); req.AddRange(Requins);
@ -62,10 +66,8 @@ namespace Business
edit.AddRange(RequinsEdit); edit.AddRange(RequinsEdit);
List<Requin> add = new List<Requin>(); List<Requin> add = new List<Requin>();
add.AddRange(RequinsAdd); add.AddRange(RequinsAdd);
Pers.SaveRequins(req);
Pers.SaveRequins(edit);
Pers.SaveRequins(add);
Pers.SaveRequins(req, add, edit);
} }
public bool AjouterRequin(Requin req) public bool AjouterRequin(Requin req)

@ -11,7 +11,8 @@ namespace Business
{ {
public class ManagerUsers public class ManagerUsers
{ {
public List<Personne> Utilisateurs { get; private set; } public List<Utilisateur> Utilisateurs { get; private set; }
public List<Expert> Experts { get; private set; }
public Personne SelectedUser { get; set; } public Personne SelectedUser { get; set; }
/// <summary> /// <summary>
@ -26,22 +27,38 @@ namespace Business
public ManagerUsers(IPersistanceManager pers) public ManagerUsers(IPersistanceManager pers)
{ {
Utilisateurs = new List<Personne>(); Utilisateurs = new List<Utilisateur>();
Experts = new List<Expert>();
Pers = pers; Pers = pers;
} }
public void LoadUsers() public void LoadUsers()
{ {
var data = Pers.LoadUsers();
Utilisateurs.Clear(); Utilisateurs.Clear();
Utilisateurs.AddRange(Pers.LoadUsers()); foreach (var u in data.users)
{
Utilisateurs.Add(u);
}
Experts.Clear();
foreach (var e in data.experts)
{
Experts.Add(e);
}
SelectedUser = null; SelectedUser = null;
} }
public void SaveUsers() public void SaveUsers()
{ {
Pers.SaveUsers(Utilisateurs); Pers.SaveUsers(Utilisateurs, Experts);
} }
public bool AjouterUtilisateur(Personne user)
public bool AjouterUtilisateur(Utilisateur user)
{ {
if (Utilisateurs.Contains(user)) if (Utilisateurs.Contains(user))
{ {
@ -52,7 +69,7 @@ namespace Business
return true; return true;
} }
public bool SupprimerUtilisateur(Personne user) public bool SupprimerUtilisateur(Utilisateur user)
{ {
if (!Utilisateurs.Contains(user)) if (!Utilisateurs.Contains(user))
{ {
@ -67,7 +84,7 @@ namespace Business
return Utilisateurs.SingleOrDefault(r => r.Equals(user)); return Utilisateurs.SingleOrDefault(r => r.Equals(user));
} }
public bool ModifieUtilisateur(Personne oldU, Personne newU) public bool ModifieUtilisateur(Utilisateur oldU, Utilisateur newU)
{ {
if (!oldU.Equals(newU)) if (!oldU.Equals(newU))
{ {

@ -10,15 +10,23 @@ namespace Modèle
[DataContract] [DataContract]
public enum Conservation public enum Conservation
{ {
[DataMember] [EnumMember]
EX, EX,
[EnumMember]
EW, EW,
[EnumMember]
CR, CR,
[EnumMember]
EN, EN,
[EnumMember]
VU, VU,
[EnumMember]
NT, NT,
[EnumMember]
LC, LC,
[EnumMember]
DD, DD,
[EnumMember]
NE NE
} }

@ -10,10 +10,13 @@ namespace Modèle
[DataContract] [DataContract]
public enum Zone public enum Zone
{ {
[DataMember] [EnumMember]
ATLANTIQUE, ATLANTIQUE,
[EnumMember]
ARCTIQUE, ARCTIQUE,
[EnumMember]
PACIFIQUE, PACIFIQUE,
[EnumMember]
INDIEN INDIEN
} }
} }

@ -7,17 +7,18 @@ using System.Linq;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Xml;
namespace Persistance namespace Persistance
{ {
public class DataContractPersistance : IPersistanceManager public class DataContractPersistance : IPersistanceManager
{ {
// DataContractSerializer pour chaque type // Serializers pour requins et utlisateurs/experts
public DataContractSerializer SerializerReq { get; set; } public DataContractSerializer SerializerReq { get; set; }
= new DataContractSerializer(typeof(List<Requin>)); = new DataContractSerializer(typeof(DataToPersistReq));
public DataContractSerializer SerializerUsers { get; set; } public DataContractSerializer SerializerUsers { get; set; }
= new DataContractSerializer(typeof(List<Personne>)); = new DataContractSerializer(typeof(DataToPersistUsers));
@ -28,11 +29,7 @@ namespace Persistance
// Noms des fichiers // Noms des fichiers
string FileNameReq { get; set; } string FileNameReq { get; set; }
= "ficReq"; = "ficReqs";
string FileNameReqAdd { get; set; }
= "ficReqAdd";
string FileNameReqEdit { get; set; }
= "ficReqEdit";
string FileNameUsers { get; set; } string FileNameUsers { get; set; }
= "ficUsers"; = "ficUsers";
@ -40,138 +37,96 @@ namespace Persistance
// Fichiers complets // Fichiers complets
string FileReq => Path.Combine(FilePath, FileNameReq); string FileReq => Path.Combine(FilePath, FileNameReq);
string FileReqAdd => Path.Combine(FilePath, FileNameReqAdd);
string FileReqEdit => Path.Combine(FilePath, FileNameReqEdit);
string FileUsers => Path.Combine(FilePath, FileNameUsers); string FileUsers => Path.Combine(FilePath, FileNameUsers);
// Listes des requins et utilisateurs // Settings
List<Requin> requins = new List<Requin>(); public XmlWriterSettings settings { get; set; }
List<Requin> requinsAdd = new List<Requin>(); = new XmlWriterSettings() { Indent = true };
List<Requin> requinsEdit = new List<Requin>();
List<Personne> users = new List<Personne>();
// Méthodes pour les requins de l'application // Méthodes pour les utilisateurs et experts
public List<Requin> LoadRequins() public (List<Utilisateur>, List<Expert>) LoadUsers()
{ {
if (!File.Exists(FileReq)) if (!File.Exists(FileUsers))
{ {
throw new FileNotFoundException("The persisance ficReq does not exist"); throw new FileNotFoundException("The persistance file does not exist");
} }
using (Stream stream = File.OpenRead(FileReq)) DataToPersistUsers data;
{
requins = SerializerReq.ReadObject(stream) as List<Requin>;
}
return requins; using (Stream stream = File.OpenRead(FileUsers))
}
public void SaveRequins(List<Requin> reqs)
{
if (!Directory.Exists(FilePath))
{ {
Directory.CreateDirectory(FilePath); data = SerializerUsers.ReadObject(stream) as DataToPersistUsers;
} }
using (Stream stream = File.Create(FileReq)) return (data.Users, data.Experts);
{
SerializerReq.WriteObject(stream, requins);
}
} }
// Méthodes pour les requins ajoutés par les Utilisateurs public void SaveUsers(List<Utilisateur> users, List<Expert> experts)
public List<Requin> LoadRequinsAdd()
{
if (!File.Exists(FileReqAdd))
{
throw new FileNotFoundException("The persisance file ficReqAdd does not exist");
}
using (Stream stream = File.OpenRead(FileReqAdd))
{
requinsAdd = SerializerReq.ReadObject(stream) as List<Requin>;
}
return requinsAdd;
}
public void SaveRequinsAdd(List<Requin> reqs)
{ {
if (!Directory.Exists(FilePath)) if (!Directory.Exists(FilePath))
{ {
Directory.CreateDirectory(FilePath); Directory.CreateDirectory(FileUsers);
} }
using (Stream stream = File.Create(FileReqAdd)) DataToPersistUsers data = new DataToPersistUsers();
data.Users.AddRange(users);
data.Experts.AddRange(experts);
using (TextWriter tw = File.CreateText(Path.Combine(FilePath, FileNameUsers)))
{ {
SerializerReq.WriteObject(stream, requinsAdd); using (XmlWriter writer = XmlWriter.Create(tw, settings))
{
SerializerUsers.WriteObject(writer, data);
}
} }
} }
// Méthodes pour les requins édités par les utilisateurs // Méthodes pour tous les requins
public List<Requin> LoadRequinsEdit() public (List<Requin>, List<Requin>, List<Requin>) LoadRequins()
{ {
if (!File.Exists(FileReqEdit)) if (!File.Exists(FileReq))
{
throw new FileNotFoundException("The persisance file ficReqEdit does not exist");
}
using (Stream stream = File.OpenRead(FileReqEdit))
{ {
requinsEdit = SerializerReq.ReadObject(stream) as List<Requin>; throw new FileNotFoundException("The persistance file does not exist");
} }
return requinsEdit; DataToPersistReq data;
}
public void SaveRequinsEdit(List<Requin> reqs) using (Stream stream = File.OpenRead(FileReq))
{
if (!Directory.Exists(FilePath))
{ {
Directory.CreateDirectory(FilePath); data = SerializerReq.ReadObject(stream) as DataToPersistReq;
} }
using (Stream stream = File.Create(FileReqEdit)) return (data.Requins, data.RequinsAdd, data.RequinsEdit);
{
SerializerReq.WriteObject(stream, requinsEdit);
}
} }
// Méthodes pour les utilisateurs (Utilisateur et Manager) public void SaveRequins(List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit)
public List<Personne> LoadUsers()
{
if (!File.Exists(FileUsers))
{
throw new FileNotFoundException("The persisance file ficUsers does not exist");
}
using (Stream stream = File.OpenRead(FileUsers))
{
users = SerializerUsers.ReadObject(stream) as List<Personne>;
}
return users;
}
public void SaveUsers(List<Personne> pers)
{ {
if (!Directory.Exists(FilePath)) if (!Directory.Exists(FilePath))
{ {
Directory.CreateDirectory(FilePath); Directory.CreateDirectory(FilePath);
} }
using (Stream stream = File.Create(FileUsers)) DataToPersistReq data = new DataToPersistReq();
data.Requins.AddRange(reqs);
data.RequinsAdd.AddRange(reqsAdd);
data.RequinsEdit.AddRange(reqsEdit);
using (TextWriter tw = File.CreateText(Path.Combine(FilePath, FileReq)))
{ {
SerializerUsers.WriteObject(stream, users); using (XmlWriter writer = XmlWriter.Create(tw, settings))
{
SerializerReq.WriteObject(writer, data);
}
} }
} }

@ -0,0 +1,21 @@
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Persistance
{
[DataContract]
class DataToPersistReq
{
[DataMember]
public List<Requin> Requins { get; set; } = new List<Requin>();
[DataMember]
public List<Requin> RequinsAdd { get; set; } = new List<Requin>();
[DataMember]
public List<Requin> RequinsEdit { get; set; } = new List<Requin>();
}
}

@ -0,0 +1,19 @@
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
namespace Persistance
{
[DataContract]
class DataToPersistUsers
{
[DataMember]
public List<Utilisateur> Users { get; set; } = new List<Utilisateur>();
[DataMember]
public List<Expert> Experts { get; set; } = new List<Expert>();
}
}

@ -10,6 +10,7 @@ namespace Persistance
{ {
public interface IPersistanceManager public interface IPersistanceManager
{ {
/*
List<Requin> LoadRequins(); List<Requin> LoadRequins();
void SaveRequins(List<Requin> reqs); void SaveRequins(List<Requin> reqs);
@ -18,8 +19,22 @@ namespace Persistance
List<Requin> LoadRequinsAdd(); List<Requin> LoadRequinsAdd();
void SaveRequinsAdd(List<Requin> reqs); void SaveRequinsAdd(List<Requin> reqs);
List<Personne> LoadUsers(); List<Utilisateur> LoadUsers();
void SaveUsers(List<Personne> pers); List<Expert> LoadExperts();
void SaveUsers(List<Utilisateur> users);
void SaveExperts(List<Expert> experts);
(List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit, List<Utilisateur> users, List<Expert> experts) Load();
void Save(List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit, List<Utilisateur> users, List<Expert> experts);
*/
(List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit) LoadRequins();
void SaveRequins(List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit);
(List<Utilisateur> users, List<Expert> experts) LoadUsers();
void SaveUsers(List<Utilisateur> users, List<Expert> experts);
} }
} }

@ -13,7 +13,8 @@ namespace StubLib
private List<Requin> requinsEdit = new List<Requin>(); private List<Requin> requinsEdit = new List<Requin>();
private List<Requin> requinsAdd = new List<Requin>(); private List<Requin> requinsAdd = new List<Requin>();
private List<Personne> utilisateurs = new List<Personne>(); private List<Utilisateur> utilisateurs = new List<Utilisateur>();
private List<Expert> expert = new List<Expert>();
public Stub() public Stub()
{ {
@ -30,48 +31,31 @@ namespace StubLib
requinsAdd.Add(new Requin("leQuatrièmeRequinAjouté", "Le requin vraiemnt pas banal", "C'est un requin vraiment pas ultra banal", "Images/White_shark.png", "Videos/Vid-dormeur-mexicain.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.EX, zone2, "Il est vraiment vraiment pas banal")); requinsAdd.Add(new Requin("leQuatrièmeRequinAjouté", "Le requin vraiemnt pas banal", "C'est un requin vraiment pas ultra banal", "Images/White_shark.png", "Videos/Vid-dormeur-mexicain.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.EX, zone2, "Il est vraiment vraiment pas banal"));
// Utilisateurs // Utilisateurs
utilisateurs.Add(new Utilisateur("a", "salut")); utilisateurs.Add(new Utilisateur("a", "salut"));
utilisateurs.Add(new Expert("salut", "hey", "bob")); expert.Add(new Expert("salut", "hey", "bob"));
} }
public List<Requin> LoadRequins() public (List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit) LoadRequins()
{ {
return new List<Requin>(requins); return (new List<Requin>(requins), new List<Requin>(requinsAdd), new List<Requin>(requinsEdit));
} }
public void SaveRequins(List<Requin> reqs) public void SaveRequins(List<Requin> reqs, List<Requin> reqsAdd, List<Requin> reqsEdit)
{ {
requins = reqs; requins = reqs;
requinsAdd = reqsAdd;
requinsEdit = reqsEdit;
} }
public List<Requin> LoadRequinsAdd() public (List<Utilisateur> users, List<Expert> experts) LoadUsers()
{ {
return new List<Requin>(requinsAdd); return (new List<Utilisateur>(utilisateurs), new List<Expert>(expert));
} }
public void SaveRequinsAdd(List<Requin> reqs) public void SaveUsers(List<Utilisateur> users, List<Expert> experts)
{
requins = reqs;
}
public List<Requin> LoadRequinsEdit()
{
return new List<Requin>(requinsEdit);
}
public void SaveRequinsEdit(List<Requin> reqs)
{
requinsEdit = reqs;
}
public List<Personne> LoadUsers()
{
return new List<Personne>(utilisateurs);
}
public void SaveUsers(List<Personne> users)
{ {
utilisateurs = users; utilisateurs = users;
expert = experts;
} }
} }
} }

@ -2,8 +2,7 @@
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">
Activated="Application_Activated">
<Application.Resources> <Application.Resources>
<ResourceDictionary> <ResourceDictionary>
<ResourceDictionary.MergedDictionaries> <ResourceDictionary.MergedDictionaries>

@ -17,23 +17,28 @@ namespace WpfApp1
{ {
public static IPersistanceManager strat { get; private set; } public static IPersistanceManager strat { get; private set; }
= new DataContractPersistance(); = new DataContractPersistance();
public Manager LeManager { get; private set; } = new Manager(new StubLib.Stub()); public static IPersistanceManager stubtruc { get; set; }
public ManagerUsers LeManagerUsers { get; private set; } = new ManagerUsers(new StubLib.Stub()); = new StubLib.Stub();
public Manager LeManager { get; private set; } = new Manager(strat);
public ManagerUsers LeManagerUsers { get; private set; } = new ManagerUsers(strat);
public void Temp() public App()
{ {
var mw = MainWindow as MainWindow; var dataReq = strat.LoadRequins();
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);
} }
private void Application_Activated(object sender, EventArgs e) public void Temp()
{ {
LeManager.LoadRequins(); var mw = MainWindow as MainWindow;
LeManager.Pers = new DataContractPersistance();
LeManager.SaveRequins();
LeManagerUsers.LoadUsers();
LeManagerUsers.Pers = new DataContractPersistance();
LeManagerUsers.SaveUsers();
} }
} }

@ -1 +0,0 @@
<ArrayOfRequin xmlns="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"/>

@ -1 +0,0 @@
<ArrayOfRequin xmlns="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"/>

@ -1 +0,0 @@
<ArrayOfRequin xmlns="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"/>

@ -0,0 +1,113 @@
<?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">
<Requins xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le">
<d2p1:Requin>
<d2p1:Description>wow il est trop bo</d2p1:Description>
<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>

@ -1 +1,18 @@
<ArrayOfPersonne xmlns="http://schemas.datacontract.org/2004/07/Mod%C3%A8le" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"/> <?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">
<Experts xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mod%C3%A8le">
<d2p1:Expert>
<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>

@ -61,6 +61,15 @@ namespace WpfApp1
return; return;
} }
} }
foreach(Personne p in Mgr.Experts)
{
if (p.Email==email && p.MotDePasse == password)
{
Mgr.SelectedUser = p;
Close();
return;
}
}
MessageBox.Show("L'Email ou le mot de passe est incorrect"); MessageBox.Show("L'Email ou le mot de passe est incorrect");
} }
} }

@ -60,7 +60,7 @@ namespace WpfApp1
private void exit_Click(object sender, RoutedEventArgs e) private void exit_Click(object sender, RoutedEventArgs e)
{ {
} }
private void valider_Click(object sender, RoutedEventArgs e) private void valider_Click(object sender, RoutedEventArgs e)

@ -131,4 +131,8 @@
<Resource Include="Images\Logo_entier.png" /> <Resource Include="Images\Logo_entier.png" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Folder Include="Persistance\" />
</ItemGroup>
</Project> </Project>

@ -38,10 +38,10 @@ namespace WpfApp1
} }
private void add_Click(object sender, RoutedEventArgs e) private void add_Click(object sender, RoutedEventArgs e)
{ {/*
var addSharkWindow = new AddAShark(); var addSharkWindow = new AddAShark();
addSharkWindow.ShowDialog(); addSharkWindow.ShowDialog();
/* */
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é");
@ -58,7 +58,7 @@ namespace WpfApp1
var validerSumbit = new ValiderSubmit(); var validerSumbit = new ValiderSubmit();
validerSumbit.ShowDialog(); validerSumbit.ShowDialog();
} }
*/
} }

Loading…
Cancel
Save