public void pickMovie() { Console.Clear(); JsonSerializer serializer = new JsonSerializer(); Movie[] newMovies = JsonConvert.DeserializeObject <Movie[]>(File.ReadAllText(@"Movies.json")); MovieShow(); Console.WriteLine($"Welke film wilt u bekijken? Druk op {newMovies.Length+1} om terug te gaan naar het menu"); try { int menuNumber = Convert.ToInt32(Console.ReadLine()) - 1; if (menuNumber == newMovies.Length) { // Terug naar menu if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Mainmenu.Menu(); } } else { //Alles weergeven van gekozen film Console.WriteLine("\nTitle: " + newMovies[menuNumber].title + "\nGenre: " + newMovies[menuNumber].genre + "\nDuration: " + newMovies[menuNumber].duration + "\nLanguage: " + newMovies[menuNumber].language /* + "\nTheatre Number: " + newMovies[menuNumber].theatreNumber + "\nStart Time: " + newMovies[menuNumber].startTime*/ + "\nRating: " + newMovies[menuNumber].rating + "\nPrice: " + newMovies[menuNumber].price); Variables.Film = menuNumber + 1; //Menu voor verdere keuzes zoals reserveren Console.WriteLine("\nWat wilt u nu doen?\n[1] Ga terug"); string filmMenuNumber = Console.ReadLine(); if (filmMenuNumber == "1") { if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Mainmenu.Menu(); } } else { Console.WriteLine("\nOngeldige invoer. Probeer opnieuw.\n"); } } } catch (Exception e) { // HAAL DIT WEG ZODRA APP KLAAR IS! Console.WriteLine(e); Console.WriteLine("\nOngeldige invoer. Probeer opnieuw.\n"); } }
public static void snacksMenuOpvragen() { //Om € teken zichtbaar te maken Console.OutputEncoding = System.Text.Encoding.UTF8; //Snacksmenu Console.WriteLine("\nDit is de snacks menu pagina. Hieronder staan alle snacks met bijbehorende prijzen.\n\n\n"); Console.WriteLine("Drinken\n\nCola - \u20AC1,95\nFanta - \u20AC1,95\nFristi - \u20AC2,95\n\n\n"); Console.WriteLine("Popcorn\n\nSmall - \u20AC4,95\nMedium - \u20AC5,95\nLarge - \u20AC7,95\n\n\n"); Console.WriteLine("Combo Deals\n\nFrisdrank naar keuze & Medium Popcorn - \u20AC6,95"); string optieSnacksMenu; Console.WriteLine("\n\nWilt u terug naar het menu?\n[1] Ja\n[2] Nee"); optieSnacksMenu = Console.ReadLine(); try { if (optieSnacksMenu == "1") { // Terug naar menu if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Mainmenu.Menu(); } } else if (optieSnacksMenu == "2") { // Exit } else { // Wanneer de input niet tussen 1 en 4 ligt Console.WriteLine("\nGelieve een nummer tussen 1 en 4 in te toetsen"); snacksMenuOpvragen(); } } catch { // Wanneer de input geen int is Console.WriteLine("\nEr is iets fout gegaan. Probeer opnieuw."); snacksMenuOpvragen(); } }
public static void contact() { Console.Clear(); // Geef contact info weer Console.WriteLine("\nDit is de Contact pagina van de bioscoop.\n\nAdres\nWeena 455\n3013AL Rotterdam\n\nOpeningstijden\nma - zo: 10.00 - 22.00\n\nTelefoon\n010-456-13-52"); // Kijk of gebruiker terug wilt naar het menu string optieContact; Console.WriteLine("\n\nKies een van de volgende opties:\n[1] Terug"); optieContact = Console.ReadLine(); try { if (optieContact == "1") { // Terug naar menu if (Variables.isLoggedIn) { Console.Clear(); LogedIn.LogedInMain(); } else { Console.Clear(); Mainmenu.Menu(); } } else { // Wanneer de input niet tussen 1 en 4 ligt Console.WriteLine("\nGelieve een geldig nummer in te toetsen."); contact(); } } catch { // Wanneer de input geen int is Console.WriteLine("\nEr ging iets fout. Probeer opnieuw."); contact(); } }
public static void Menu() { Console.Clear(); Console.WriteLine("Welkom op de app van bioscoop De Goude Ticket"); Console.WriteLine("\nKies een van de volgende opties om verder te gaan:\n[1] Films\n[2] Snacks menu\n[3] Contact\n[4] Mijn account"); Console.Write("> "); string optieMenu = Console.ReadLine(); try { if (optieMenu == "1") { bool tempMenu = true; while (tempMenu == true) { Console.Clear(); // Run database Movies.MovieProgram db = new Movies.MovieProgram(); //Films menu Console.WriteLine("\n[1] Alle films bekijken\n[2] Film zoeken\n[3] Ga terug"); Console.Write("> "); optieMenu = Console.ReadLine(); if (optieMenu == "1") { Console.Clear(); //Geef pagina met films weer db.MovieShow(); Console.WriteLine("\n\nKies een van de volgende opties:\n[1] Film bekijken\n[2] Film reserveren\n[3] Ga terug"); string optieMenu3 = Console.ReadLine(); if (optieMenu3 == "1") { db.pickMovie(); } else if (optieMenu3 == "2") { Reserveren.Reserveer(); } else if (optieMenu3 == "3") { Mainmenu.Menu(); } else { Console.WriteLine("Voer een getal in"); } } else if (optieMenu == "2") { tempMenu = false; Console.Clear(); db.filterMovie(); } else if (optieMenu == "3") { tempMenu = false; Console.Clear(); Mainmenu.Menu(); } } } else if (optieMenu == "2") { Console.Clear(); //Geef pagina met snacks menu weer Snacks.SnacksProgram snackdb = new Snacks.SnacksProgram(); snackdb.SnacksShow(); string optieSnacksMenu; Console.WriteLine("\n\nWilt u terug naar het menu?\n[1] Ja\n[2] Nee"); optieSnacksMenu = Console.ReadLine(); try { if (optieSnacksMenu == "1") { Console.Clear(); Mainmenu.Menu(); } else if (optieSnacksMenu == "2") { Environment.Exit(1); } else { Console.Clear(); // Wanneer de input niet 1 of 2 is Console.WriteLine("\nGelieve een nummer tussen 1 en 2 in te toetsen"); Mainmenu.Menu(); } } catch { Console.Clear(); // Wanneer de input geen int is Console.WriteLine("\nEr is iets fout gegaan. Probeer opnieuw."); Mainmenu.Menu(); } } else if (optieMenu == "3") { Console.Clear(); //Aanroepen contact.cs Contact.contact(); } else if (optieMenu == "4") { Console.Clear(); //Geef inlog pagina weer Console.WriteLine("\nDit is de account pagina. Kies een van de volgende opties:"); Login.loginMain(); //Aanroepen account.cs } else { Console.Clear(); //Wanneer de input niet tussen 1 en 4 ligt Console.WriteLine("\nGelieve een nummer tussen 1 en 4 in te toetsen"); Mainmenu.Menu(); } } catch { // Wanneer er iets ingevoerd word wat niet klopt. Console.WriteLine("\nOngeldige invoer. Probeer opnieuw."); Mainmenu.Menu(); } }
public void schedualMovie() { JsonSerializer serializer = new JsonSerializer(); Movie[] movieList = JsonConvert.DeserializeObject <Movie[]>(File.ReadAllText(@"Movies.json")); MovieShow(); Console.WriteLine("Kies een film om in te plannen. Voer het nummer van de film in."); bool schedualMovieAnswer = false; while (!schedualMovieAnswer) { try { int schedualMovieNumber = Convert.ToInt32(Console.ReadLine()) - 1; if (schedualMovieNumber == movieList.Length) { // Terug naar menu schedualMovieAnswer = true; if (Variables.isLoggedIn) { LogedIn.LogedInAdmin(); } else { Mainmenu.Menu(); } } else { // Alles weergeven van gekozen film Console.WriteLine("\nTitle: " + movieList[schedualMovieNumber].title + "\nGenre: " + movieList[schedualMovieNumber].genre + "\nDuration: " + movieList[schedualMovieNumber].duration + "\nLanguage: " + movieList[schedualMovieNumber].language /* + "\nTheatre Number: " + newMovies[menuNumber].theatreNumber + "\nStart Time: " + newMovies[menuNumber].startTime*/ + "\nRating: " + movieList[schedualMovieNumber].rating + "\nPrice: " + movieList[schedualMovieNumber].price); Variables.Film = schedualMovieNumber + 1; // Bevestiging van inplannen Console.WriteLine("\nWat wilt u nu doen?\n[1] Film (" + movieList[schedualMovieNumber].title + ") inplannen\n[2] Ga terug"); string filmMenuNumber = Console.ReadLine(); if (filmMenuNumber == "1") { string schedualMovieTitle = movieList[schedualMovieNumber].title; string schedualMovieDuration = Convert.ToString(movieList[schedualMovieNumber].duration); List <string> datesToProcess = new List <string>(); bool schedualAmountAnswer = false; while (!schedualAmountAnswer) { Console.WriteLine("\nWilt u de film 1x inplannen of meerdere keren per week?\n[1] Losse inplanning\n[2] Meerdere inplanningen"); string schedualAmount = Console.ReadLine(); if (schedualAmount == "1") { Console.WriteLine("\nOp welke datum wilt u deze film inplannen? Gebruik het format [01/01/0000]"); datesToProcess.Add(Console.ReadLine()); schedualAmountAnswer = true; } else if (schedualAmount == "2") { Console.WriteLine("\nVanaf welke datum wilt u beginnen met inplannen? Gebruik het format [01/01/0000]"); string mulDate = Console.ReadLine(); try { if (DateTime.Parse(mulDate).Date < DateTime.Now.Date) { Console.WriteLine("\nDatum kan niet in het verleden zijn"); continue; } } catch { Console.WriteLine("\nDatum is ongeldig"); continue; } Console.WriteLine("\nVoor hoeveel dagen wilt u de film inplannen? Voer een getal in tot en met 365"); string mulEndDate = Console.ReadLine(); if (Convert.ToInt32(mulEndDate) > 365 || Convert.ToInt32(mulEndDate) <= 0) { Console.WriteLine("\nAantal dagen klopt niet. Probeer opnieuw"); continue; } int weeks = (int)Math.Floor(Convert.ToDecimal(mulEndDate) / 7); int days = Convert.ToInt32(mulEndDate) % 7; Console.WriteLine("\nHoevaak per week wilt u deze film inplannen? Voer een getal in van 1 tot 7"); string mulAmount = Console.ReadLine(); DateTime nextDay = DateTime.Parse(mulDate); if (mulAmount == "1") { Console.WriteLine($"\nFilm word {mulAmount}x per week ingeplanned en begint vanaf {mulDate} tot {DateTime.Parse(mulDate).AddDays(Convert.ToInt32(mulEndDate)).ToShortDateString()}"); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); for (int i = 1; i <= weeks; i++) { nextDay = nextDay.AddDays(7); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); } } else if (mulAmount == "2" || mulAmount == "3" || mulAmount == "4" || mulAmount == "5" || mulAmount == "6") { Console.WriteLine("\nInplanmoment 1 word ingeplanned in zoveel dagen:"); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); for (int i = 1; i <= weeks; i++) { nextDay = nextDay.AddDays(7); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); } Console.WriteLine("\nOver hoeveel dagen na de startdatum moet de film nogmaals ingeplanned worden? Gebruik het format [1 tot 5] (1e dag is de begindatum)"); for (int i = 2; i <= Convert.ToInt32(mulAmount); i++) { Console.WriteLine($"\nInplanmoment {i} word ingeplanned in zoveel dagen:"); string schedualDay = Console.ReadLine(); List <string> usedDays = new List <string>(); if (schedualDay == "1" || schedualDay == "2" || schedualDay == "3" || schedualDay == "4" || schedualDay == "5") { if (usedDays.Contains(schedualDay)) { Console.WriteLine("\nDeze dag is al in gebruik"); continue; } else { usedDays.Add(schedualDay); nextDay = DateTime.Parse(mulDate).AddDays(Convert.ToInt32(schedualDay)); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); while (nextDay < DateTime.Parse(mulDate).AddDays(Convert.ToInt32(mulEndDate) - 7)) { nextDay = nextDay.AddDays(7); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); } } } else { Console.WriteLine("\nVul een juiste dag in"); continue; } } } else if (mulAmount == "7") { Console.WriteLine($"\nFilm word elke dag ingeplanned en begint vanaf {mulDate} tot {DateTime.Parse(mulDate).AddDays(Convert.ToInt32(mulEndDate)).ToShortDateString()}"); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); for (int i = 0; i <= Convert.ToInt32(mulEndDate); i++) { nextDay = nextDay.AddDays(1); Console.WriteLine($"\n{nextDay.ToShortDateString()}"); datesToProcess.Add(nextDay.ToShortDateString()); } } else { Console.WriteLine("\nVul een getal van 1 tot 7 in"); } schedualAmountAnswer = true; } else { Console.WriteLine("\nVul 1 of 2 in"); } } Console.WriteLine("\nEr is keue uit de volgende zalen: Zaal1, Zaal2, Zaal3"); Console.WriteLine("\nIn welke zaal wilt u deze film inplannen? Gebruik het format [Zaal1]"); string schedualMovieTheater = Console.ReadLine(); Console.WriteLine("\nHoe laat wilt u deze film inplannen? Gebruik het format [00:00]"); string schedualMovieTime = Console.ReadLine(); TimeSpan schedualMovieEndTime = TimeSpan.Parse(schedualMovieTime) + movieList[schedualMovieNumber].duration; try { foreach (string date in datesToProcess) { Calendar.planFilm(date, schedualMovieTheater, schedualMovieTitle, schedualMovieTime, Convert.ToString(schedualMovieEndTime)); } } catch { Console.WriteLine("\nEr ging iets fout, probeer opnieuw"); } schedualMovieAnswer = true; } else if (filmMenuNumber == "2") { continue; } else { Console.WriteLine("\nOngeldige invoer. Probeer opnieuw.\n"); } } } catch (Exception e) { Console.WriteLine("\nOngeldige invoer. Probeer opnieuw.\n"); } } }
public static void Main(string[] args) { //Zalen.removedStoelen("27/05/2020", "11:00", "Zaal1"); Calendar.runCalendar(); Mainmenu.Menu(); }
public static void loginMain() { Console.Clear(); ///Variabelen string username; string password; string tempPassword = null; Dictionary <string, string> login; User user = new User() { username = "", password = "", privileges = "", }; ///Het login programmaatje. bool stop = false; while (!stop) { Console.WriteLine("\n[1] Login\n" + "[2] Admin Login\n" + "[3] Nieuw account\n" + "[4] Terug" ); Console.Write("> "); string menuChoice = Console.ReadLine(); if (menuChoice == "1") ///Login { Console.Write("Username\n> "); username = Console.ReadLine(); System.Console.Write("password\n> "); password = null; while (true) { ///dit stukje maakt het invullen van een wachtwoord "onzichtbaar" var key = System.Console.ReadKey(true); if (key.Key == ConsoleKey.Enter) { break; } else if (key.Key == ConsoleKey.Backspace && password.Length > 0) { password = password.Remove(password.Length - 1); } else if (key.Key != ConsoleKey.Backspace) { password += key.KeyChar; } } ///Login Check account database for normal users login = JsonConvert.DeserializeObject <Dictionary <string, string> >(File.ReadAllText(@"users.json")); foreach (KeyValuePair <string, string> entry in login) { if (entry.Key == username && entry.Value == password) { user.username = entry.Key; user.password = entry.Value; user.privileges = "user"; Variables.isLoggedIn = true; Variables.username = entry.Key; Console.Clear(); Console.WriteLine("login was succesvol"); stop = true; LogedIn.LogedInMain(); } } Console.WriteLine("\nCombinatie gebruikersnaam + wachtwoord niet gevonden"); } else if (menuChoice == "2") ///Admin Login { Console.Write("Gebruikersnaam\n> "); username = Console.ReadLine(); Console.Write("Wachtwoord\n> "); password = null; while (true) { ///dit stukje maakt het invullen van een wachtwoord "onzichtbaar" var key = System.Console.ReadKey(true); if (key.Key == ConsoleKey.Enter) { break; } else if (key.Key == ConsoleKey.Backspace && password.Length > 0) { password = password.Remove(password.Length - 1); } else if (key.Key != ConsoleKey.Backspace) { password += key.KeyChar; } } ///Login Check account database for admin users var loginAdmin = JsonConvert.DeserializeObject <Dictionary <string, string> >(File.ReadAllText(@"admins.json")); foreach (KeyValuePair <string, string> entry in loginAdmin) { if (entry.Key == username && entry.Value == password) { user.username = entry.Key; user.password = entry.Value; user.privileges = "admin"; Console.Clear(); Console.WriteLine("login was succesvol"); stop = true; LogedIn.LogedInAdmin(); } } Console.WriteLine("\nCombinatie gebruikersnaam + wachtwoord niet gevonden"); } else if (menuChoice == "3") ///Nieuw Account { username = ""; password = ""; var emailval = false; login = JsonConvert.DeserializeObject <Dictionary <string, string> >(File.ReadAllText(@"users.json")); while (true) { while (!emailval) { Console.WriteLine("\nVoer een geldig emailadres in. (voer enkel een 'q' in om te annuleren)"); Console.Write("\nGebruikersnaam\n> "); username = Console.ReadLine(); if (username == "q") { Mainmenu.Menu(); } Console.Write("\nVoer gebruikersnaam nogmaals in\n> "); var tempUsername = Console.ReadLine(); if (RegexUtilities.IsValidEmail(username) && username == tempUsername) { emailval = true; } else if (login.ContainsKey(username) == false) { Console.WriteLine("Dit account bestaat al!"); } else if (!RegexUtilities.IsValidEmail(username)) { Console.WriteLine($"Dit is geen valide email adres: {username}\n"); } else { Console.WriteLine("de ingevoerde gebruikersnamen komen niet overeen"); } } Console.Write("\nWachtwoord\n> "); password = null; while (true) { ///dit stukje maakt het invullen van een wachtwoord "onzichtbaar" var key = System.Console.ReadKey(true); if (key.Key == ConsoleKey.Enter) { break; } else if (key.Key == ConsoleKey.Backspace && password.Length > 0) { password = password.Remove(password.Length - 1); } else if (key.Key != ConsoleKey.Backspace) { password += key.KeyChar; } } Console.Write("\nVoer wachtwoord nogmaals in\n> "); while (true) { var key = System.Console.ReadKey(true); if (key.Key == ConsoleKey.Enter) { break; } if (key.Key == ConsoleKey.Backspace && tempPassword.Length > 0) { tempPassword = tempPassword.Remove(tempPassword.Length - 1); } else if (key.Key != ConsoleKey.Backspace) { tempPassword += key.KeyChar; } } if (password == tempPassword) { if (password.Length > 4) { login = JsonConvert.DeserializeObject <Dictionary <string, string> >(File.ReadAllText(@"users.json")); if (login.ContainsKey(username) == false) { login.Add(username, password); using (StreamWriter file = File.CreateText(@"users.json")) { JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(file, login); } Console.WriteLine("\nAccount is aangemaakt!\n"); break; } else { Console.WriteLine("\nEr bestaat al een account met deze naam!"); } } else { Console.WriteLine("\nWachtwoord moet minimaal 5 karakters lang zijn!"); } } else { Console.WriteLine("\nWachtwoorden komen niet overeen!"); } } } else if (menuChoice == "4") ///Exit { ///Environment.Exit(-1); Mainmenu.Menu(); } else { Console.WriteLine("Kies een valide optie A.U.B!"); Console.Clear(); } } }
public static void Reserveer() { Dictionary <string, List <List <string> > > Reserveringen; List <List <string> > reserveringen = new List <List <string> >(); List <string> newReservering = new List <string>(); //Check of user is ingelogd if (Variables.isLoggedIn) { Console.WriteLine("\nU bent ingelogd en kunt reserveren\n\n"); Console.WriteLine("\nWelke dag wilt u naar de film? (gebruik dit format -> 27/05/2020)\n"); string datum; while (true) { datum = Console.ReadLine(); try { var date = Convert.ToDateTime(datum); if (datum == "Q") { LogedIn.LogedInMain(); } else if (date < DateTime.Now) { Console.WriteLine("Je kan niet in het verleden reserveren. (voer een 'q' in om te annuleren)"); Console.WriteLine("\nWelke dag wilt u naar de film? (gebruik dit format -> 27/05/2020)\n"); } else { break; } } catch { Console.WriteLine("Voer A.U.B geldige data in! (gebruik dit format -> 27/05/2020)\n"); } } Calendar.showfilms(datum); Console.WriteLine("\nWelke film wilt u reserveren?\n"); string keuze = Console.ReadLine(); int number = Convert.ToInt32(keuze) - 1; var calendar = JsonConvert.DeserializeObject <Dictionary <string, Dictionary <string, List <List <string> > > > >(File.ReadAllText(@"calendar.json")); //haal titel op voor film die gereserveerd wordt //werkt nog niet... titel van iedere film op de datum wordt gepakt var filmLijst = new List <String>(); var zaalLijst = new List <String>(); foreach (var zaal in calendar[datum]) { foreach (var films in zaal.Value) { filmLijst.Add(films[0]); zaalLijst.Add(zaal.Key); } } string filmNaam = filmLijst[number]; string zaalNaam = zaalLijst[number]; //Json bestand met films openen en lezen JsonSerializer serializer = new JsonSerializer(); Movies.Movie[] newMovies = JsonConvert.DeserializeObject <Movies.Movie[]>(File.ReadAllText(@"Movies.json")); //aantal kaartjes vaststellen Console.WriteLine("Hoeveel kaartjes wilt u bestellen voor de film " + filmNaam + "?\n"); int aantalKaartjes = Convert.ToInt32(Console.ReadLine()); //kies stoelen Console.WriteLine("U kunt nu " + aantalKaartjes + " stoelen selecteren.\n"); Console.WriteLine("De volgende stoelen zijn beschikbaar:\n"); foreach (var zaal in calendar[datum]) { foreach (var films in zaal.Value) { if ((films[0] == filmNaam) && (zaal.Key == zaalNaam)) { Zalen.removedStoelen(datum, (films[1]), zaalNaam); } } } int counter = 1; string row; string chair; List <string> stoelenGereserveerd = new List <string>(); while (counter <= aantalKaartjes) { Console.WriteLine("\nKies stoel nummer " + counter + ": (bijvoorbeeld: 'A5')"); string antwoord = Console.ReadLine(); row = antwoord[0].ToString(); if (antwoord.Length > 2) { chair = antwoord[1].ToString() + antwoord[2].ToString(); } else { chair = antwoord[1].ToString(); } foreach (var zaal in calendar[datum]) { foreach (var films in zaal.Value) { if ((films[0] == filmNaam) && (zaal.Key == zaalNaam)) { string Zaal = zaal.Key; Zalen.checkAvailability(datum, (films[1]), Zaal, row + chair); if (Variables.stoelAvailable) { stoelenGereserveerd.Add(row); stoelenGereserveerd.Add(chair); counter += 1; } else { Console.WriteLine("\nDeze stoel is niet beschikbaar. Probeer opnieuw"); } } } } } double totaalPrijs = 0; foreach (var item in newMovies) { if (item.title == filmNaam) { //totaalprijs berekenen totaalPrijs = aantalKaartjes * item.price; Variables.totaalPrijs = totaalPrijs; } } //Om € teken zichtbaar te maken Console.OutputEncoding = System.Text.Encoding.UTF8; Console.WriteLine("\n\nDe totaalprijs bedraagt \u20AC" + totaalPrijs); //Keuze om te bevestigen of terug te gaan naar films overzicht Console.WriteLine("\n\n[1] Bevestig reservering\n[2] Breek reservering af\n"); int optie = Convert.ToInt32(Console.ReadLine()); if (optie == 1) { //Deserialize json file Reserveringen = JsonConvert.DeserializeObject <Dictionary <string, List <List <string> > > >(File.ReadAllText(@"Reserveringen.json")); //Kijk of persoon al bestaat in reserveringen database if (Reserveringen.ContainsKey(Variables.username) == true) { //Indien dit het geval is, voeg nieuwe reservering toe aan persoon foreach (var zaal in calendar[datum]) { foreach (var films in zaal.Value) { if ((films[0] == filmNaam) && (zaal.Key == zaalNaam)) { newReservering.Add(filmNaam); string Zaal = zaal.Key; newReservering.Add(Zaal); newReservering.Add(aantalKaartjes.ToString()); newReservering.Add(films[1]); newReservering.Add(datum); int counter2 = 0; int counter3 = 0; while (counter2 < aantalKaartjes) { newReservering.Add(stoelenGereserveerd[counter3] + stoelenGereserveerd[counter3 + 1]); counter3 += 2; counter2 += 1; } Reserveringen[Variables.username].Add(newReservering); } } } } //Maak anders persoon aan in database en voeg reservering toe else { foreach (var zaal in calendar[datum]) { foreach (var films in zaal.Value) { if ((films[0] == filmNaam) && (zaal.Key == zaalNaam)) { newReservering.Add(filmNaam); string Zaal = zaal.Key; newReservering.Add(Zaal); newReservering.Add(aantalKaartjes.ToString()); newReservering.Add(films[1]); newReservering.Add(datum); int counter2 = 0; int counter3 = 0; while (counter2 < aantalKaartjes) { newReservering.Add(stoelenGereserveerd[counter3] + stoelenGereserveerd[counter3 + 1]); counter3 += 2; counter2 += 1; } reserveringen.Add(newReservering); Reserveringen.Add(Variables.username, reserveringen); } } } } //Schrijf terug naar json file using (StreamWriter file = File.CreateText(@"Reserveringen.json")) { JsonSerializer serialize = new JsonSerializer(); serialize.Serialize(file, Reserveringen); } // Send mail to confirm reservation //Movies.MovieProgram db = new Movies.MovieProgram(); //db.ConfirmationMail(); Console.WriteLine("\n\nBedankt voor uw reservering. \nU heeft op " + datum + " de film " + filmNaam + " gereserveerd. \nU kunt de reservering vinden bij 'Mijn Reserveringen' in het onderstaande menu. \nOok hebben wij u een bevestigingsmail gestuurd.\n"); } if (optie == 2) { // Terug naar menu if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Mainmenu.Menu(); } } if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Mainmenu.Menu(); } } else { Console.WriteLine("U bent niet ingelogd\n"); Console.WriteLine("Druk op ESC om in te loggen\n"); if (Console.ReadKey().Key != ConsoleKey.Escape) { } else { Console.Clear(); //Geef inlog pagina weer Console.WriteLine("\nDit is de account pagina. Kies een van de volgende opties:"); Login.loginMain(); //Aanroepen account.cs } } }
public static void LogedInMain() { Console.Clear(); Console.WriteLine("\nKies een van de volgende opties om verder te gaan:\n[1] Films\n[2] Snacks menu\n[3] Contact\n[4] Mijn reserveringen\n[5] Uitloggen"); Console.Write("> "); string optieMenu = Console.ReadLine(); if (optieMenu == "1") { { // Run database Movies.MovieProgram db = new Movies.MovieProgram(); //Films menu Console.WriteLine("\n[1] Alle films bekijken\n[2] Film zoeken\n[3] Ga terug"); Console.Write("> "); optieMenu = Console.ReadLine(); if (optieMenu == "1") { //Geef pagina met films weer Console.Clear(); db.MovieShow(); Console.WriteLine("\n\nKies een van de volgende opties:\n[1] Film bekijken\n[2] Film reserveren\n[3] Ga terug"); string optieMenu3 = Console.ReadLine(); if (optieMenu3 == "1") { Console.Clear(); db.pickMovie(); } else if (optieMenu3 == "2") { Console.Clear(); Reserveren.Reserveer(); } else if (optieMenu3 == "3") { Console.Clear(); LogedIn.LogedInMain(); } } else if (optieMenu == "2") { Console.Clear(); db.filterMovie(); } else if (optieMenu == "3") { Console.Clear(); LogedIn.LogedInMain(); } } } else if (optieMenu == "2") { //Geef pagina met snacks menu weer Snacks.SnacksProgram snackdb = new Snacks.SnacksProgram(); snackdb.SnacksShow(); string optieSnacksMenu; Console.WriteLine("\n\nWilt u terug naar het menu?\n[1] Ja\n[2] Nee"); optieSnacksMenu = Console.ReadLine(); try { if (optieSnacksMenu == "1") { // Terug naar menu if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Console.Clear(); } Mainmenu.Menu(); } else if (optieSnacksMenu == "2") { Environment.Exit(1); } else { // Wanneer de input niet 1 of 2 is Console.Clear(); Console.WriteLine("\nGelieve een nummer tussen 1 en 2 in te toetsen"); // Terug naar menu if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Console.Clear(); } Mainmenu.Menu(); } } catch { // Wanneer de input geen int is Console.Clear(); Console.WriteLine("\nEr is iets fout gegaan. Probeer opnieuw."); // Terug naar menu if (Variables.isLoggedIn) { LogedIn.LogedInMain(); } else { Console.Clear(); } Mainmenu.Menu(); } } else if (optieMenu == "3") { //Aanroepen contact.cs Console.Clear(); Contact.contact(); } else if (optieMenu == "4") { ///Geeft alle gereserveerde films weer var reserveringen = JsonConvert.DeserializeObject <Dictionary <string, List <List <string> > > >(File.ReadAllText(@"Reserveringen.json")); bool resAnswer = false; while (!resAnswer) { Console.Clear(); int num = 1; foreach (var item in reserveringen[Variables.username]) { Console.WriteLine($"\n[{num}] {item[0]}"); Console.WriteLine("===================="); Console.WriteLine($"Film: {item[0]}"); Console.WriteLine($"Theaterzaal: {item[1]}"); Console.WriteLine($"Aantal kaartjes: {item[2]}"); Console.WriteLine($"Starttijd: {item[3]}"); Console.WriteLine($"Datum: {item[4]}"); int counter = 5; string str = "Stoelen: "; while (item.Count > counter) { str += (item[counter] + " "); counter += 1; } Console.WriteLine($"{str}\n"); num++; } Console.WriteLine($"\nKies een reservering om te verwijderen of kies {num} om terug te gaan"); string a = Console.ReadLine(); int showResAnswer = 0; if (int.TryParse(a, out showResAnswer)) { showResAnswer = Convert.ToInt32(a); } else { Console.WriteLine("\nVoer een nummer in"); continue; } if (showResAnswer > 0 && showResAnswer < num) { bool delAnswer = false; while (!delAnswer) { Console.WriteLine($"\nWeet u zeker dat u uw reservering van {reserveringen[Variables.username][showResAnswer - 1][0]} wilt verwijderen?\n[1] Ja\n[2] Nee"); reserveringen[Variables.username].RemoveAt(showResAnswer - 1); string confirmDelete = Console.ReadLine(); if (confirmDelete == "1") { using (StreamWriter file = File.CreateText(@"Reserveringen.json")) { JsonSerializer serializerz = new JsonSerializer(); serializerz.Serialize(file, reserveringen); Console.WriteLine("\nReservering is verwijderd."); } delAnswer = true; resAnswer = true; LogedInMain(); } else if (confirmDelete == "2") { delAnswer = true; resAnswer = true; LogedInMain(); } else { Console.WriteLine("\nVoer 1 of 2 in"); } } } else if (showResAnswer == num) { resAnswer = true; LogedInMain(); } else { Console.WriteLine($"\nVoer een nummer tussen 1 en {num} in"); } } } else if (optieMenu == "5") { /// Movies Console.Clear(); Console.WriteLine("Succesvol uitgelogd!"); Mainmenu.Menu(); } else { Console.Clear(); Console.WriteLine("Ongeldige invoer. Probeer opnieuw."); LogedInMain(); } }