1 max de trucs

master
thchazot1 3 years ago
parent 989808fc13
commit 34e04914d5

@ -34,10 +34,7 @@ namespace Business
{
requins.Clear();
requins.AddRange(Pers.LoadRequins());
if (requins.Count > 0)
{
SelectedRequin = requins.First();
}
SelectedRequin = null;
}
public void SaveRequins()

@ -34,10 +34,7 @@ namespace Business
{
utilisateurs.Clear();
utilisateurs.AddRange(Pers.LoadUsers());
if (utilisateurs.Count > 0)
{
SelectedUser = utilisateurs.First();
}
SelectedUser = null;
}
public void SaveUsers()

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Modèle
{
public enum UCrequinType
{
normal,
edit,
add,
}
}

@ -20,7 +20,8 @@ namespace StubLib
requins.Add(new Requin("mon requin adoré", "trop cool ce requin", "wow il est trop bo", "Images/Dormeur-Mexicain.png", "Videos/Vid-dormeur-mexicain.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.EW, zone, "(C'est pas un vrai requin)"));
requins.Add(new Requin("Banane", "Le requin banal", "C'est un requin ultra banal", "Images/White_shark.png", "Videos/Vid-Requin-Blanc.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.LC, zone, "Il est pas aussi banal qu'il en a l'air"));
requins.Add(new Requin("Req1", "Le requin pas banal", "C'est un requin pas ultra banal", "Images/White_shark.png", "Videos/Vid-dormeur-mexicain.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.EX, zone2, "Il est vraiment pas banal"));
utilisateurs.Add(new Utilisateur("a", "salut"));
utilisateurs.Add(new Expert("salut", "hey", "bob"));
// Utilisateurs
}

@ -16,6 +16,7 @@ namespace WpfApp1
public partial class App : Application
{
public Manager LeManager { get; private set; } = new Manager(new StubLib.Stub());
public ManagerUsers LeManagerUser { get; private set; } = new ManagerUsers(new StubLib.Stub());
public void Temp()
{

@ -22,14 +22,14 @@
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<local:UserControlBoite Grid.Row="0" Message="Email" Margin="0,15,0,0"/>
<local:UserControlBoite Grid.Row="0" Message="Email" Margin="0,15,0,0" x:Name="email"/>
<Grid Grid.Row="1" Margin="0,15,0,15">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Mot de passe" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<PasswordBox Grid.Row="1" Height="30" MaxWidth="400" BorderBrush="{StaticResource Couleur3}"/>
<PasswordBox Grid.Row="1" Height="30" MaxWidth="400" BorderBrush="{StaticResource Couleur3}" x:Name="mdp" />
</Grid>
<Grid Grid.Row="2" Margin="0,15,0,15">
<Grid.RowDefinitions>
@ -37,9 +37,9 @@
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Confirmer le mot de passe" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<PasswordBox Grid.Row="1" Height="30" MaxWidth="400" BorderBrush="{StaticResource Couleur3}"/>
<PasswordBox Grid.Row="1" Height="30" MaxWidth="400" BorderBrush="{StaticResource Couleur3}" x:Name="reMdp"/>
</Grid>
<Button Grid.Row="3" Style="{StaticResource Button1}" Width="90" Height="30" Content="Inscription" Margin="0,0,0,20"/>
<Button Grid.Row="3" Style="{StaticResource Button1}" Width="90" Height="30" Content="Inscription" Margin="0,0,0,20" x:Name="inscription" Click="inscription_Click"/>
<TextBlock Grid.Row="4" Text="Vous avez déjà rejoint le gang des requins ?" TextWrapping="Wrap" TextAlignment="Center" Foreground="{StaticResource Couleur3}"/>
<Button Style="{StaticResource Button1}" Grid.Row="4" Width="80" Height="20" Content="Se connecter" x:Name="Connection" Click="Connection_Click"/>
</Grid>

@ -1,4 +1,6 @@
using System;
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@ -24,6 +26,8 @@ namespace WpfApp1
InitializeComponent();
}
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUser;
private void exit_Click(object sender, RoutedEventArgs e)
{
Close();
@ -35,5 +39,29 @@ namespace WpfApp1
Close();
connectWindow.ShowDialog();
}
private void inscription_Click(object sender, RoutedEventArgs e)
{
string mail = email.LeContenu.Text;
string password = mdp.Password;
string conf = reMdp.Password;
if (password != conf)
{
MessageBox.Show("Les mots de passe doivent être identiques");
}
else
{
Utilisateur user = new Utilisateur(mail, password);
if (MgrUser.AjouterUtilisateur(user))
{
MgrUser.SelectedUser = user;
Close();
}
else
{
MessageBox.Show("Cet utilisateur existe déjà");
}
}
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

@ -28,7 +28,7 @@
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Email" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<TextBlock Text="poutou@etu.uca.fr" TextAlignment="Center" TextWrapping="Wrap" Grid.Row="1" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur1}" Background="White"/>
<TextBlock Text="poutou@etu.uca.fr" TextAlignment="Center" TextWrapping="Wrap" Grid.Row="1" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur1}" Background="White" x:Name="email"/>
</Grid>
<Grid Grid.Row="1" Margin="0,15,0,15">
<Grid.RowDefinitions>
@ -36,19 +36,19 @@
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Mot de passe" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<TextBlock Text="**********" TextAlignment="Center" TextWrapping="Wrap" Grid.Row="1" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur1}" Background="White"/>
<TextBlock Text="**********" TextAlignment="Center" TextWrapping="Wrap" Grid.Row="1" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur1}" Background="White" x:Name="mdp"/>
</Grid>
<Grid Grid.Row="2" Margin="0,15,0,15">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Nombre de submits" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<TextBlock Text="86" TextAlignment="Center" TextWrapping="Wrap" Grid.Row="1" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur1}" Background="White"/>
<TextBlock x:Name="mess" Text="Nombre de submits" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<TextBlock Text="86" TextAlignment="Center" TextWrapping="Wrap" Grid.Row="1" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur1}" Background="White" x:Name="surnombre"/>
</Grid>
<TextBlock Text="Merci pour votre contribution ! Jawsome !" Grid.Row="2" HorizontalAlignment="Center" Margin="0,55,0,0" Foreground="{StaticResource Couleur3}"/>
<Button Style="{StaticResource Button1}" Grid.Row="3" Width="150" Height="20" Content="Changer le mot de passe"/>
<Button Grid.Row="4" Style="{StaticResource Button1}" Width="80" Height="30" Content="Déconnexion"/>
<Button Grid.Row="4" Style="{StaticResource Button1}" Width="80" Height="30" Content="Déconnexion" x:Name="deco" Click="deco_Click"/>
</Grid>
</DockPanel>

@ -1,4 +1,6 @@
using System;
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@ -19,14 +21,55 @@ namespace WpfApp1
/// </summary>
public partial class InfoUtilisateur : Window
{
public InfoUtilisateur()
{
InitializeComponent();
}
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUser;
private Personne _pers;
public Personne pers
{
get { return _pers; }
set
{
_pers = value;
UpdateUi(_pers);
}
}
private void UpdateUi(Personne pers)
{
mdp.Text = "";
email.Text = pers.Email;
for (int i = 0; i < pers.MotDePasse.Length; i++)
{
mdp.Text = mdp.Text + "*";
}
if (MgrUser.SelectedUser is Utilisateur user)
{
surnombre.Text = user.NbSubmit.ToString();
}
else if (MgrUser.SelectedUser is Expert alex)
{
mess.Text = "Surnom";
surnombre.Text = alex.Surnom;
}
}
private void exit_Click(object sender, RoutedEventArgs e)
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapAcc();
}
private void deco_Click(object sender, RoutedEventArgs e)
{
Close();
MgrUser.SelectedUser = null;
}
}
}

@ -28,6 +28,7 @@ namespace WpfApp1
public partial class MainWindow : Window
{
public Manager Mgr => (Application.Current as App).LeManager;
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUser;
Nullable<Zone> zonePage{ get; set; }
@ -37,13 +38,12 @@ namespace WpfApp1
Mgr.LoadRequins();
MgrUser.LoadUsers();
DataContext = Mgr;
chargerUC();
List<Zone> zones = new List<Zone> { Zone.ATLANTIQUE, Zone.ARCTIQUE };
//uc1.requin = new Requin("Bob le bricoleur", "Heterodontus Mexicanus", "*Ronflements*", "Images/Dormeur-Mexicain.jpg", "Videos/Vid-dormeur-Mexicain.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.DD, zones, "Hé laissez moi je fais dodo!");
// uc2.requin = new Requin("Requin Dormeur Mexdzdqzdicain", "Heterodontus Mexicanus", "*Ronflements*", "Images/Dormeur-Mexicain.jpg", "Videos/Vid-dormeur-Mexicain.mp4", "Images/rep_Heterodontus_mexicanus.png", Conservation.DD, zones, "Hé laissez moi je fais dodo!");
}
@ -121,9 +121,9 @@ namespace WpfApp1
public void chargerUC()
{
viderListBox();
foreach(Requin req in Mgr.Requins)
foreach (Requin req in Mgr.Requins)
{
laListe.Items.Add(new UserControlRequin { requin = req });
laListe.Items.Add(new UserControlRequin { requin = req , type = UCrequinType.normal }) ;
}
}

@ -21,16 +21,16 @@
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<local:UserControlBoite Grid.Row="0" Message="Email" Margin="0,15,0,0"/>
<local:UserControlBoite Grid.Row="0" Message="Email" Margin="0,15,0,0" x:Name="mail"/>
<Grid Grid.Row="1" Margin="0,15,0,15">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Mot de passe" FontSize="12" FontFamily="{StaticResource Police2}" Height="30" MaxWidth="400" Foreground="{StaticResource Couleur3}" TextAlignment="Center" Background="{StaticResource Couleur2}" Grid.Row="0"/>
<PasswordBox Grid.Row="1" Height="30" MaxWidth="400" BorderBrush="{StaticResource Couleur3}"/>
<PasswordBox Grid.Row="1" Height="30" MaxWidth="400" BorderBrush="{StaticResource Couleur3}" x:Name="mdp"/>
</Grid>
<Button Grid.Row="2" Style="{StaticResource Button1}" Width="80" Height="30" Content="Connexion" Margin="0,0,0,30"/>
<Button Grid.Row="2" Style="{StaticResource Button1}" Width="80" Height="30" Content="Connexion" Margin="0,0,0,30" x:Name="connect" Click="connect_Click"/>
<TextBlock Grid.Row="3" Text="Vous n'avez pas encore rejoint le gang des requins ?" TextWrapping="Wrap" TextAlignment="Center" Foreground="{StaticResource Couleur3}"/>
<Button Style="{StaticResource Button1}" Grid.Row="3" Width="70" Height="20" Content="S'inscrire" x:Name="Inscription" Click="Inscription_Click"/>
</Grid>

@ -1,4 +1,6 @@
using System;
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@ -19,9 +21,14 @@ namespace WpfApp1
/// </summary>
public partial class SeConnecter : Window
{
public ManagerUsers Mgr => (Application.Current as App).LeManagerUser;
public SeConnecter()
{
InitializeComponent();
Mgr.LoadUsers();
DataContext = Mgr;
}
private void exit_Click(object sender, RoutedEventArgs e)
@ -35,5 +42,26 @@ namespace WpfApp1
Close();
inscrireWindow.ShowDialog();
}
private void connect_Click(object sender, RoutedEventArgs e)
{
string email = mail.LeContenu.Text;
string password = mdp.Password;
if (string.IsNullOrWhiteSpace(email) || string.IsNullOrWhiteSpace(password))
{
MessageBox.Show("Veuillez remplir toutes les cases");
return;
}
foreach(Personne p in Mgr.Utilisateurs)
{
if (p.Email==email && password == p.MotDePasse)
{
Mgr.SelectedUser = p;
Close();
return;
}
}
MessageBox.Show("L'Email ou le mot de passe est incorrect");
}
}
}

@ -32,7 +32,7 @@ namespace WpfApp1
}
public Manager Manager => (Application.Current as App).LeManager;
public ManagerUsers ManagerUser => (Application.Current as App).LeManagerUser;
private Requin _requin;
public Requin requin
@ -58,16 +58,71 @@ namespace WpfApp1
LienVid.Contenu = requin.Video;
LienMap.Contenu = requin.PhotoCarte;
funFact.Contenu = requin.FunFact;
if (requin.StatutCons == Conservation.EX)
{
ex.IsChecked = true;
}
else if (requin.StatutCons == Conservation.EW)
{
ew.IsChecked = true;
}
else if (requin.StatutCons == Conservation.CR)
{
cr.IsChecked = true;
}
else if (requin.StatutCons == Conservation.EN)
{
en.IsChecked = true;
}
else if (requin.StatutCons == Conservation.VU)
{
vu.IsChecked = true;
}
else if (requin.StatutCons == Conservation.NT)
{
nt.IsChecked = true;
}
else if (requin.StatutCons == Conservation.LC)
{
lc.IsChecked = true;
}
else if (requin.StatutCons == Conservation.DD)
{
dd.IsChecked = true;
}
else if (requin.StatutCons == Conservation.NE)
{
ne.IsChecked = true;
}
foreach (Zone z in requin.Repartition)
{
if (z == Zone.ATLANTIQUE)
{
Atla.IsChecked = true;
}
if (z == Zone.ARCTIQUE)
{
Arct.IsChecked = true;
}
if (z == Zone.INDIEN)
{
Indi.IsChecked = true;
}
if (z == Zone.PACIFIQUE)
{
Paci.IsChecked = true;
}
}
}
private void exit_Click(object sender, RoutedEventArgs e)
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapAcc();
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapDes(requin);
}
private void submit_Click(object sender, RoutedEventArgs e)
{
int testCons = 0;
List<Zone> lesZones = new List<Zone>();
Conservation cons = new Conservation();
string nom = leNom.LeContenu.Text;
@ -81,32 +136,26 @@ namespace WpfApp1
if (ex.IsChecked == true)
{
cons = Conservation.EX;
testCons++;
}
else if (ew.IsChecked == true)
{
cons = Conservation.EW;
testCons++;
}
else if (cr.IsChecked == true)
{
cons = Conservation.CR;
testCons++;
}
else if (en.IsChecked == true)
{
cons = Conservation.EN;
testCons++;
}
else if (vu.IsChecked == true)
{
cons = Conservation.VU;
testCons++;
}
else if (nt.IsChecked == true)
{
cons = Conservation.NT;
testCons++;
}
else if (lc.IsChecked == true)
{
@ -115,16 +164,12 @@ namespace WpfApp1
else if (dd.IsChecked == true)
{
cons = Conservation.DD;
testCons++;
}
else if (ne.IsChecked == true)
{
cons = Conservation.NE;
testCons++;
}
if (Arct.IsChecked == true)
{
lesZones.Add(Zone.ARCTIQUE);
@ -142,27 +187,21 @@ namespace WpfApp1
lesZones.Add(Zone.PACIFIQUE);
}
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))
{
return;
}
else
{
Requin requin = new Requin(nom, sciNam, descri, photo, video, map, cons , lesZones, fun);
foreach (Requin req in Manager.Requins)
Requin requin = new Requin(nom, sciNam, descri, photo, video, map, cons, lesZones, fun);
foreach (Requin req in Manager.Requins)
{
if (req.Equals(requin))
{
if (req.Equals(requin))
{
Manager.ModifieRequin(req, requin);
break;
}
Manager.ModifieRequin(req, requin);
break;
}
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapAcc();
}
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapDes(requin);
}
}
}

@ -1,4 +1,5 @@
using Modèle;
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
@ -22,6 +23,9 @@ namespace WpfApp1
/// </summary>
public partial class UserControlRequin : UserControl
{
public Manager Mgr => (Application.Current as App).LeManager;
public UserControlRequin()
{
InitializeComponent();
@ -31,7 +35,19 @@ namespace WpfApp1
public void UserControlReq_MouseDown(object sender, MouseButtonEventArgs e)
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapDes(this.requin);
Mgr.SelectedRequin = requin;
if (type == UCrequinType.normal)
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapDes(requin);
}
else if (type == UCrequinType.edit)
{
}
else
{
}
}
private Requin _requin;
@ -44,7 +60,7 @@ namespace WpfApp1
}
}
public UCrequinType type;
public void uptadeUi(Requin requin)
{

@ -1,4 +1,6 @@
using System;
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@ -20,6 +22,8 @@ namespace WpfApp1
/// </summary>
public partial class userControlAcceuil : UserControl
{
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUser;
public userControlAcceuil()
{
InitializeComponent();
@ -35,14 +39,37 @@ namespace WpfApp1
private void add_Click(object sender, RoutedEventArgs e)
{
var addSharkWindow = new AddAShark();
addSharkWindow.ShowDialog();
if (MgrUser.SelectedUser == null)
{
MessageBox.Show("Vous avez besoin d'être connecté pour accéder à cette fonctionnalité");
var seConnecter = new SeConnecter();
seConnecter.ShowDialog();
}
else if (MgrUser.SelectedUser is Utilisateur)
{
var addSharkWindow = new AddAShark();
addSharkWindow.ShowDialog();
}
else if (MgrUser.SelectedUser is Expert)
{
var validerSumbit = new ValiderSubmit();
validerSumbit.ShowDialog();
}
}
private void Inscription_Click(object sender, RoutedEventArgs e)
{
var inscrireWindow = new CreerCompte();
inscrireWindow.ShowDialog();
if (MgrUser.SelectedUser == null)
{
var inscrireWindow = new CreerCompte();
inscrireWindow.ShowDialog();
}
else
{
var infoUser = new InfoUtilisateur{ pers = MgrUser.SelectedUser };
infoUser.ShowDialog();
}
}
}
}

@ -1,4 +1,5 @@
using Modèle;
using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
@ -25,6 +26,8 @@ namespace WpfApp1
{
InitializeComponent();
}
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUser;
public Manager Mgr => (Application.Current as App).LeManager;
private Requin _requin;
public Requin requin
@ -42,11 +45,21 @@ namespace WpfApp1
private void exit_Click(object sender, RoutedEventArgs e)
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapAcc();
Mgr.SelectedRequin = null;
}
private void edit_Click(object sender, RoutedEventArgs e)
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapEdit(this.requin);
if (MgrUser.SelectedUser == null)
{
MessageBox.Show("Vous avez besoin d'être connecté pour accéder à cette fonctionnalité");
var seConnecter = new SeConnecter();
seConnecter.ShowDialog();
}
else
{
((MainWindow)System.Windows.Application.Current.MainWindow).ContentControlSwapEdit(requin);
}
}

Loading…
Cancel
Save