// Method that only prints the ticket, has the specific ticket as parameter public void DisplayReservatie(Tickets ticket) { Console_Reset.clear(); string stoelen = ""; if (ticket.seatIndexes.Length == 1) { stoelen = ticket.seatStrings[0]; } else { for (int i = 0; i < ticket.seatStrings.Length; i++) { stoelen += ticket.seatStrings[i] + " "; } } Console.WriteLine("==============="); Console.WriteLine($"*Reservering {ticket.filmName}*"); Console.WriteLine("===============\n"); Console.WriteLine("Gerserveerde film: " + ticket.filmName); Console.WriteLine("Naam: " + ticket.namePerson); Console.WriteLine("Kaartje(s): " + ticket.ticketAmount); Console.WriteLine("Totaal prijs: " + ticket.price); Console.WriteLine("Dag: " + ticket.weekday); Console.WriteLine("Tijd: " + ticket.startTime); Console.WriteLine("Filmduur: " + ticket.filmDuration); Console.WriteLine("Zaal: " + ticket.hall); Console.WriteLine($"Stoel(en): {stoelen}"); Console.WriteLine("Reservering nummer: " + ticket.reservationNumber); }
public void Navigation() { bool retry = true; ChooseDay(); while (retry) { Console.WriteLine("vul 'x' in om te stoppen met kijken"); Console.WriteLine("vul het corresponderende nummer in om het schema van die dag te bekijken"); var navigation = Console.ReadLine(); if (navigation == "<") { Console_Reset.clear(); ChooseDay(); } else if (navigation == "x" || navigation == "X") { retry = false; } else { try { int selection = Convert.ToInt32(navigation); Console_Reset.clear(); Console.WriteLine("vul '<' in om terug te gaan\n"); PrintDaySchedule(selection - 1, this.movieSchemaList); } catch { Console.WriteLine("dit is geen geldige invoerwaarde."); } } } }
// functie die weergeeft welke items de gegeven allergeen niet bevatten public string DrinkenAllergieFilter(string toFilter) { Console_Reset.clear(); toFilter = toFilter.ToLower(); string s = ""; bool check = true; // loopt door alle items in drinken json for (int i = 0; i < drinkenDataList.Count; i++) { // loopt door de allergenen in de item for (int j = 0; j < drinkenDataList[i].allergenen.Length; j++) { // kijkt of de item allergeen bevat, zo ja gaat check op false en breekt de loop if (drinkenDataList[i].allergenen[j].Contains(toFilter)) { check = false; break; } } // als de item het niet bevat wordt hij toegevoegd aan string if (check) { s += drinkenDataList[i].naam + "\n"; } } return($"Gevonden drinken zonder zoekterm '{toFilter}':\n\n{s}"); }
// drinkendisplay public void DrinkenMenu() { Console.WriteLine("Drinken Menu:\n---------------------------------------------------\n1. Cola - \t\t2,99\n2. Pepsi - \t\t3,49\n3. Dr.Pepper - \t\t2,99\n4. Fanta Orange - \t2,99\n5. Spa rood - \t\t1,99\n6. Spa blauw - \t\t1,99\n7. Appelsap - \t\t2,49\n8. Rode wijn - \t\t6,49\n9. Witte wijn - \t6,49\n10. Heineken - \t\t3,49\n\n11. Terug naar de vorige pagina\n"); Console.WriteLine("\nTyp het nummer van de item die je wilt bekijken en klik op enter:"); // leest input command van de console string input = Console.ReadLine(); Console_Reset.clear(); try // in t geval dat de input te hoog is of niet convertible is tot int { int num = Convert.ToInt32(input); if (num <= 10) { // print naam item Console.WriteLine($"{drinkenDataList[num - 1].naam}\n---------------------------------------------------\n"); // print inhoud item Console.WriteLine($"inhoud: {drinkenDataList[num - 1].inhoud}"); // print prijs item Console.WriteLine($"prijs: {drinkenDataList[num - 1].prijs}\n"); // print voedingswaarde Console.WriteLine($"{drinkenDataList[num - 1].voedingswaarde}\n"); // print allergenen string al = ""; for (int i = 0; i < (drinkenDataList[num - 1].allergenen).Length; i++) { al += drinkenDataList[num - 1].allergenen[i] + ", "; } Console.WriteLine("allergenen: " + al + "\n"); // input na de display Console.WriteLine("\n1. Terug naar het eten & drinken menu"); input = Console.ReadLine(); Console_Reset.clear(); if (input == "1" || input == "") { DrinkenMenu(); } } else if (num == 11) { FoodDrinkRun.Run(); } } catch (Exception) { // input is niet convertible naar int of input is te hoog nummer Console_Reset.clear(); Console.WriteLine("De input is niet juist, probeer het nogeens\n"); //DrinkenMenu(); } Console_Reset.clear(); }
public static void ChooseDay() { Console_Reset.clear(); Console.WriteLine("Kies hieruit een dag om te bekijken:\n"); string[] dagen = new string[] { "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag", "Zondag" }; for (int i = 0; i < dagen.Length; i++) { Console.WriteLine($"{i+1}.\t{dagen[i]}"); } Console.WriteLine(""); }
//// USER INPUTS FOR CREATION TICKET // Method that asks user the amount of people reserving, returns string of the amount (easier to compute) public string PersonAmount() { bool loop = true; bool falseInput = false; while (loop == true) { Console_Reset.clear(); Console.WriteLine("----Reserveren----"); if (falseInput == true) { Console.WriteLine("Ongeldige waarde meegeven, probeer het opnieuw"); } Console.WriteLine("\nVoor hoeveel personen wilt u reserveren?"); var PersonCount = Console.ReadLine(); Console.WriteLine($"\nGegeven Waarde: {PersonCount} \nOm toe te passen toets ENTER\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); var confirm = Console.ReadLine(); if (confirm == "x" || confirm == "X") { loop = false; return(null); // Returns nothing } else if (confirm == "r" || confirm == "R") { loop = true; } else if (PersonCount.Length == 0) { loop = true; falseInput = true; } else { try { int check = Convert.ToInt32(PersonCount); return(PersonCount); } catch { falseInput = true; loop = true; } } } return(null); // Returns nothing <-- check for the compiler so that it doesnt nag }
// functie die weergeeft welke items de zoekterm bevatten in titel, tags of allergenen public string DrinkenFilter(string toFilter) { // To prevent test failing; console doesnt exist when trying to run test and clearing. Console_Reset.clear(); string s = ""; toFilter = toFilter.ToLower(); bool add; // loopt door alle items in de json for (int i = 0; i < drinkenDataList.Count; i++) { add = false; // zoekt in titel van item if (drinkenDataList[i].naam.ToLower().Contains(toFilter)) { add = true; } // zoekt in tags for (int j = 0; j < drinkenDataList[i].tags.Length; j++) { if (drinkenDataList[i].tags[j].Contains(toFilter)) { add = true; } } // zoekt in allergenen for (int j = 0; j < drinkenDataList[i].allergenen.Length; j++) { if (drinkenDataList[i].allergenen[j].Contains(toFilter)) { add = true; } } if (add == true) { s += drinkenDataList[i].naam + "\n"; } } return($"Gevonden drinken met zoekterm '{toFilter}':\n\n{s}");; }
// functie die weergeeft welke items de zoekterm bevatten in titel, tags of allergenen public string EtenFilter(string toFilter) { Console_Reset.clear(); string s = ""; toFilter = toFilter.ToLower(); bool add; { // loopt door alle items in de json for (int i = 0; i < etenDataList.Count; i++) { add = false; // zoekt in titel van item if (etenDataList[i].naam.ToLower().Contains(toFilter)) { add = true; } // zoekt in tags for (int j = 0; j < etenDataList[i].tags.Length; j++) { if (etenDataList[i].tags[j].Contains(toFilter)) { add = true; } } // zoekt in allergenen for (int j = 0; j < etenDataList[i].allergenen.Length; j++) { if (etenDataList[i].allergenen[j].Contains(toFilter)) { add = true; } } if (add == true) { s += etenDataList[i].naam + "\n"; } } return($"Gevonden eten met zoekterm '{toFilter}':\n\n{s}"); } }
public static void Navigation(int user = -1) { // Navigation of the catalog // int page = 1; Menu select = new Menu("gebruik de pijltjes om te navigeren en druk op enter om te selecteren\n", GetList(page), $"\nPagina: {page} / 5", 10); select.Run(); bool retry = true; // create a while loop to keep running navigation // while (retry) { // after index 9 the navigation options are placed // if (select.SelectedIndex >= 10) { // to go back a page // if (select.SelectedIndex == 10) { if (page <= 1) { page = 1; select.finalText = $"\nPagina: {page} / 5"; select.Options = GetList(page); select.whiteLine = 10; select.Run(); } else { page--; select.finalText = $"\nPagina: {page} / 5"; select.Options = GetList(page); select.whiteLine = 10; select.Run(); } } // to go to the next page // else if (select.SelectedIndex == 11) { if (page >= 5) { page = 5; select.finalText = $"\nPagina: {page} / 5"; select.Options = GetList(page); select.whiteLine = 10; select.Run(); } else { page++; select.finalText = $"\nPagina: {page} / 5"; select.Options = GetList(page); select.whiteLine = 10; select.Run(); } } // to filter movies // else if (select.SelectedIndex == 12) // WIP. note to self: create a seperate function for the filter navigation // { FilterNavigation(user); select.Run(); } // to exit // else if (select.SelectedIndex == 13) { retry = false; } } // if one of the movies is selected(index 0-9) // else { // clear the console and print the movie info // Console_Reset.clear(); select.finalText = ""; int movieIndexed = ((page - 1) * 10) + (select.SelectedIndex + 1); select.Prompt = DisplayMovie(movieIndexed);// get the right index for the Json file // // change the selection menu for select // select.Options = new string[] { "maak een reservering", "terug naar lijst", "terug naar hoofdmenu" }; select.SelectedIndex = 0; select.Run(); // to make a reservation // if (select.SelectedIndex == 0 && user != -1) { MovieDetail movieList = new MovieDetail(); string title = movieList.movieDataList[movieIndexed - 1].titel; Reservering reservation = new Reservering(); reservation.CreateTicket(title, user); retry = false; } else if (select.SelectedIndex == 0) { bool confirm = true; while (confirm) { Console_Reset.clear(); Console.WriteLine("U moet een account hebben om te kunnen reserveren"); Console.WriteLine("Klik op enter om door te gaan"); string userInput = Console.ReadLine(); confirm = false; } retry = false; } // to go back to the list of movies // else if (select.SelectedIndex == 1) { select.finalText = $"\nPagina: {page} / 5"; select.Prompt = "gebruik de pijltjes om te navigeren en druk op enter om te selecteren\n"; select.Options = GetList(page); select.whiteLine = 10; select.Run(); } // to exit // else if (select.SelectedIndex == 2) { retry = false; } } } }
// Method that asks user which hall and date it wants from the schedule, returns string array public string[] HallNDate(string title) { // Determine size of the array int count = 0; for (int i = 0; i < movieSchemaList.Count; i++) { if (movieSchemaList[i].title == title) { count += 1; } } // Create array of movies that contains the title given in parameter string[][] selectionArr = new string[count][]; count = 0; for (int i = 0; i < movieSchemaList.Count; i++) { if (movieSchemaList[i].title == title) { // Creates a movie array string[] movie = { movieSchemaList[i].title, movieSchemaList[i].hall, movieSchemaList[i].day, movieSchemaList[i].time }; // Forwards it to the selection array selectionArr[count] = movie; count += 1; } } // Checks if selectionArr is filled (if the movie is shown) if (selectionArr.Length == 0) { Console_Reset.clear(); Console.WriteLine("----Reserveren----"); Console.WriteLine("Op dit moment is deze film niet toonbaar bij ons."); Console.WriteLine("\nklik op enter om door te gaan"); var nothing = Console.ReadLine(); return(null); } // Lets user select specific movie else { bool loop = true; bool falseInput = false; while (loop == true) { Console_Reset.clear(); Console.WriteLine("----Reserveren----"); if (falseInput == true) { Console.WriteLine("Ongeldige waarde meegeven, probeer het opnieuw"); } Console.WriteLine("\nSelecteer de dag, tijd en zaal."); PrintItemSelection(selectionArr); var userInput = Console.ReadLine(); Console.WriteLine($"\nGegeven Waarde: {userInput} \nOm toe te passen toets ENTER\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); var confirm = Console.ReadLine(); if (confirm == "x" || confirm == "X") { loop = false; return(null); // Returns nothing } else if (confirm == "r" || confirm == "R") { loop = true; } else if (userInput.Length == 0) { loop = true; falseInput = true; } else { try { int check = Convert.ToInt32(userInput); return(selectionArr[check - 1]); } catch { falseInput = true; loop = true; } } } } return(null); // Returns nothing <-- check for the compiler so that it doesnt nag }
public static void FilterNavigation(int user = -1) { // navigation for the entire filter section // Console_Reset.clear(); // genre selection // string[] genreOptions = new string[] { "actie", "animatie", "avontuur", "drama", "familie", "fantasy", "horror", "komedie", "misdaad", "muziek", "mysterie", "romantiek", "sci-fi", "thriller" }; Menu genre = new Menu("gebruik de pijltjes om te navigeren en druk op enter om te selecteren\nKies een genre om te filteren\n", genreOptions); genre.Run(); string chosenGenre = genreOptions[genre.SelectedIndex]; Console_Reset.clear(); // use chosen genre to display a list of movies that fit the filter // string[][] filterPages = movieFilter(chosenGenre); int currentPage = 0; bool retry = true; MovieDetail movie = new MovieDetail(); Menu select = new Menu($"gebruik de pijltjes om te navigeren en druk op enter om te selecteren\ngefilterd genre: {chosenGenre}\n", filterPages[currentPage], $"\nPagina: {currentPage + 1} / {filterPages.Length}", filterPages[currentPage].Length - 3); select.Run(); while (retry) { // the navigation options at the bottom of the page // if (select.SelectedIndex >= (filterPages[currentPage].Length - 3)) { // to go to the previous page // if (select.SelectedIndex == (filterPages[currentPage].Length - 3)) { if (currentPage <= 0) { currentPage = 0; select.finalText = $"\nPagina: {currentPage + 1} / {filterPages.Length}"; select.Options = filterPages[currentPage]; select.whiteLine = filterPages[currentPage].Length - 3; select.Run(); } else { currentPage--; select.SelectedIndex = (filterPages[currentPage].Length - 3); select.finalText = $"\nPagina: {currentPage + 1} / {filterPages.Length}"; select.Options = filterPages[currentPage]; select.whiteLine = filterPages[currentPage].Length - 3; select.Run(); } } // to go to the next page // else if (select.SelectedIndex == (filterPages[currentPage].Length - 2)) { if (currentPage >= (filterPages.Length - 1)) { currentPage = (filterPages.Length - 1); select.finalText = $"\nPagina: {currentPage + 1} / {filterPages.Length}"; select.Options = filterPages[currentPage]; select.whiteLine = filterPages[currentPage].Length - 3; select.Run(); } else { currentPage++; select.SelectedIndex = (filterPages[currentPage].Length - 2); select.finalText = $"\nPagina: {currentPage + 1} / {filterPages.Length}"; select.Options = filterPages[currentPage]; select.whiteLine = filterPages[currentPage].Length - 3; select.Run(); } } // to return to the regular catalog // else if (select.SelectedIndex == (filterPages[currentPage].Length - 1)) { retry = false; } } // get info about the selected movie // else { // get the movie info from the json file // string selected = filterPages[currentPage][select.SelectedIndex]; string info = ""; int movieIndexed = -1; for (int i = 0; i < movie.movieDataList.Count; i++) { if (movie.movieDataList[i].titel == selected) { info = DisplayMovie(i + 1); movieIndexed = i; // info has been found // } } // clear the console and print the movie info // Console_Reset.clear(); select.finalText = ""; select.Prompt = info; // change the selection menu for select // select.Options = new string[] { "maak een reservering", "terug naar lijst", "terug naar hoofdmenu" }; select.SelectedIndex = 0; select.whiteLine = 0; select.Run(); // to make a reservation // if (select.SelectedIndex == 0 && user != -1) { MovieDetail movieList = new MovieDetail(); string title = movieList.movieDataList[movieIndexed].titel; Reservering reservation = new Reservering(); reservation.CreateTicket(title, user); retry = false; } else if (select.SelectedIndex == 0) { bool confirm = true; while (confirm) { Console_Reset.clear(); Console.WriteLine("U moet een account hebben om te kunnen reserveren"); Console.WriteLine("Klik op enter om door te gaan"); string userInput = Console.ReadLine(); confirm = false; } retry = false; } // to go back to the list of movies // else if (select.SelectedIndex == 1) { select.finalText = $"\nPagina: {currentPage + 1} / {filterPages.Length}"; select.Options = filterPages[currentPage]; select.whiteLine = filterPages[currentPage].Length - 3; select.Prompt = "gebruik de pijltjes om te navigeren en druk op enter om te selecteren\n"; select.Run(); } // to exit // else if (select.SelectedIndex == 2) { retry = false; } } } }
// Method that display's account of specific person, returns bool if account still exists public bool AccountView(int index, bool perm = false) { bool retry = true; bool returnValue = true; while (retry == true) { Console_Reset.clear(); if (returnValue == false) { Console.WriteLine("Gegeven waarde kan niet aangepast worden of toegevoegd, probeer het opnieuw\n"); } string name = accountDataList[index].Name; string password = accountDataList[index].Password; int age = accountDataList[index].Age; string gender = accountDataList[index].Gender; string email = accountDataList[index].Email; string bankingdetails = accountDataList[index].bankingDetails; string[] allergies = accountDataList[index].Allergies; bool permission = accountDataList[index].Permission; string userInputPrint = ""; // compile a string with all the allergies string allergiesStringPrint = ""; for (int i = 0; i < allergies.Length; i++) { if (i < allergies.Length - 1) { allergiesStringPrint += $"{allergies[i]}, "; } else { allergiesStringPrint += $"{allergies[i]}"; } } // prints all the account data Console.WriteLine($"\n[1] Naam: {name}"); Console.WriteLine($"\n[2] Wachtwoord: ********"); if (age == -1) { Console.WriteLine($"\n[3] Leeftijd: "); } else { Console.WriteLine($"\n[3] Leeftijd: {age}"); } Console.WriteLine($"\n[4] Geslacht: {gender}"); Console.WriteLine($"\n[5] Email: {email}"); Console.WriteLine($"\n[6] Bank gegevens: {bankingdetails}"); Console.WriteLine($"\n[7] Allergien: " + allergiesStringPrint); if (perm == true) // only gives option to change permission value if permission entered is true, for admin reasons { Console.WriteLine($"\n[8] Permission: {permission}"); Console.WriteLine($"\n[9] Verwijder account"); } else { Console.WriteLine($"\n[8] Verwijder account"); } Console.WriteLine($"\nVoer nummer in om geselecteerde veld te wijzigen of toe te voegen, of druk X in om terug te gaan: "); string userInputItem = Console.ReadLine(); string userInputValue = ""; // prepare variable for if statement if (userInputItem == "X" || userInputItem == "x") // checks for "x" to stop program { break; } else if (userInputItem == "7") // checks for "allergie" add or remove [array] { Console_Reset.clear(); Console.WriteLine("\nKies uit de volgende opties:\n[1] om een allergie toe te voegen\n[2] om een allergie te verwijderen\n'X' om te stoppen"); string choose = Console.ReadLine(); if (choose == "1") { userInputItem = "7.1"; bool innerRetry = true; while (innerRetry == true) { Console_Reset.clear(); string[] availableArr = this.AvailableAllergie(allergies); Console.WriteLine("\nKies uit de volgende allergenen: "); for (int i = 0; i < availableArr.Length; i++) { Console.WriteLine($"[{i + 1}] {availableArr[i]}"); } Console.WriteLine("\nVoer hier waarde in om mee te geven: "); userInputValue = Console.ReadLine(); try { int convert = Convert.ToInt32(userInputValue); convert -= 1; if (convert < availableArr.Length) { userInputValue = availableArr[convert]; innerRetry = false; } else { Console.WriteLine("De input valt buiten de selectie, probeer het opnieuw"); } } catch { userInputValue = ""; // to return an empty value innerRetry = false; } } } else if (choose == "2") { userInputItem = "7.2"; bool innerRetry = true; if (allergies.Length == 0) // checks if user has allergies to begin with { userInputItem = ""; Console.WriteLine("\nU heeft nog geen allergenen"); } else { while (innerRetry == true) // to make retry possible { Console_Reset.clear(); Console.WriteLine("\nKies uit de volgende allergenen: "); // prints all the users allergies for (int i = 0; i < allergies.Length; i++) { Console.WriteLine($"[{i + 1}] {allergies[i]}"); } Console.WriteLine("\nVoer hier waarde in om mee te geven: "); userInputValue = Console.ReadLine(); try // tries to convert value to be used in update method { int convert = Convert.ToInt32(userInputValue); convert -= 1; if (convert < allergies.Length) { userInputValue = allergies[convert]; innerRetry = false; } else { Console.WriteLine("De input valt buiten de selectie, probeer het opnieuw"); } } catch { userInputValue = ""; // to return an empty value innerRetry = false; } } } } else { userInputItem = ""; // to break the update method } } // If 7, goes to add allergies section else // for every other input { if ((userInputItem == "8" && perm == false) || (userInputItem == "9" && perm == true)) { Console.WriteLine("\nOm account te verwijderen, type VERWIJDER"); } else { Console.WriteLine("\nVoer hier waarde in om mee te geven: "); } userInputValue = Console.ReadLine(); } // Check if there was input and sort input string[] callValue = new string[] { userInputItem, userInputValue }; bool inputCheck = TextCheck(callValue); // Convert Item input to use in update method if (userInputItem == "1") { userInputItem = "name"; userInputPrint = "Naam"; } else if (userInputItem == "2") { userInputItem = "password"; userInputPrint = "Wachtwoord"; } else if (userInputItem == "3") { userInputItem = "age"; userInputPrint = "Leeftijd"; } else if (userInputItem == "4") { userInputItem = "gender"; userInputPrint = "Geslacht"; } else if (userInputItem == "5") { userInputItem = "email"; userInputPrint = "Email"; } else if (userInputItem == "6") { userInputItem = "bankingdetails"; userInputPrint = "Bank gegevens"; } else if (userInputItem == "7.1") { userInputItem = "allergiesAdd"; userInputPrint = "Allergie toevoegen"; } else if (userInputItem == "7.2") { userInputItem = "allergiesRemove"; userInputPrint = "Allergie verwijderen"; } else if (userInputItem == "8" && perm == true) // only use 8 if perms == true { userInputItem = "permission"; userInputPrint = "Rechten"; } else if (userInputItem == "8" && perm == false) // uses 8 to delete acc if perms == false { userInputItem = "accountRemove"; userInputPrint = "Account verwijderen"; } else if (userInputItem == "9" && perm == true) // uses 9 to delete acc if perms == true { userInputItem = "accountRemove"; userInputPrint = "Account verwijderen"; } else { returnValue = false; } if (inputCheck == true) { Console.WriteLine("\nBeide velden moeten een input hebben.\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); } else { Console.WriteLine($"\nGeselecteerde Veld: {userInputPrint} | Gegeven Waarde: {userInputValue} \nOm toe te passen toets ENTER\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); } // Checked if user wants to retry or confirm // string confirm = Console.ReadLine(); if (confirm == "R" || confirm == "r" || confirm == "'R'" || confirm == "'r'") { retry = true; } else if (confirm == "X" || confirm == "x" || confirm == "'X'" || confirm == "'x'") { retry = false; } else { if (inputCheck == true) { retry = true; } else { returnValue = UpdateUser(userInputItem, userInputValue, index); } } if (userInputItem == "accountRemove" && returnValue == true) { retry = false; return(true); // account has been removed } } return(false); // no account removal }
[ExcludeFromCodeCoverage] // This will not be covered by the test because it only calls other methods, returns nothing and write's nothing to JSON. All called methods are tested! public void ReservationUserPrint(int user) { string state = " "; int start = 0; int stop = 0; bool loop = true; while (loop == true) { bool executeRun = true; // creates a list of all the users reservations, MUST be in the loop, so that it refreshes if a reservation is deleted List <int> reservationList = ReservationList(user); if (reservationList.Count != 0) { // runs code when page is at 0, no increase in value if (start == 0 && (state != ">" && state != "<")) { if (start + 10 > reservationList.Count) { if (start == reservationList.Count) { executeRun = false; } stop = reservationList.Count; } else { stop = start + 10; } } // runs code with 10 increment, stores value else if (state == ">") { if ((start + 10) >= reservationList.Count) { executeRun = false; } else { start += 10; stop = start + 10; } } // Runs code with 10 decrement, stores value else if (state == "<") { if ((start - 10) < 0) { executeRun = false; } else { start -= 10; stop = start + 10; } } // Runs the code if (executeRun == true) { // Header Console_Reset.clear(); Console.WriteLine("------------------------------"); Console.WriteLine("Vul < of > in om te navigeren tussen de bladzijden. \nVoer het corresponderende nummer in om de naar de reservering te gaan\nOm te stoppen toets X.\n"); // Print the users PrintItemReservation(start, stop, reservationList); // current page indicator int pageCounterCurrent = (start / 10) + 1; int pageCounterAll = (reservationList.Count / 10) + 1; Console.WriteLine($"\nPage {pageCounterCurrent}/{pageCounterAll}"); } // Process user input string userInput = Console.ReadLine(); try { int convert = Convert.ToInt32(userInput); convert -= 1; bool inspectReservation = true; while (inspectReservation == true) { DisplayReservatie(TicketsList[ReservationNumberIndexer(reservationList[convert])]); state = " "; Console.WriteLine("\nals u de reservering wilt verwijderen, typ VERWIJDER. Om terug te gaan, toets 'X'"); string innerUserInput = Console.ReadLine(); if (innerUserInput == "x" || innerUserInput == "X") { inspectReservation = false; } else if (innerUserInput == "VERWIJDER") { DeleteTicket(reservationList[convert]); inspectReservation = false; } } } catch { if (userInput == ">" || userInput == "<") { state = userInput; } else if (userInput == "x" || userInput == "X") { loop = false; break; } else { state = " "; } } } else { Console_Reset.clear(); Console.WriteLine("------------------------------"); Console.WriteLine("\nEr zijn geen reserveringen gevonden"); Console.WriteLine("\nU kunt gemakkelijk een reservering maken door een film in onze catalogus te selecteren en op reserveren te drukken!"); Console.WriteLine("\n\nDruk een toets in om door te gaan"); string userInput = Console.ReadLine(); loop = false; } } }
// Method that creates user, based on input => calls CreateUser method. public void TextCreateUser() { // retry bool for if the user wants to try again bool retry = true; bool failed = false; while (retry == true) { // Clears the console for typing; Console_Reset.clear(); // Ask for user input Console.WriteLine("*Registreren*"); if (failed == true) // checks if there was a previous failed account creation { Console.WriteLine("!!! Gekozen gebruikersnaam bestaat al, probeer opnieuw !!!"); } Console.WriteLine("\nVoer een gebruikersnaam in: "); string User_Name = Console.ReadLine(); Console.WriteLine("\nVoer een wachtwoord in: "); string Password = Console.ReadLine(); // Check if there was input string[] callValue = new string[] { User_Name, Password }; bool inputCheck = TextCheck(callValue); if (inputCheck == true) { Console.WriteLine("\nBeide velden moeten een input hebben.\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); } else { Console.WriteLine($"\nGeselecteerde gebruikersnaam: {User_Name} | Geselecteerde wachtwoord: {Password} \nOm account te creëren toets ENTER\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); } // Checked if user wants to retry or confirm username // string confirm = Console.ReadLine(); if (confirm == "R" || confirm == "r" || confirm == "'R'" || confirm == "'r'") { retry = true; } else if (confirm == "X" || confirm == "x" || confirm == "'X'" || confirm == "'x'") { retry = false; } else { if (inputCheck == true) { retry = true; } else { if (UsernameCheck(User_Name) == true) { retry = true; failed = true; } else { retry = false; this.CreateUser(User_Name, Password); } } } } }
// Prints all the users based on user input given in method, returns integer with current account location (because it changes) public int AdminAccountViewer(string activeAdmin) { string state = " "; int start = 0; int stop = 0; bool loop = true; while (loop == true) { bool executeRun = true; // runs code when page is at 0, no increase in value if (start == 0 && (state != ">" && state != "<")) { if (start + 10 > accountDataList.Count) { if (start == accountDataList.Count) { executeRun = false; } stop = accountDataList.Count; } else { stop = start + 10; } } // runs code with 10 increment, stores value else if (state == ">") { if ((start + 10) >= accountDataList.Count) { executeRun = false; } else { start += 10; stop = start + 10; } } // Runs code with 10 decrement, stores value else if (state == "<") { if ((start - 10) < 0) { executeRun = false; } else { start -= 10; stop = start + 10; } } // Runs the code if (executeRun == true) { // Header Console_Reset.clear(); Console.WriteLine("------------------------------"); Console.WriteLine("Vul < of > in om te navigeren tussen de bladzijden. \nVoer het corresponderende nummer in om de naar de gebruiker te gaan\nOm te stoppen toets X.\n"); // Print the users PrintItem(start, stop); // current page indicator int pageCounterCurrent = (start / 10) + 1; int pageCounterAll = (accountDataList.Count / 10) + 1; Console.WriteLine($"\nPage {pageCounterCurrent}/{pageCounterAll}"); } // Process user input string userInput = Console.ReadLine(); try { int convert = Convert.ToInt32(userInput); convert -= 1; AccountView(convert, true); state = " "; } catch { if (userInput == ">" || userInput == "<") { state = userInput; } else if (userInput == "x" || userInput == "X") { loop = false; break; } else { state = " "; } } } for (int i = 0; i < accountDataList.Count; i++) { if (accountDataList[i].Name == activeAdmin) { return(i); } } return(-1); }
// Method that returns user account index, based on input => calls login method. public int TextLogin() { // retry bool for if the user wants to try again bool retry = true; bool failed = false; while (retry == true) { // Clears the console for typing; Console_Reset.clear(); // Header Console.WriteLine("*Login Pagina*"); // Checks if there was a previous fail if (failed == true) { Console.WriteLine("!!!Gebruikersnaam of wachtwoord was incorrect, probeer het opnieuw!!!\n"); } // Ask for user input Console.WriteLine("Voer een gebruikersnaam in: "); string User_Name = Console.ReadLine(); Console.WriteLine("\nVoer een wachtwoord in: "); string Password = Console.ReadLine(); // Check if there was input string[] callValue = new string[] { User_Name, Password }; bool inputCheck = TextCheck(callValue); if (inputCheck == true) { Console.WriteLine("\nBeide velden moeten een input hebben.\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); } else { Console.WriteLine($"\nGeselecteerde gebruikersnaam: {User_Name} | Geselecteerde wachtwoord: {Password} \nOm in te loggen toets ENTER\nOm opniew te proberen, toets 'r'\nOm terug te gaan, toets 'x'"); } // Checked if user wants to retry or confirm username // string confirm = Console.ReadLine(); if (confirm == "R" || confirm == "r" || confirm == "'R'" || confirm == "'r'" && inputCheck == false) { retry = true; } else if (confirm == "X" || confirm == "x" || confirm == "'X'" || confirm == "'x'") { retry = false; } else { retry = false; int login_Result = this.Login(User_Name, Password); if (login_Result == -1) { failed = true; retry = true; } else { return(login_Result); } } } return(-1); }
public static void Run(bool permission = false) { // functie callen met een bool of er admin permissions zijn Eten eten = new Eten(); Drinken drinken = new Drinken(); bool whileLoop = true; while (whileLoop == true) { Console_Reset.clear(); Console.WriteLine("Welkom bij het eten en drinken menu.\n---------------------------------------------------\n\nTyp het nummer wat je wil doen en klik op enter:\n"); Console.WriteLine("1. Eten menu\n2. Eten filteren\n3. Drinken menu\n4. Drinken filteren\n"); if (permission == true) { //menu drinken eten voor admin Console.WriteLine("5. Clicks bekijken\n6. Eten Clicks verwijderen\n7. Drinken Clicks verwijderen\n\n8. Terug naar vorige pagina"); string nummer = Console.ReadLine(); // etenmenu if (nummer == "1") { Console_Reset.clear(); eten.EtenMenu(); } // eten filter if (nummer == "2") { Console_Reset.clear(); Console.WriteLine("Eten filteren:\n---------------------------------------------------\nTyp het nummer van wat je wilt doen:\n1. Op zoekterm filteren\n2. Allergie uitfilteren\n3. Terug naar vorige pagina"); string fNum = Console.ReadLine(); if (fNum == "1") { Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(eten.EtenFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "2") { Console.WriteLine("U kunt filteren uit [lactose, soja, pinda, amandel, hazelnoot, noten, gluten, tarwe]"); Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(eten.EtenAllergieFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "3") { FoodDrinkRun.Run(); } } // drinken menu if (nummer == "3") { Console_Reset.clear(); drinken.DrinkenMenu(); } // drinken filter if (nummer == "4") { Console_Reset.clear(); Console.WriteLine("Drinken filteren:\n---------------------------------------------------\nTyp het nummer van wat je wilt doen:\n1.Op zoekterm filteren\n2.Allergie uitfilteren\n3.Terug naar vorige pagina"); string fNum = Console.ReadLine(); if (fNum == "1") { Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(drinken.DrinkenFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "2") { Console.WriteLine("U kunt filteren uit [lactose, soja, pinda, amandel, hazelnoot, noten, gluten, tarwe]"); Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(drinken.DrinkenAllergieFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "3") { FoodDrinkRun.Run(); } } //Clicks bekijken if (nummer == "5") { Console_Reset.clear(); Console.WriteLine("Van welke item wil je de clicks bekijken?\n---------------------------------------------------\n1. Popcorn zoet\n2. Popcorn zout\n3. Popcorn karamel\n4. M&M's pinda\n5. M&M's chocola\n6. Chips naturel\n7. Chips paprika\n8. Doritos nacho cheese\n9. Haribo goudberen\n10. Skittles fruits\n\n11. Cola\n12. Pepsi\n13. Dr.Pepper\n14. Fanta Orange\n15. Spa rood\n16. Spa blauw\n17. Appelsap\n18. Rode wijn\n19. Witte wijn\n20. Heineken\n\nTyp het nummer van het product:"); string inp = Console.ReadLine(); try { if (Convert.ToInt32(inp) < 11) { eten.ViewClicks(Convert.ToInt32(inp)); Console.WriteLine("Toets enter om terug te gaan"); string inn = Console.ReadLine(); if (inn == "") { FoodDrinkRun.Run(); } } else { drinken.ViewClicks(Convert.ToInt32(inp) - 10); } } catch { Console.WriteLine("Je input is niet correct, weet je zeker dat je een nummer uit de lijst hebt getoetst?"); } } // clicks deleten eten if (nummer == "6") { Console_Reset.clear(); Console.WriteLine("Clicks verwijderen:\n---------------------------------------------------\nTyp het nummer van wat je wilt doen:\n1. Op index verwijderen\n2. Alle clicks van eten verwijderen\n3. Terug naar vorige pagina\n"); string num = Console.ReadLine(); // deleten op index if (num == "1") { Console.WriteLine("voer hier je index in"); int n = Convert.ToInt32(Console.ReadLine()); eten.ClearClicks(n); Console.WriteLine($"Alle clicks op index {n} zijn verwijderd."); } // alles deleten if (num == "2") { eten.ClearAllClicks(); Console.WriteLine("Alle clicks van het eten zijn verwijderd."); } if (num == "3") { FoodDrinkRun.Run(); } } // clicksdeleten drinken if (nummer == "7") { Console_Reset.clear(); Console.WriteLine("Clicks verwijderen:\n---------------------------------------------------\nTyp het nummer van wat je wilt doen:\n1. Op index verwijderen\n2. Alle clicks van eten verwijderen\n3. Terug naar vorige pagina\n"); string numm = Console.ReadLine(); // deleten op index if (numm == "1") { Console.WriteLine("voer hier je index in"); int n = Convert.ToInt32(Console.ReadLine()); drinken.ClearClicks(n); Console.WriteLine($"Alle clicks op index {n} zijn verwijderd."); } // alles deleten if (numm == "2") { drinken.ClearAllClicks(); Console.WriteLine("Alle clicks van het drinken zijn verwijderd."); } if (numm == "3") { FoodDrinkRun.Run(); } } if (nummer == "8") { whileLoop = false; } } // non admin opties else { Console.WriteLine("\n5. Terug naar vorige pagina"); string nummer = Console.ReadLine(); // eten menu if (nummer == "1") { Console_Reset.clear(); eten.EtenMenu(); } // eten filter if (nummer == "2") { Console_Reset.clear(); Console.WriteLine("Eten filteren:\n---------------------------------------------------\nTyp het nummer van wat je wilt doen:\n1. Op zoekterm filteren\n2. Allergie uitfilteren\n3. Terug naar vorige pagina"); string fNum = Console.ReadLine(); if (fNum == "1") { Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(eten.EtenFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "2") { Console.WriteLine("U kunt filteren uit [lactose, soja, pinda, amandel, hazelnoot, noten, gluten, tarwe]"); Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(eten.EtenAllergieFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "3") { FoodDrinkRun.Run(); } } // drinken menu if (nummer == "3") { Console_Reset.clear(); drinken.DrinkenMenu(); } // drinken filter if (nummer == "4") { Console_Reset.clear(); Console.WriteLine("Drinken filteren:\n---------------------------------------------------\nTyp het nummer van wat je wilt doen:\n1.Op zoekterm filteren\n2.Allergie uitfilteren\n3.Terug naar vorige pagina"); string fNum = Console.ReadLine(); if (fNum == "1") { Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(drinken.DrinkenFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "2") { Console.WriteLine("U kunt filteren uit [lactose, soja, pinda, amandel, hazelnoot, noten, gluten, tarwe]"); Console.WriteLine("Typ hier je zoekterm:"); string strInp = Console.ReadLine(); Console.WriteLine(drinken.DrinkenAllergieFilter(strInp)); Console.WriteLine("Toets enter om terug te gaan"); string inp = Console.ReadLine(); if (inp == "") { FoodDrinkRun.Run(); } } else if (fNum == "3") { FoodDrinkRun.Run(); } } if (nummer == "5") { break; } } } }
// fooddisplay public void EtenMenu() { Console_Reset.clear(); Console.WriteLine("Eten Menu:\n---------------------------------------------------\n1. Popcorn zoet - \t\tva 2,99\n2. Popcorn zout - \t\tva 2,49\n3. Popcorn karamel - \t\tva 2,49\n4. M&M's pinda - \t\t3,99\n5. M&M's chocola - \t\t4,49\n6. Chips naturel - \t\tva 2,99\n7. Chips paprika - \t\tva 2,99\n8. Doritos nacho cheese - \t3,99\n9. Haribo goudberen - \t\t3,49\n10. Skittles fruits - \t\t3,99\n\n11. Terug naar de vorige pagina\n"); Console.WriteLine("\nTyp het nummer van de item die je wilt bekijken en klik op enter:"); // leest input command van de console string input = Console.ReadLine(); Console_Reset.clear(); try // in t geval dat de input te hoog is of niet convertible is tot int { int num = Convert.ToInt32(input); if (num <= 10) { // print naam item Console.WriteLine($"{etenDataList[num - 1].naam}\n---------------------------------------------------\n"); // print inhoud item string inh = ""; for (int i = 0; i < (etenDataList[num - 1].inhoud).Length; i++) { inh += etenDataList[num - 1].inhoud[i] + ", "; } Console.WriteLine("inhoud: " + inh); // print prijs item string pri = ""; for (int i = 0; i < (etenDataList[num - 1].prijs).Length; i++) { pri += etenDataList[num - 1].prijs[i] + ", "; } Console.WriteLine("prijs: " + pri + "\n"); // print voedingswaarde Console.WriteLine($"{etenDataList[num - 1].voedingswaarde}\n"); // print allergenen string al = ""; for (int i = 0; i < (etenDataList[num - 1].allergenen).Length; i++) { al += etenDataList[num - 1].allergenen[i] + ", "; } Console.WriteLine("allergenen: " + al + "\n"); UpdateClicks(num); /// input na de display Console.WriteLine("\n1. Terug naar het eten & drinken menu"); input = Console.ReadLine(); Console_Reset.clear(); if (input == "1" || input == "") { EtenMenu(); } } else if (num == 11) { FoodDrinkRun.Run(); } } catch (Exception) { // input is niet convertible naar int of input is te hoog nummer Console_Reset.clear(); Console.WriteLine("De input is niet juist, probeer het nogeens\n"); //EtenMenu(); } Console_Reset.clear(); }
static void Main(string[] args) { Account acc = new Account(); Kalender kalender = new Kalender(); bool retry = true; int user = -1; while (retry == true) { if (user == -1) // If there is no login (no user selected) { Console_Reset.clear(); Console.WriteLine("Welkom bij Cinematrix\nHoofd menu:\n---------------------------------------------------\n"); Console.WriteLine("1. Inloggen.\n2. Account creeeren.\n3. Bekijk kalender\n4. Bekijk catalogus.\n5. Eten / Drinken menu.\nOm programma te verlaten, enter 'X'"); string choose = Console.ReadLine(); if (choose == "1") { user = acc.TextLogin(); } else if (choose == "2") { acc.TextCreateUser(); } else if (choose == "3") { kalender.Navigation(); } else if (choose == "4") { MovieDetail.Navigation(); } else if (choose == "5") { FoodDrinkRun.Run(); } else { retry = false; } } else if (user > -1 && acc.accountDataList[user].Permission == true) // If there is logged in (admin) { Console_Reset.clear(); // Print the username with welcome text string username = acc.ReturnUsername(user); Console.WriteLine("Administrator: " + username + "\n"); Console.WriteLine("1. Account overzicht.\n2. Admin menu.\n3. Bekijk kalender\n4. Bekijk catalogus.\n5. Mijn reserveringen.\n6. Eten / Drinken menu.\n7. Uitloggen.\nOm programma te verlaten, enter 'X'"); string choose = Console.ReadLine(); if (choose == "1") { bool returnBool = acc.AccountView(user); if (returnBool == true) { user = -1; } } else if (choose == "2") { user = acc.AdminAccountViewer(acc.ReturnUsername(user)); } else if (choose == "3") { kalender.Navigation(); } else if (choose == "4") { MovieDetail.Navigation(user); } else if (choose == "5") { Reservering reservering = new Reservering(); reservering.ReservationUserPrint(user); } else if (choose == "6") { FoodDrinkRun.Run(true); } else if (choose == "7") { user = -1; } else if (choose == "x" || choose == "X") { retry = false; } } else // If there is logged in (user) { Console_Reset.clear(); // Print the username with welcome text string username = acc.ReturnUsername(user); Console.WriteLine("Welkom " + username + "\n"); Console.WriteLine("1. Account overzicht.\n2. Bekijk catalogus.\n3. Bekijk kalender\n4. Mijn reserveringen.\n5. Eten / Drinken menu.\n6. Uitloggen.\nOm programma te verlaten, enter 'X'"); string choose = Console.ReadLine(); if (choose == "1") { bool returnBool = acc.AccountView(user); if (returnBool == true) { user = -1; } } else if (choose == "2") { MovieDetail.Navigation(user); } else if (choose == "3") { kalender.Navigation(); } else if (choose == "4") { Reservering reservering = new Reservering(); reservering.ReservationUserPrint(user); } else if (choose == "5") { FoodDrinkRun.Run(); } else if (choose == "6") { user = -1; } else if (choose == "x" || choose == "X") { retry = false; } } } }
// method to view clicks of certain index public void ViewClicks(int num) { Console_Reset.clear(); Console.WriteLine("Clicks op geselecteerde item is: " + drinkenDataList[num - 1].clicks); }