You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
876 lines
40 KiB
876 lines
40 KiB
using System;
|
|
using notre_bibliotheque;
|
|
using System.Text;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using Données;
|
|
using System.Linq;
|
|
|
|
namespace test_number_one
|
|
{
|
|
class Program
|
|
{
|
|
private static Chargeur loader = new Stub("");
|
|
static void Main(string[] args)
|
|
{
|
|
TestGlobal();
|
|
}
|
|
|
|
static void TestGlobal()
|
|
{
|
|
|
|
IList<string> lesAuteurs = new List<string>();
|
|
lesAuteurs.Add("auteur 1");
|
|
lesAuteurs.Add("auteur 2");
|
|
IList<string> lesLogiciels = new List<string>();
|
|
lesLogiciels.Add("logiciel 1");
|
|
lesLogiciels.Add("logiciel 2");
|
|
lesLogiciels.Add("logiciel 3");
|
|
|
|
|
|
IList<Item> lesLangages = loader.ChargerLesLangages();
|
|
Items itemsLang = new Items(lesLangages);
|
|
|
|
|
|
IList<Item> lesComptes = loader.ChargerLesComptes();
|
|
Item it11 = new Compte("id13", "mdp1");
|
|
lesComptes.Add(it11);
|
|
Gestionaire gestionaireDeComptes = loader.ChargerGestionaireDeCompte();
|
|
Gestionaire gestionaireDeLanagage = loader.ChargerGestionaireDeLangage();
|
|
|
|
|
|
|
|
|
|
|
|
bool l = true;
|
|
|
|
void AfficherLesLangages(GestionaireDeLangages g)
|
|
{
|
|
Console.WriteLine("Comment Afficher les langages");
|
|
Console.WriteLine("1. Trier par nom");
|
|
Console.WriteLine("2. Afficher selement les favoris");
|
|
Console.WriteLine("3. Trier par ordre de date de création");
|
|
Console.WriteLine("4. Trier par ordre de génération");
|
|
|
|
|
|
string rép = Console.ReadLine();
|
|
switch (rép)
|
|
{
|
|
case "2":
|
|
if(GestionaireDeComptes.CompteCourant is null)
|
|
{
|
|
Console.WriteLine("Persone n'est connecté");
|
|
return;
|
|
}
|
|
if(GestionaireDeComptes.CompteCourant.LesLangagesFavoris.Count == 0)
|
|
{
|
|
Console.WriteLine($"{GestionaireDeComptes.CompteCourant.Identifiant} n'a pas de langage favoris");
|
|
return;
|
|
}
|
|
g.ItemsLangages.Filtre = ValeurTri.Favoris;
|
|
break;
|
|
case "3":
|
|
g.ItemsLangages.Filtre = ValeurTri.Date;
|
|
break;
|
|
case "4":
|
|
g.ItemsLangages.Filtre = ValeurTri.Génération;
|
|
break;
|
|
case "1":
|
|
default:
|
|
g.ItemsLangages.Filtre = ValeurTri.Nom;
|
|
break;
|
|
}
|
|
foreach (Item it in g.ItemsLangages.LesItems)
|
|
{
|
|
Console.WriteLine($"{it}\n**************************************************************************");
|
|
}
|
|
}
|
|
void AfficherLesComptes(GestionaireDeComptes g)
|
|
{
|
|
foreach (Item it in g.ItemsComptes.LesItems)
|
|
{
|
|
Console.WriteLine($"{it}\n**************************************************************************");
|
|
}
|
|
}
|
|
void CreerUnCompte(GestionaireDeComptes g)
|
|
{
|
|
Console.Write("ID :");
|
|
string id = Console.ReadLine();
|
|
Console.Write("Mot de passe :");
|
|
string mdp1 = Console.ReadLine();
|
|
Console.Write("Mot de passe :");
|
|
string mdp2 = Console.ReadLine();
|
|
Console.Write("Accès au mode administrateur ? (o/n) : ");
|
|
string rep = Console.ReadLine();
|
|
bool admin;
|
|
if (rep == "o")
|
|
{
|
|
admin = true;
|
|
}
|
|
else admin = false;
|
|
try
|
|
{
|
|
Compte tmp = g.VerfierCreationCompte(id, mdp1, mdp2,admin);
|
|
g.ItemsComptes.Ajouter(tmp);
|
|
GestionaireDeComptes.CompteCourant = tmp;
|
|
Console.WriteLine("Votre compte à bien été créé");
|
|
}catch(Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
|
|
}
|
|
void SupprimerUnCompte(GestionaireDeComptes g)
|
|
{
|
|
Console.Write("ID :");
|
|
string id = Console.ReadLine();
|
|
Console.Write("MDP :");
|
|
string mdp = Console.ReadLine();
|
|
Compte tmp = new Compte(id, mdp);
|
|
try
|
|
{
|
|
g.ItemsComptes.Supprimer(tmp);
|
|
Console.WriteLine($"{tmp.Identifiant} à bien était supprimé");
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
|
|
}
|
|
void AjouterUnLangage(GestionaireDeLangages g)
|
|
{
|
|
if (GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
if (GestionaireDeComptes.CompteCourant.EstAdmin)
|
|
{
|
|
bool success = false;
|
|
string respuesta;
|
|
string nom = "";
|
|
string aut = "";
|
|
string doc = "";
|
|
string logo = "";
|
|
string log = "";
|
|
string utilite = "";
|
|
int gen = 0;
|
|
DateTime date = DateTime.Now;
|
|
while (!success)
|
|
{
|
|
Console.Write("Nom : ");
|
|
nom = Console.ReadLine();
|
|
if(string.IsNullOrEmpty(nom.Trim()))
|
|
{
|
|
Console.WriteLine("Le nom doit être saisi");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
IList<string> auteurs = new List<string>();
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
do
|
|
{
|
|
Console.Write("Un Auteur : ");
|
|
aut = Console.ReadLine();
|
|
auteurs.Add(aut);
|
|
Console.Write("D'auteurs auteurs ? (o/n) : ");
|
|
respuesta = Console.ReadLine();
|
|
} while (respuesta != "n");
|
|
if(auteurs.Count == 0)
|
|
{
|
|
Console.WriteLine("Il doit y avoir au moins un auteur");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
Console.Write("Date de création (jj/mm/aa) : ");
|
|
try
|
|
{
|
|
date = DateTime.Parse(Console.ReadLine());
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
Console.Write("Lien vers la documentation : ");
|
|
doc = Console.ReadLine();
|
|
if(String.IsNullOrEmpty(doc.Trim()))
|
|
{
|
|
Console.WriteLine("Le lien vers la documentation doit être rempli");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
Console.Write("Logo (chemin) : ");
|
|
|
|
logo = Console.ReadLine();
|
|
if(string.IsNullOrEmpty(logo.Trim()))
|
|
{
|
|
Console.WriteLine("Le chemin doit être saisi");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
|
|
IList<string> logiciels = new List<string>();
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
do
|
|
{
|
|
Console.Write("Un logiciel : ");
|
|
log = Console.ReadLine();
|
|
logiciels.Add(log);
|
|
Console.Write("D'auteurs logiciels ? (o/n) : ");
|
|
respuesta = Console.ReadLine();
|
|
} while (respuesta != "n");
|
|
if(logiciels.Count == 0)
|
|
{
|
|
Console.WriteLine("Il faut saisir des logiciels");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
|
|
bool finish = false;
|
|
string exemple = "";
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
Console.WriteLine("Exemple de code (Hello World) - tapez entrer pour ecrire une nouvelle ligne");
|
|
while (!finish)
|
|
{
|
|
exemple += $"{Console.ReadLine()}\n";
|
|
Console.Write("Ecrire une autre ligne ? (o/n) : ");
|
|
respuesta = Console.ReadLine();
|
|
if (respuesta == "n")
|
|
{
|
|
finish = true;
|
|
}
|
|
}
|
|
if(String.IsNullOrEmpty(exemple.Trim()))
|
|
{
|
|
Console.WriteLine("L'exemple doit être saisi");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
Console.Write("Utilités du langage : ");
|
|
|
|
utilite = Console.ReadLine();
|
|
if(string.IsNullOrEmpty(utilite))
|
|
{
|
|
Console.WriteLine("Il faut saisir l'utilité du langage");
|
|
continue;
|
|
}
|
|
success = true;
|
|
|
|
}
|
|
|
|
IList<Paradigme> paradigmes = new List<Paradigme>();
|
|
Paradigme parag;
|
|
success = false;
|
|
while (!success)
|
|
{
|
|
do
|
|
{
|
|
Console.Write("Un paradigme : ");
|
|
parag = new Paradigme(Console.ReadLine());
|
|
paradigmes.Add(parag);
|
|
Console.Write("D'auteurs paradigmes ? (o/n) : ");
|
|
respuesta = Console.ReadLine();
|
|
} while (respuesta != "n");
|
|
|
|
if(paradigmes.Count == 0)
|
|
{
|
|
Console.WriteLine("Il doit y avoir au moins un paradigme");
|
|
continue;
|
|
}
|
|
success = true;
|
|
}
|
|
success = false;
|
|
while(!success)
|
|
{
|
|
Console.Write("Définire une génération :");
|
|
try
|
|
{
|
|
gen = int.Parse(Console.ReadLine());
|
|
if(gen <= 0)
|
|
{
|
|
Console.WriteLine("La génération du langage doit être superieur à 0");
|
|
continue;
|
|
}
|
|
}catch(System.IO.IOException e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
success = true;
|
|
}
|
|
Langage lang = new Langage(nom, date, auteurs, doc, logo, exemple, logiciels, utilite, paradigmes, gen);
|
|
g.ItemsLangages.Ajouter(lang);
|
|
if (g.ItemsLangages.Exists(lang))
|
|
{
|
|
Console.WriteLine("Le Langage a bien été ajouté à la liste");
|
|
Console.WriteLine("*****************************************");
|
|
Console.WriteLine(lang);
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("pb : le langage n'a pas été ajouté");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'avez pas accès au mode adminstrateur");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connécté");
|
|
}
|
|
}
|
|
void ModifierLangageSelectionné()
|
|
{
|
|
if (GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
if (GestionaireDeComptes.CompteCourant.EstAdmin)
|
|
{
|
|
if (GestionaireDeLangages.IsASelectedLanguage)
|
|
{
|
|
bool success = false;
|
|
Console.WriteLine(GestionaireDeLangages.LangageCourant);
|
|
string answer;
|
|
Console.Write("Modifier le nom ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
while (!success)
|
|
{
|
|
Console.Write("Nouveau nom : ");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.Nom = Console.ReadLine();
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier la date de création ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
while (!success)
|
|
{
|
|
Console.Write("jj/mm/aa : ");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.DateDuLangage = DateTime.Parse(Console.ReadLine());
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier les auteurs ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
IList<string> auteurs = new List<string>();
|
|
string aut;
|
|
string reponse;
|
|
while (!success)
|
|
{
|
|
do
|
|
{
|
|
Console.Write("Un Auteur : ");
|
|
aut = Console.ReadLine();
|
|
auteurs.Add(aut);
|
|
Console.Write("D'auteurs auteurs ? (o/n) : ");
|
|
reponse = Console.ReadLine();
|
|
} while (reponse != "n");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.LesAuteurs = auteurs;
|
|
success = true;
|
|
}
|
|
catch(Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier le logo ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
while (!success)
|
|
{
|
|
Console.Write("Nouveau chemin du logo : ");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.CheminDuLogo = Console.ReadLine();
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier la documentation ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
while (!success)
|
|
{
|
|
Console.Write("Nouveau lien vers la documentation : ");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.Documentation = Console.ReadLine();
|
|
success = true;
|
|
}
|
|
catch(Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier les logiciels ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
IList<string> logiciels = new List<string>();
|
|
string log;
|
|
string reponse;
|
|
while (!success)
|
|
{
|
|
do
|
|
{
|
|
Console.Write("Un logiciel : ");
|
|
log = Console.ReadLine();
|
|
logiciels.Add(log);
|
|
Console.Write("D'auteurs logiciels ? (o/n) : ");
|
|
reponse = Console.ReadLine();
|
|
} while (reponse != "n");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.LogicielsConus = logiciels;
|
|
success = true;
|
|
}
|
|
catch(Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier l'utilité ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
while (!success)
|
|
{
|
|
Console.Write("Nouvelle utilité : ");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.UtilitéDuLangage = Console.ReadLine();
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier l'exemple ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if (answer == "o")
|
|
{
|
|
bool finish = false;
|
|
string exemple = "";
|
|
while (!success)
|
|
{
|
|
while (!finish)
|
|
{
|
|
exemple += $"{Console.ReadLine()}\n";
|
|
Console.Write("Ecrire une autre ligne ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if (answer == "n")
|
|
{
|
|
finish = true;
|
|
}
|
|
}
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.ExempleDeCode = exemple;
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
Console.Write("Modifier les paradigmes ? (o/n) : ");
|
|
answer = Console.ReadLine();
|
|
if(answer == "o")
|
|
{
|
|
IList<Paradigme> paradigmes = new List<Paradigme>();
|
|
Paradigme parag;
|
|
string reponse;
|
|
while (!success)
|
|
{
|
|
do
|
|
{
|
|
Console.Write("Un paradigme : ");
|
|
parag = new Paradigme(Console.ReadLine());
|
|
paradigmes.Add(parag);
|
|
Console.Write("D'auteurs paradigmes ? (o/n) : ");
|
|
reponse = Console.ReadLine();
|
|
} while (reponse != "n");
|
|
try
|
|
{
|
|
GestionaireDeLangages.LangageCourant.LesParadigmes = paradigmes;
|
|
success = true;
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
success = false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'avez séléctioné aucun langage");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'avez pas accès au mode adminstrateur");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connécté");
|
|
}
|
|
}
|
|
void SupprimerLangageSelectionné(GestionaireDeLangages g)
|
|
{
|
|
if (GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
if (GestionaireDeComptes.CompteCourant.EstAdmin)
|
|
{
|
|
if (GestionaireDeLangages.IsASelectedLanguage)
|
|
{
|
|
try
|
|
{
|
|
Console.WriteLine(GestionaireDeLangages.LangageCourant);
|
|
Console.Write("Supprimer ce langage ? (o/n) : ");
|
|
string answer = Console.ReadLine();
|
|
if (answer == "o")
|
|
{
|
|
g.ItemsLangages.Supprimer(GestionaireDeLangages.LangageCourant);
|
|
if (g.ItemsLangages.Exists(GestionaireDeLangages.LangageCourant))
|
|
{
|
|
Console.WriteLine("pb : le langage n'a pas été ajouté");
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine($"Le langage à bien était supprimé");
|
|
GestionaireDeLangages.LangageCourant = null;
|
|
}
|
|
}
|
|
}
|
|
catch (Exception e)
|
|
{
|
|
Console.WriteLine(e.Message);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'avez séléctioné aucun langage");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'avez pas accès au mode administrateur");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connécté");
|
|
}
|
|
|
|
}
|
|
void ModifierCompte()
|
|
{
|
|
if (GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
Console.WriteLine("Le compte courant : ");
|
|
Console.WriteLine(GestionaireDeComptes.CompteCourant);
|
|
Console.WriteLine("**********************************");
|
|
Console.Write("Nouveau mot de passe : ");
|
|
string mdp = Console.ReadLine();
|
|
Console.Write("Confirmer le mot de passe : ");
|
|
string mdp2 = Console.ReadLine();
|
|
while (mdp != mdp2)
|
|
{
|
|
Console.WriteLine("Les deux mots de passe ne sont pas les mêmes; veuillez réessayer");
|
|
Console.Write("Nouveau mot de passe : ");
|
|
mdp = Console.ReadLine();
|
|
Console.Write("Confirmer le mot de passe : ");
|
|
mdp2 = Console.ReadLine();
|
|
}
|
|
GestionaireDeComptes.CompteCourant.MotDePasse = mdp;
|
|
Console.WriteLine("Le compte courant : ");
|
|
Console.WriteLine(GestionaireDeComptes.CompteCourant);
|
|
Console.WriteLine("**********************************");
|
|
Console.WriteLine("Mot de passe modifié avec succès");
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connecté");
|
|
}
|
|
|
|
}
|
|
void SeConnecter(GestionaireDeComptes g)
|
|
{
|
|
if (!GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
Console.Write("ID :");
|
|
string id = Console.ReadLine();
|
|
Console.Write("Mot de passe :");
|
|
string mdp = Console.ReadLine();
|
|
Compte tmp = new Compte(id, mdp);
|
|
if (g.ItemsComptes.Exists(tmp))
|
|
{
|
|
int indexCompte = g.ItemsComptes.LesItems.IndexOf(tmp);
|
|
GestionaireDeComptes.CompteCourant = g.ItemsComptes.LesItems[indexCompte] as Compte;
|
|
Console.BackgroundColor = ConsoleColor.Green;
|
|
Console.ForegroundColor = ConsoleColor.Black;
|
|
Console.WriteLine("Connecté avec succès");
|
|
Console.BackgroundColor = ConsoleColor.Black;
|
|
Console.ForegroundColor = ConsoleColor.White;
|
|
}
|
|
else
|
|
{
|
|
Console.BackgroundColor = ConsoleColor.Red;
|
|
Console.ForegroundColor = ConsoleColor.Black;
|
|
Console.WriteLine("ID ou mot de passe incorecte");
|
|
Console.BackgroundColor = ConsoleColor.Black;
|
|
Console.ForegroundColor = ConsoleColor.White;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous êtes déja connecté");
|
|
}
|
|
}
|
|
void AjouterUnLangageEnFavoris()
|
|
{
|
|
if(GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
if(GestionaireDeLangages.IsASelectedLanguage)
|
|
{
|
|
if (!GestionaireDeComptes.CompteCourant.LesLangagesFavoris.Contains(GestionaireDeLangages.LangageCourant))
|
|
{
|
|
GestionaireDeComptes.CompteCourant.LesLangagesFavoris.Add(GestionaireDeLangages.LangageCourant);
|
|
Console.WriteLine($"Le langage {GestionaireDeLangages.LangageCourant.Nom} a été ajouté avec succès dans la liste des favoris");
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine($"Le langage {GestionaireDeLangages.LangageCourant.Nom} est deja dans votre liste des favoris");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'avez séléctioné aucun langage");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connécté");
|
|
}
|
|
}
|
|
void SelectionerUnLangage(GestionaireDeLangages g)
|
|
{
|
|
ValeurTri ancieneValeurTri = g.ItemsLangages.Filtre;
|
|
g.ItemsLangages.Filtre = ValeurTri.Nom;
|
|
foreach(Langage lang in g.ItemsLangages.LesItems)
|
|
{
|
|
Console.WriteLine(lang.Nom);
|
|
}
|
|
Console.Write("Saisir le nom du langage :");
|
|
string rép = Console.ReadLine();
|
|
foreach(Langage lang in g.ItemsLangages.LesItems)
|
|
{
|
|
if (lang.Nom == rép)
|
|
{
|
|
GestionaireDeLangages.LangageCourant = lang;
|
|
g.ItemsLangages.Filtre = ancieneValeurTri;
|
|
Console.WriteLine($"Lanagage séléctioné :\n{lang}");
|
|
return;
|
|
}
|
|
}
|
|
Console.WriteLine($"Le langage {rép} n'existe pas.");
|
|
g.ItemsLangages.Filtre = ancieneValeurTri;
|
|
}
|
|
void SupprimerUnLangageDesFavoris()
|
|
{
|
|
if(GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
if (GestionaireDeLangages.IsASelectedLanguage)
|
|
{
|
|
if (GestionaireDeComptes.CompteCourant.LesLangagesFavoris.Remove(GestionaireDeLangages.LangageCourant))
|
|
{
|
|
Console.WriteLine($"Le langage {GestionaireDeLangages.LangageCourant.Nom} a bien été retiré de la liste des langages");
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine($"Ce langage n'est pas dans votre liste de favoris");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Aucun langage n'est séléctioné");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connécté");
|
|
}
|
|
}
|
|
void AfficherLeLangageSéléctioné()
|
|
{
|
|
if(GestionaireDeLangages.IsASelectedLanguage)
|
|
{
|
|
Console.WriteLine(GestionaireDeLangages.LangageCourant);
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Aucun langage n'est séléctioné");
|
|
}
|
|
}
|
|
void SeDeconnecter(GestionaireDeComptes g)
|
|
{
|
|
if (GestionaireDeComptes.IsSomeoneConnected)
|
|
{
|
|
GestionaireDeComptes.CompteCourant.EstConnecter = false;
|
|
GestionaireDeComptes.CompteCourant = null;
|
|
Console.BackgroundColor = ConsoleColor.Green;
|
|
Console.ForegroundColor = ConsoleColor.Black;
|
|
Console.WriteLine("Déconnecté avec succès");
|
|
Console.BackgroundColor = ConsoleColor.Black;
|
|
Console.ForegroundColor = ConsoleColor.White;
|
|
}
|
|
else
|
|
{
|
|
Console.WriteLine("Vous n'êtes pas connecté");
|
|
}
|
|
}
|
|
while (l)
|
|
{
|
|
|
|
Console.WriteLine("1\tAfficher les langages");
|
|
Console.WriteLine("2\tAfficher les comptes");
|
|
Console.WriteLine("3\tCréer un compte");
|
|
Console.WriteLine("4\tSupprimer un commpte");
|
|
Console.WriteLine("5\tAjouter un langage");
|
|
Console.WriteLine("6\tSupprimer le langage sélectionné");
|
|
Console.WriteLine("7\tSe connecter");
|
|
Console.WriteLine("8\tModifier le mot de passe du compte");
|
|
Console.WriteLine("9\tSéléctioner un langage");
|
|
Console.WriteLine("10\tAjouter le langage séléctioné en favoris");
|
|
Console.WriteLine("11\tSupprimé le langage séléctioné des favoris");
|
|
Console.WriteLine("12\tAfficher le langage séléctioné");
|
|
Console.WriteLine("13\tModifier le langage séléctioné");
|
|
Console.WriteLine("14\tSe déconnecter");
|
|
Console.Write("Choix : ");
|
|
string réponse = Console.ReadLine();
|
|
switch (réponse)
|
|
{
|
|
case "1":
|
|
AfficherLesLangages(gestionaireDeLanagage as GestionaireDeLangages);
|
|
break;
|
|
case "2":
|
|
AfficherLesComptes(gestionaireDeComptes as GestionaireDeComptes);
|
|
break;
|
|
case "3":
|
|
CreerUnCompte(gestionaireDeComptes as GestionaireDeComptes);
|
|
break;
|
|
case "4":
|
|
SupprimerUnCompte(gestionaireDeComptes as GestionaireDeComptes);
|
|
break;
|
|
case "5":
|
|
AjouterUnLangage(gestionaireDeLanagage as GestionaireDeLangages);
|
|
break;
|
|
case "6":
|
|
SupprimerLangageSelectionné(gestionaireDeLanagage as GestionaireDeLangages);
|
|
break;
|
|
case "7":
|
|
SeConnecter(gestionaireDeComptes as GestionaireDeComptes);
|
|
break;
|
|
case "8":
|
|
ModifierCompte();
|
|
break;
|
|
case "9":
|
|
SelectionerUnLangage(gestionaireDeLanagage as GestionaireDeLangages);
|
|
break;
|
|
case "10":
|
|
AjouterUnLangageEnFavoris();
|
|
break;
|
|
case "11":
|
|
SupprimerUnLangageDesFavoris();
|
|
break;
|
|
case "12":
|
|
AfficherLeLangageSéléctioné();
|
|
break;
|
|
case "13":
|
|
ModifierLangageSelectionné();
|
|
break;
|
|
case "14":
|
|
SeDeconnecter(gestionaireDeComptes as GestionaireDeComptes);
|
|
break;
|
|
default:
|
|
Debug.WriteLine("Bye");
|
|
l = false;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|