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.
notus/notus/Notus_Console/Program.cs

314 lines
11 KiB

using Biblioteque_de_Class;
using System.ComponentModel.DataAnnotations.Schema;
using System.Diagnostics;
Console.WriteLine("Coucou");
string Upseudo = "u";
string Umail = "u";
string Upassword = "u";
string Name = "u";
string Name2 = "u";
string nom = "u";
string nom2 = "u";
string logoPath = "u";
string choixNom = "u";
string choixCouleur = "u";
string pos = "u";
string _image = "u";
string name2 = "u";
string choixModif;
string choix2;
string color = "u";
string couleur = "u";
string newColor = "u";
string position = "u";
string linkimage = "u";
List<string> NewColorList;
List<string> listCouleurs;
List<Note> _searchedNotes;
List<Tags> _searchedTags;
User user = new User(Upseudo, Umail, Upassword);
NoteImage image = new NoteImage(nom2, linkimage, position);
Database db = new Database();
User u = new User(Upseudo, Umail, Upassword);
Note n = new Note(nom, logoPath, u);
Tags t = new Tags(nom, couleur);
int boucle = 0;
while (boucle == 0)
{
Console.WriteLine("|--------------------------------------|");
Console.WriteLine("| |");
Console.WriteLine("| Menu pour lister les fonctionnalités |");
Console.WriteLine("| |");
Console.WriteLine("|--------------------------------------|--------|");
Console.WriteLine("| |");
Console.WriteLine("| 1/se connecter |");
Console.WriteLine("| 2/se déconnecter |");
Console.WriteLine("| 3/créer un compte |");
Console.WriteLine("| 4/supprimer un compte |");
Console.WriteLine("| 5/créer note |");
Console.WriteLine("| 6/supprimer note |");
Console.WriteLine("| 7/créer tag |");
Console.WriteLine("| 8/ajouter tag |");
Console.WriteLine("| 9/supprimer tag |");
Console.WriteLine("| 10/ajouter image |");
Console.WriteLine("| 11/supprimer image |");
Console.WriteLine("| 12/déplacer image |");
Console.WriteLine("| 13/supprimer tag definitif |");
Console.WriteLine("| 14/Ajouter favori |");
Console.WriteLine("| 15/Supprimer favori |");
Console.WriteLine("| 16/créer un thème |");
Console.WriteLine("| 17/supprimer un thème |");
Console.WriteLine("| 18/modifier un thème |");
Console.WriteLine("| 19/rechercher une note |");
Console.WriteLine("| 20/rechercher une note avec tags |");
Console.WriteLine("| 21/rechercher une note avec date |");
Console.WriteLine("| 22/modifier tags |");
Console.WriteLine("| 23/modifier compte |");
Console.WriteLine("| 24/modifier note |");
Console.WriteLine("| 25/partage note |");
Console.WriteLine("| 26/modifier role (si proprietaire) |");
Console.WriteLine("| 27/supprimer cooperateur |");
Console.WriteLine("| |");
Console.WriteLine("|-----------------------------------------------|");
switch (Console.ReadLine())
{
case "1": ///Connexion
u = db.GetUser(Name);
db.FindEmail(u.Email.get);
db.ComparePassword(u.Password.get);
if (db.UserList.Contains(u))
{
u.IsConnected.set(true);
Console.WriteLine("Connecté");
break;
}
else
{
Console.WriteLine("Utilisateur non trouvé.");
break;
}
case "2":///Deconnexion
u.IsConnected.set(false);
Console.WriteLine("Vous vous êtes déconnecté avec succès.");
break;
case "3":///Creer un compte
Console.WriteLine("Choisissez un pseudo");
Upseudo = Console.ReadLine();
Console.WriteLine("Entrez votre adresse mail");
Umail = Console.ReadLine();
Console.WriteLine("Saisissez un mot de passe");
Upassword = Console.ReadLine();
User u1 = new User(Upseudo, Umail, Upassword);
db.AddUser(u1);
break;
case "4":///Supprimer Compte
Console.WriteLine("Chercher utilisateur");
Name = Console.ReadLine();
u = db.GetUser(Name);
db.FindEmail(u.Email.get);
db.ComparePassword(u.Password.get);
if (db.UserList.Contains(u))
{
db.RemoveUser(u);
Console.WriteLine("Compte supprimé avec succès.");
break;
}
Console.WriteLine("Utilisateur non trouvé.");
break;
case "5":///Creer une note
Console.WriteLine("Choisissez un nom");
nom = Console.ReadLine();
Console.WriteLine("Choisissez un logo");
logoPath = Console.ReadLine();
n = new Note(nom, logoPath, u);
u.CreateNote(nom, logoPath);
break;
case "6":///Supprimer une note
u.SearchNoteByName(nom);
u.DeleteNote(n);
break;
case "7":///Creer un tag
Console.WriteLine("Choisissez un nom");
choixNom = Console.ReadLine();
Console.WriteLine("Choisissez une couleur");
choixCouleur = Console.ReadLine();
u.CreateTag(choixNom, choixCouleur);
break;
case "8":///Ajouter un tag a une note
Console.WriteLine("Cherchez une note");
name2 = Console.ReadLine();
_searchedNotes = u.SearchNoteByName(name2);
Console.WriteLine("Cherchez un tag");
nom = Console.ReadLine();
_searchedTags = u.SearchTagByName(nom); ///A voir pour faire correctement
Tags tagToAdd = new Tags(nom, color);
tagToAdd = _searchedTags[1];
u.AddTagToNoteList(n, tagToAdd);
break;
case "9":///Supprimer un tag a une note
Console.WriteLine("Cherchez une note");
name2 = Console.ReadLine();
_searchedNotes = u.SearchNoteByName(name2);
Console.WriteLine("Cherchez un tag");
nom = Console.ReadLine();
_searchedTags = u.SearchTagByName(nom); ///A voir pour faire correctement
Tags tagToSupp = new Tags(nom, color);
tagToSupp = _searchedTags[1];
u.RemoveTagFromNoteList(n, tagToSupp);
break;
case "10":///Ajouter une image
n.AddImage(_image, pos);
break;
case "11":///Supprimer une image
n.RemoveImage(_image);
break;
case "12":///Deplacer une image
//n.DeplacerImage(image);
break;
case "13":///Supprimer un tag definitivement
_searchedTags = u.SearchTagByName(nom);
u.RemoveTagFromNoteList(n, t);
break;
case "14":///AJouter une note en favori
u.SearchNoteByName(nom);
u.AddFavorite(n);
break;
case "15":///Supprimer une note des favoris
nom = Console.ReadLine();
u.SearchNoteByName(nom);
u.RemoveFavorite(n);
break;
case "16":///Creer un theme
Theme th = new Theme(nom, listCouleurs);
db.AddTheme(th);
break;
case "17":///Supprimer un theme
th = db.GetTheme(nom);
db.RemoveTheme(th);
break;
case "18":///Modifier un theme
Console.WriteLine("Cherchez un theme a modifier");
Name2 = Console.ReadLine();
th = db.GetTheme(Name2);
th.ChangeColor(color, newColor);
db.ModifyThemeName(th, Name);
db.ModifyThemeColorList(th, NewColorList);
break;
case "19":///Rechercher une note
Console.WriteLine("Cherchez une note");
nom = Console.ReadLine();
u.SearchNoteByName(u.NoteList, nom);
break;
case "20":///Recherche note par tag
///u.;
break;
case "21":///Recherche note par dateCreation
///u.;
break;
case "22":///Modifier un tag
Console.WriteLine("Cherchez un tag");
nom = Console.ReadLine();
t.Name.set(nom);
t.Color.set();
break;
case "23":///Modifier le compte
Console.WriteLine("Modifier pseudo ? Mot de passe ? Mail ? (0/1/2)");
choixModif = Console.ReadLine();
if (choixModif.Equals('0'))
{
u.Username.set();
}
if (choixModif.Equals('1'))
{
u.Password.set();
}
if (choixModif.Equals('2'))
{
u.Email.set();
}
break;
case "24":///Modifier le texte de la note mais jsp c'est quoi qu'il faut set
n.VerifyPrivilege(u);
if (true)
{
n.TextLineList.set();
}
else
{
Console.WriteLine("Vous ne possedez pas les droits pour effectuer cette action.");
}
break;
case "25":///Partager la note
n.VerifyPrivilege(u);
if (true)
{
n.AddCollaborator(u, user);
}
break;
case "26":///Modifier les editeurs
Console.WriteLine("Ajouter editeur ou supprimer editeur ? (0/1)");
choix2 = Console.ReadLine();
n.VerifyPrivilege(u);
if (true && choix2.Equals('0'))
{
user = db.GetUser(Name);
n.AddEditor(u, user);
}
if (true && choix2.Equals('1'))
{
user = db.GetUser(Name);
n.RemoveEditor(u, user);
}
break;
case "27":///Supprimer un cooperateur
n.VerifyPrivilege(u);
if (true)
{
user = db.GetUser(Name);
n.RemoveCollaborator(u, user);
}
break;
default:
Console.WriteLine("< Veuillez rentrer une des options proposées à l'ecran ! >");
break;
}
}