diff --git a/notus/Biblioteque_de_Class/Note.cs b/notus/Biblioteque_de_Class/Note.cs index 48eb95a..c6d6e21 100644 --- a/notus/Biblioteque_de_Class/Note.cs +++ b/notus/Biblioteque_de_Class/Note.cs @@ -88,7 +88,7 @@ namespace Biblioteque_de_Class public void AddText(string text) { - Text = "\n" + text; + Text = Text + "\n" + text; } /// diff --git a/notus/Biblioteque_de_Class/User.cs b/notus/Biblioteque_de_Class/User.cs index 989a971..1e3f52a 100644 --- a/notus/Biblioteque_de_Class/User.cs +++ b/notus/Biblioteque_de_Class/User.cs @@ -184,11 +184,9 @@ namespace Biblioteque_de_Class NoteList.Remove(existingNote); NoteTagged.Remove(existingNote); return; - }else - { - throw new NotFoundException("Note not found"); } } + throw new NotFoundException("Note not found"); } /// diff --git a/notus/Notus_Console/Program.cs b/notus/Notus_Console/Program.cs index 1bd17bd..81da245 100644 --- a/notus/Notus_Console/Program.cs +++ b/notus/Notus_Console/Program.cs @@ -7,11 +7,16 @@ using System.Text; // load database PersistenceManager manager = new(new Stub()); Database db = manager.LoadDatabaseData(); +foreach(User user in db.GetUserList()) +{ + user.SetPassword(GetSHA256Hash(user.GetPassword())); +} + // initialization zone============================================================================== bool continuerboucle = false; -bool connection=false, inscription=false; +bool menu = true, connection = false, inscription = false; bool note=false, tags=false, para=false, paraCompte=false, theme=false; // déclaration d'un user qui sera utiliser pour servir de personne connecté dans l'app @@ -28,25 +33,29 @@ List researchlist = new(); bool continuer() { continuerboucle = false; - Console.WriteLine("\nContinuer la connection ? (O/n)"); - switch (Console.ReadLine()) + while(!continuerboucle) { - case "O": - return false; - case "": - return false; - case "o": - return false; - case "n": - return true; - default: - Console.WriteLine("\nEntrez un choix valide.\n"); - continuerboucle = true; - return true; + Console.WriteLine("\nContinuer ? (O/n)"); + switch (Console.ReadLine()) + { + case "O": + return true; + case null: + return true; + case "o": + return true; + case "n": + return false; + default: + Console.WriteLine("\nEntrez un choix valide.\n"); + continuerboucle = true; + break; + } } + return false; } -void choix_note() +bool choix_note() { Console.WriteLine("\nChoisissez le nom de la note"); string? wantedModifyNote = Console.ReadLine(); @@ -54,7 +63,8 @@ void choix_note() try { n = u.GetNoteByName(wantedModifyNote); - }catch (Exception ex) { Console.WriteLine(ex.Message); } + }catch (Exception ex) { Console.WriteLine(ex.Message); return false; } + return true; } void displayNote() @@ -145,92 +155,98 @@ static string GetSHA256Hash(string input) } } -Console.WriteLine("\n|--------------------------------------|"); -Console.WriteLine("| |"); -Console.WriteLine("| starting menu |"); -Console.WriteLine("| |"); -Console.WriteLine("|--------------------------------------|--------|"); -Console.WriteLine("| |"); -Console.WriteLine("| 1 / - connection - |"); -Console.WriteLine("| 2 / - inscription - |"); -Console.WriteLine("| |"); -Console.WriteLine("|-----------------------------------------------|\n"); -Console.WriteLine("rentrez votre choix."); -switch (Console.ReadLine()) +while (menu) { - case "1": ///Connexion - connection = true; break; - - case "2":///Creer un compte - inscription = true; break; - default: - Console.WriteLine("\nEntrez un choix valide.\n"); - break; -} - -//connection -while (connection) -{ - connection = false; - Console.WriteLine("\nEntrez un nom : "); - string? nom = Console.ReadLine(); - if (nom == null) { continue; } - Console.WriteLine("\nEntrez un password :"); - string? password = Console.ReadLine(); - if (password == null) { continue; } - password = GetSHA256Hash(password); - try - { - u = db.GetUser(nom); - } - catch (AlreadyUsedException ex) + Console.WriteLine("\n|--------------------------------------|"); + Console.WriteLine("| |"); + Console.WriteLine("| starting menu |"); + Console.WriteLine("| |"); + Console.WriteLine("|--------------------------------------|--------|"); + Console.WriteLine("| |"); + Console.WriteLine("| 1 / - connection - |"); + Console.WriteLine("| 2 / - inscription - |"); + Console.WriteLine("| |"); + Console.WriteLine("|-----------------------------------------------|\n"); + Console.WriteLine("rentrez votre choix."); + switch (Console.ReadLine()) { - Console.WriteLine(ex.Message); - connection = true; + case "1": ///Connexion + connection = true; break; + + case "2":///Creer un compte + inscription = true; break; + default: + Console.WriteLine("\nEntrez un choix valide.\n"); + break; } - if (!connection) + + //connection + while (connection) { - if (Database.ComparePassword(u, password)) + connection = false; + Console.WriteLine("\nEntrez un nom : "); + string? nom = Console.ReadLine(); + if (nom == null) { continue; } + Console.WriteLine("\nEntrez un password :"); + string? password = Console.ReadLine(); + if (password == null) { continue; } + password = GetSHA256Hash(password); + try { - u.SetIsConnected(true); + u = db.GetUser(nom); } - else + catch (AlreadyUsedException ex) { - Console.WriteLine("\nWrong PassWord !\n"); + Console.WriteLine(ex.Message); connection = true; - continuerboucle = true; - u = uvide; } + if (!connection) + { + if (Database.ComparePassword(u, password)) + { + u.SetIsConnected(true); + Console.WriteLine("\nConnection réussie !\n"); + menu = false; + } + else + { + Console.WriteLine("\nWrong PassWord !\n"); + connection = true; + continuerboucle = true; + u = uvide; + } + } + while (continuerboucle) { connection = continuer(); } } - while (continuerboucle) { connection = continuer(); } -} -//inscription -while (inscription) -{ - Console.WriteLine("\nEntrez un nom :"); - string? nom = Console.ReadLine(); - if (nom == null) { continue; } - Console.WriteLine("\nEntrez un password :"); - string? password = Console.ReadLine(); - if (password == null) { continue; } - try - { - u = db.GetUser(nom); - } - catch (AlreadyUsedException) + //inscription + while (inscription) { - password = GetSHA256Hash(password); - u = new User(nom, "", password); - db.AddUser(u); - db.GetUser(nom).SetIsConnected(true); - break; - } - Console.WriteLine("\nNom d'utilisateur déjà utilisé. \n"); - while (continuerboucle) { inscription = continuer(); } + Console.WriteLine("\nEntrez un nom :"); + string? nom = Console.ReadLine(); + if (nom == null) { continue; } + Console.WriteLine("\nEntrez un password :"); + string? password = Console.ReadLine(); + if (password == null) { continue; } + try + { + u = db.GetUser(nom); + } + catch (AlreadyUsedException) + { + password = GetSHA256Hash(password); + u = new User(nom, "", password); + db.AddUser(u); + db.GetUser(nom).SetIsConnected(true); + Console.WriteLine("\nConnection réussie !\n"); + menu = false; + break; + } + Console.WriteLine("\nNom d'utilisateur déjà utilisé. \n"); + while (continuerboucle) { inscription = continuer(); } + } } - //une fois connecté ou inscription fait while (u.GetIsConnected()) { @@ -241,14 +257,13 @@ while (u.GetIsConnected()) Console.WriteLine("|--------------------------------------|--------|"); Console.WriteLine("| |"); Console.WriteLine("| 1/ - rechercher note - |"); - Console.WriteLine("| 2/ - naviger note - |"); - Console.WriteLine("| 3/ - créer note - |"); - Console.WriteLine("| 4/ - supprimer note - |"); - Console.WriteLine("| 5/ - tags - |"); - Console.WriteLine("| 6/ - paramêtres - |"); - Console.WriteLine("| 7/ - se déconnecter - |"); + Console.WriteLine("| 2/ - note - |"); + Console.WriteLine("| 3/ - tags - |"); + Console.WriteLine("| 4/ - paramêtres - |"); + Console.WriteLine("| 5/ - se déconnecter - |"); Console.WriteLine("| |"); Console.WriteLine("|-----------------------------------------------|\n"); + Console.WriteLine("rentrez votre choix."); switch (Console.ReadLine()) { case "1": @@ -263,27 +278,12 @@ while (u.GetIsConnected()) note = true; break; case "3": - Console.WriteLine("\nChoisissez le nom de la note (entrer - nom par defaut)"); - string? wantedNameNote = Console.ReadLine(); - wantedNameNote??= ""; - u.CreateNote(wantedNameNote, ""); - break; - case "4": - Console.WriteLine("\nChoisissez le nom de la note"); - string? wantedDeleteNote = Console.ReadLine(); - wantedDeleteNote??= ""; - try - { - u.DeleteNote(wantedDeleteNote); - }catch (Exception ex) { Console.WriteLine(ex.Message); } - break; - case "5": tags = true; break; - case "6": + case "4": para = true; break; - case "7": + case "5": Console.WriteLine("\ndéconnecté! \n"); u.SetIsConnected(false); u = uvide; @@ -301,37 +301,59 @@ while (u.GetIsConnected()) Console.WriteLine("| |"); Console.WriteLine("|--------------------------------------|--------|"); Console.WriteLine("| |"); - Console.WriteLine("| 1/ - afficher notes - |"); - Console.WriteLine("| 2/ - modifier une note - |"); - Console.WriteLine("| 3/ - écrire dans une note - |"); - Console.WriteLine("| 4/ - retour - |"); + Console.WriteLine("| 1/ - afficher la liste des notes - |"); + Console.WriteLine("| 2/ - afficher une note - |"); + Console.WriteLine("| 3/ - modifier une note - |"); + Console.WriteLine("| 4/ - écrire dans une note - |"); + Console.WriteLine("| 5/ - créer note - |"); + Console.WriteLine("| 6/ - supprimer note - |"); + Console.WriteLine("| 7/ - retour - |"); Console.WriteLine("| |"); Console.WriteLine("|-----------------------------------------------|\n"); - Console.WriteLine("note actuelle : " + n); + Console.WriteLine("note actuelle : " + n.GetName()); + Console.WriteLine("rentrez votre choix."); switch (Console.ReadLine()) { case "1": - foreach( Note lnote in u.GetNoteList()) - { - Console.WriteLine(lnote.GetName() + "\n"); - } + displayNote(); break; case "2": - choix_note(); + if (!choix_note()) { break; } + Console.WriteLine("\n" + n.GetName() + " :"); + Console.WriteLine(n.GetText()); + break; + case "3": + if (!choix_note()) { break;} Console.WriteLine("\nChoisissez le nouveau nom de la note (entrer - nom par defaut)"); string? wantedNewNameNote = Console.ReadLine(); wantedNewNameNote??= ""; n.SetName(wantedNewNameNote); break; - case "3": - choix_note(); + case "4": + if (!choix_note()) { break; } Console.WriteLine(n.GetText()); Console.WriteLine("\nEntrez le texte à ajouter"); string? wantedTextNote = Console.ReadLine(); wantedTextNote??= ""; n.AddText(wantedTextNote); break; - case "4": + case "5": + Console.WriteLine("\nChoisissez le nom de la note (entrer - nom par defaut)"); + string? wantedNameNote = Console.ReadLine(); + wantedNameNote ??= ""; + u.CreateNote(wantedNameNote, ""); + break; + case "6": + Console.WriteLine("\nChoisissez le nom de la note"); + string? wantedDeleteNote = Console.ReadLine(); + wantedDeleteNote ??= ""; + try + { + u.DeleteNote(wantedDeleteNote); + } + catch (Exception ex) { Console.WriteLine(ex.Message); } + break; + case "7": note = false; break; default: @@ -354,6 +376,7 @@ while (u.GetIsConnected()) Console.WriteLine("| 4/ - retour - |"); Console.WriteLine("| |"); Console.WriteLine("|-----------------------------------------------|\n"); + Console.WriteLine("rentrez votre choix."); switch (Console.ReadLine()) { case "1": @@ -465,6 +488,7 @@ while (u.GetIsConnected()) Console.WriteLine("| 4/ - retour - |"); Console.WriteLine("| |"); Console.WriteLine("|-----------------------------------------------|\n"); + Console.WriteLine("rentrez votre choix."); switch (Console.ReadLine()) { case "1": @@ -507,6 +531,7 @@ while (u.GetIsConnected()) Console.WriteLine("| 3/ - retour - |"); Console.WriteLine("| |"); Console.WriteLine("|-----------------------------------------------|\n"); + Console.WriteLine("rentrez votre choix."); switch (Console.ReadLine()) { case "1": @@ -553,6 +578,7 @@ while (u.GetIsConnected()) Console.WriteLine("| 5/ - retour - |"); Console.WriteLine("| |"); Console.WriteLine("|-----------------------------------------------|\n"); + Console.WriteLine("rentrez votre choix."); switch (Console.ReadLine()) { case "1": diff --git a/notus/Notus_Persistence/Stub.cs b/notus/Notus_Persistence/Stub.cs index 46344fb..bb13c45 100644 --- a/notus/Notus_Persistence/Stub.cs +++ b/notus/Notus_Persistence/Stub.cs @@ -19,8 +19,6 @@ namespace Notus_Persistance throw new NotImplementedException(); } - - Database IManager.LoadDatabaseData() { Database database = new Database(); @@ -28,29 +26,19 @@ namespace Notus_Persistance database.AddUser(new User("Benjamin", "labsent@gmail.com", "Moto2005")); database.AddUser(new User("Liam", "liammonchanin@gmail.com", "Baguette")); database.AddUser(new User("Brigitte", "Macroutte@gmail.com", "49Trois")); + foreach(User user in database.GetUserList().Where(x => x.GetUsername().Contains("m"))) + { + user.CreateNote("Note 1", ""); + user.CreateNote("Note 2", ""); + user.CreateNote("Note 3", ""); + } return database; } - List IManager.LoadUserData() - { - List users = new List(); - users.Add(new User("Nicolas", "leHeros@gmail.com", "Feur")); - users.Add(new User("Benjamin", "labsent@gmail.com", "Moto2005")); - users.Add(new User("Liam", "liammonchanin@gmail.com", "Baguette")); - users.Add(new User("Brigitte", "Macroutte@gmail.com", "49Trois")); - return users; + public List LoadUserData() + { + throw new NotImplementedException(); } - - /*List IManager.LoadNote() - { - List notes = new List(); - notes.Add(new Note("Note_1", "Logo_1",new User("Liam","Liam@gmail.com","Oui"))); - notes.Add(new Note("Note_2", "Logo_3", new User("Liam", "Liam@gmail.com", "Oui"))); - notes.Add(new Note("Note_3", "Logo_5", new User("Liam", "Liam@gmail.com", "Oui"))); - notes.Add(new Note("Note_4", "Logo_7", new User("Liam", "Liam@gmail.com", "Oui"))); - notes.Add(new Note("Note_5", "Logo_9", new User("Liam", "Liam@gmail.com", "Oui"))); - return notes; - }*/ } }