public bool ChangeSchedule(LiveTraining liveTraining, int days) { if (days <= 0) { return(false); } liveTraining.NextSession = liveTraining.NextSession.AddDays(days); return(true); }
static void Main(string[] args) { PopulateDb(); while (true) { if (currentUser == null) { // I) prvo da izbere dali saka da se LOGIRA ili REGISTRIRA //##################################################### //Enter a number to choose one of the following: // 1) Log In // 2) Register int userChoice = uiSrvc.LogInMenu(); //ako odbral da se logira LOGIN //______________________________ if (userChoice == 1) { //treba da izbere vo koja uloga ke se logira int userRoleChoice = uiSrvc.RoleMenu(); UserRole role = (UserRole)userRoleChoice; Console.Clear(); //da vnese username i password za da se logira Console.WriteLine("Enter username:"******"Enter password:"******"Enter first name:"); newUser.FirstName = Console.ReadLine(); Console.WriteLine("Enter last name:"); newUser.LastName = Console.ReadLine(); Console.WriteLine("Enter username:"******"Enter password:"******"Account": // mu se otvara sledniov izbor // 1) Change Info, // 2) Check Subscription, // 3) Change password int accountUserChoice = uiSrvc.AccountMenu(currentUser.Role); Console.Clear(); // Change Info if (accountUserChoice == 1) { Console.WriteLine("Enter new first name:"); string newFirstName = Console.ReadLine(); Console.WriteLine("Enter new last name:"); string newLastName = Console.ReadLine(); switch (currentUser.Role) { case UserRole.Standard: standardUserSrvc.ChangeInfo(currentUser.Id, newFirstName, newLastName); break; case UserRole.Premium: premiumUserSrvc.ChangeInfo(currentUser.Id, newFirstName, newLastName); break; case UserRole.Trainer: trainerUserSrvc.ChangeInfo(currentUser.Id, newFirstName, newLastName); break; } } // Check Subscription else if (accountUserChoice == 2) { Console.WriteLine($"Your subscription is {currentUser.Role}"); Console.ReadLine(); } // Change password else { Console.WriteLine("Enter old password"); string oldPassword = Console.ReadLine(); Console.WriteLine("Enter new password"); string newPassword = Console.ReadLine(); switch (currentUser.Role) { case UserRole.Standard: standardUserSrvc.ChangePassword(currentUser.Id, oldPassword, newPassword); break; case UserRole.Premium: premiumUserSrvc.ChangePassword(currentUser.Id, oldPassword, newPassword); break; case UserRole.Trainer: trainerUserSrvc.ChangePassword(currentUser.Id, oldPassword, newPassword); break; } } break; case "Log Out": currentUser = null; break; case "Train": //mu se pojavuva menito so izbor: // 1) Video // 2) Live int userTrainingsChoice = 1; if (currentUser.Role == UserRole.Premium) { userTrainingsChoice = uiSrvc.TrainingsMenu(); } // -Video trainings: if (userTrainingsChoice == 1) { int videoTreiningItem = uiSrvc.TrainingMenuItems(videoTrainings.GetAllTrainings()); VideoTraining videoTraining = videoTrainings.GetAllTrainings()[videoTreiningItem - 1]; Console.WriteLine(videoTraining.Title); Console.WriteLine($"Link: {videoTraining.Link}"); Console.WriteLine($"Rating: {videoTraining.CheckRating()}"); Console.WriteLine($"Time: {videoTraining.Time} minutes."); Console.ReadLine(); } // -Live trainings: if (userTrainingsChoice == 2) { int liveTrainingItem = uiSrvc.TrainingMenuItems(liveTrainings.GetAllTrainings()); LiveTraining liveTraining = liveTrainings.GetAllTrainings()[liveTrainingItem - 1]; Console.WriteLine(liveTraining.Title); Console.WriteLine($"The training starts at: {liveTraining.NextSession}"); Console.WriteLine($"Rating: {liveTraining.Rating}"); Console.WriteLine($"Time: {liveTraining.Time} minutes."); Console.ReadLine(); } break; case "Upgrade to premium": uiSrvc.UpgradeToPremium(); break; case "Reschedule training": List <LiveTraining> trainings = liveTrainings.GetAllTrainings().Where(x => x.Trainer.Id == currentUser.Id).ToList(); if (trainings.Count == 0) { Console.WriteLine("No trainings!"); Console.ReadLine(); } else { int userLiveTrainingChoice = uiSrvc.ChooseEntitiesMenu(trainings); Console.WriteLine("How many days wpuld you like to reschedule the training?"); int days = ValidationHelper.ValidateNumber(Console.ReadLine(), 100); trainerUserSrvc.GetUserById(currentUser.Id).ChangeSchedule(trainings[userLiveTrainingChoice], days); Console.WriteLine("Schedule changed!"); Console.ReadLine(); } break; default: break; } } }
static void Main(string[] args) { Seed(); while (true) { Console.Clear(); int loginChoice = _uiService.LogInMenu(); Console.Clear(); if (loginChoice == 1) { int roleChoice = _uiService.RoleMenu(); UserRole role = (UserRole)roleChoice; Console.Clear(); Console.WriteLine("Enter username:"******"Enter password:"******"Enter first name:"); newUser.FirstName = Console.ReadLine(); Console.WriteLine("Enter last name:"); newUser.LastName = Console.ReadLine(); Console.WriteLine("Enter username:"******"Enter password:"******"Link: {training.Link}"); Console.WriteLine($"Rating: {training.CheckRating()}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } if (trainChoice == 2) { int trainingItem = _uiService.TrainMenuItems(_liveTrainings.GetTrainings()); LiveTraining training = _liveTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"THE TRAINING STARTS AT: {training.NextSession}"); Console.WriteLine($"Rating: {training}"); Console.WriteLine($"Time: {training} minutes"); } break; case MenuItemsConstants.UpgradeToPremium: _uiService.UpgradeToPremium(); break; case MenuItemsConstants.RescheduelTraining: var trainings = _liveTrainings .GetTrainings() .Where(x => x.Trainer.Id == _currentUser.Id) .ToList(); if (trainings.Count == 0) { Console.WriteLine("No Trainings!"); Console.ReadLine(); } else { int trainingChoice = _uiService.ChooseEntiiesMenu(trainings); Console.WriteLine("How many days do you want to reschedule the training: "); int days = ValidationHelper.ValidateNumber(Console.ReadLine(), 100); _trainerUserSrvc.GetById(_currentUser.Id) .ChangeSchedule(trainings[trainingChoice - 1], days); Console.WriteLine("Schedule changed!"); Console.ReadLine(); } break; case MenuItemsConstants.Account: break; case MenuItemsConstants.LogOut: _currentUser = null; break; default: break; } }
static void Main(string[] args) { //call seed when you don't work with file db Seed(); //List<VideoTraining> videoTrainingsDb = _videoTrainingService.GetAllTrainings(); //Trainer trainerBill = _trainerService.LogIn("bill", "bill"); //Trainer trainerPaul = _trainerService.LogIn("paul.paulsky", "paul.paulsky3"); //_trainerService.ChangePassword(trainerPaul.Id, "paul.paulsky3", "paul.paulsky3333"); //Trainer paulDb = _trainerService.ChangeInfo(trainerPaul.Id, "PaulUpdated", "Paulsky2"); //int hashedString = "test123".GetHashCode(); //int hashedString2 = "test123".GetHashCode(); int option = _uiService.LogInMenu(); Console.Clear(); if (option == 1) //login { int roleChoice = _uiService.RoleMenu(); Console.WriteLine("Enter username"); string username = Console.ReadLine(); if (string.IsNullOrEmpty(username)) { throw new Exception("You must enter username"); } Console.WriteLine("Enter password"); string password = Console.ReadLine(); if (string.IsNullOrEmpty(password)) { throw new Exception("You must enter password"); } UserRole role = (UserRole)roleChoice; switch (role) { case UserRole.Standard: _currentUser = _standardUserService.LogIn(username, password); break; case UserRole.Premium: _currentUser = _premiumUserService.LogIn(username, password); break; case UserRole.Trainer: _currentUser = _trainerService.LogIn(username, password); break; } } else { StandardUser standardUser = _uiService.FillNewUserData(); _currentUser = _standardUserService.Register(standardUser); } int mainMenuOption = _uiService.MainMenu(_currentUser.Role); string menuItem = _uiService.MenuItems[mainMenuOption - 1]; switch (menuItem) { case "Train": int trainOption = 1; if (_currentUser.Role == UserRole.Premium) { trainOption = _uiService.TrainMenu(); } if (trainOption == 1) //video { List <VideoTraining> videoTrainings = _videoTrainingService.GetAllTrainings(); int trainingOption = _uiService.TrainMenuItems(videoTrainings); VideoTraining videoTraining = videoTrainings[trainingOption - 1]; Console.WriteLine("You chose:"); Console.WriteLine($"{videoTraining.Title} - {videoTraining.Time} minutes"); Console.ReadLine(); } else { List <LiveTraining> liveTrainings = _liveTrainingService.GetAllTrainings(); int trainingChoice = _uiService.TrainMenuItems(liveTrainings); LiveTraining liveTraining = liveTrainings[trainingChoice - 1]; Console.WriteLine(liveTraining.Title); Console.WriteLine($"{liveTraining.Time} - Trainer: {liveTraining.Trainer.FirstName}"); Console.ReadLine(); } break; case "Upgrade to Premium": _uiService.UpgradeToPremiumInfo(); _standardUserService.RemoveById(_currentUser.Id); _currentUser = _premiumUserService.Register(new PremiumUser() { FirstName = _currentUser.FirstName, LastName = _currentUser.LastName, Username = _currentUser.Username, Password = _currentUser.Password }); break; case "Reschedule training": List <LiveTraining> liveTrainingsForCurrentUser = _liveTrainingService.GetAllTrainings() .Where(x => x.Trainer.Id == _currentUser.Id).ToList(); if (liveTrainingsForCurrentUser.Count == 0) { Console.WriteLine("There are no live trainings!"); } else { int trainingItem = _uiService.TrainMenuItems(liveTrainingsForCurrentUser); Console.WriteLine("Enter number of days"); int days = ValidationHelper.ValidateNumber(Console.ReadLine(), 10); //try boxing and unboxing of current user to cast to Trainer _trainerService.GetById(_currentUser.Id) .Reschedule(liveTrainingsForCurrentUser[trainingItem - 1], days); } break; case "Log Out": _currentUser = null; break; case "Account": int accountChoice = _uiService.AccountMenu(); if (accountChoice == 1) { Console.WriteLine("Enter first name:"); string firstName = Console.ReadLine(); Console.WriteLine("Enter last name:"); string lastName = Console.ReadLine(); switch (_currentUser.Role) { case UserRole.Standard: _standardUserService.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Premium: _premiumUserService.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Trainer: _trainerService.ChangeInfo(_currentUser.Id, firstName, lastName); break; } } else { Console.WriteLine("Enter old password:"******"Enter new password:"); string newPassword = Console.ReadLine(); switch (_currentUser.Role) { case UserRole.Standard: _standardUserService.ChangePassword(_currentUser.Id, oldPassword, newPassword); break; case UserRole.Premium: _premiumUserService.ChangePassword(_currentUser.Id, oldPassword, newPassword); break; case UserRole.Trainer: _trainerService.ChangePassword(_currentUser.Id, oldPassword, newPassword); break; } } break; } Console.ReadLine(); }
static void Main(string[] args) { Seed(); while (true) { if (_currentUser == null) { int loginChoice = _uiService.LogInMenu(); if (loginChoice == 1) { int roleChoice = _uiService.RoleMenu(); UserRole role = (UserRole)roleChoice; Console.Clear(); Console.WriteLine("Enter username:"******"Enter password:"******"Enter first name:"); newUser.FirstName = Console.ReadLine(); Console.WriteLine("Enter last name:"); newUser.LastName = Console.ReadLine(); Console.WriteLine("Enter username:"******"Enter password:"******"Train": int trainChoice = 1; if (_currentUser.Role == UserRole.Premium) { trainChoice = _uiService.TrainMenu(); } if (trainChoice == 1) { int trainingItem = _uiService.TrainMenuItems(_videoTrainings.GetTrainings()); VideoTraining training = _videoTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"Link: {training.Link}"); Console.WriteLine($"Raiting: {training.CheckRating()}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } if (trainChoice == 2) { int trainingItem = _uiService.TrainMenuItems(_liveTrainings.GetTrainings()); LiveTraining training = _liveTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"THE TRAINING STARTS AT: {training.NextSession}"); Console.WriteLine($"Raiting: {training.CheckRating()}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } break; case "Upgrade to Premium": _uiService.UpgradeToPremium(); break; case "Reschedule Training": List <LiveTraining> trainings = _liveTrainings.GetTrainings().Where(x => x.Trainer.Id == _currentUser.Id).ToList(); if (trainings.Count == 0) { Console.WriteLine("No Trainings!"); Console.ReadLine(); } else { int trainingChoice = _uiService.ChooseEntitiesMenu(trainings); Console.WriteLine("How many days do you want to reschedule the training:"); int days = ValidationHelper.ValidateNumber(Console.ReadLine(), 100); _trainerUserSrvc.GetById(_currentUser.Id).ChangeSchedule(trainings[trainingChoice - 1], days); Console.WriteLine("Schedule changed!"); Console.ReadLine(); } break; case "Account": int accountChoice = _uiService.AccountMenu(_currentUser.Role); if (accountChoice == 1) { //Change Info Console.WriteLine("Enter new First Name:"); string firstName = Console.ReadLine(); Console.WriteLine("Enter new Last Name:"); string lastName = Console.ReadLine(); switch (_currentUser.Role) { case UserRole.Standard: _standardUserSrvc.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Premium: _premiumUserSrvc.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Trainer: _trainerUserSrvc.ChangeInfo(_currentUser.Id, firstName, lastName); break; } } else if (accountChoice == 2) { //CheckSubscription Console.WriteLine($"Your subscription is : {_currentUser.Role}"); Console.ReadLine(); } else if (accountChoice == 3) { // Change Password Console.WriteLine("Enter old password:"******"Enter new password:"******"Log Out": _currentUser = null; break; default: break; } } }
static void Main(string[] args) { // Calling the seed method in order to fill in the database with inital data if it is empty Seed(); while (true) { // If it is null, it means that nobody is logged in // We can generate the menu for log in if (_currentUser == null) { // Menu for log in or register // Program -> Log in Menu method -> Generate a new menu method -> Validate a number // Validate a number -> Generate a new menu mehod -> Log in Menu method -> Program int loginChoice = _uiSrvc.LogInMenu(); // This if checks if the number the user entered is 1. If it is give them log in menu if (loginChoice == 1) { // Menu for the user role if they want to log in int roleChoice = _uiSrvc.RoleMenu(); // We map the user choice of 1 2 or 3 to the enum so we can have it as an enum UserRole role = (UserRole)roleChoice; // UserRole brokenRole = UserRole.1; // This will not work // UserRole standard = (UserRole)1; // This will work and will get the Standard enum since it is number 1 in the enum Console.Clear(); // Give the log in menu if they want to log in Console.WriteLine("Enter username:"******"Enter password:"******"Enter first name:"); newUser.FirstName = Console.ReadLine(); Console.WriteLine("Enter last name:"); newUser.LastName = Console.ReadLine(); Console.WriteLine("Enter username:"******"Enter password:"******"Train": // We have 2 kinds of training: Video and Live // But standard users only have access to Video and not Live, while Premium have access to both // Because this is the case we set the default choice to 1, which corelates to Video Trainings // IF the user is premium we give them a choice to pick Live or Video and then change the choice accordingly int trainChoice = 1; if (_currentUser.Role == UserRole.Premium) { trainChoice = _uiSrvc.TrainMenu(); } // Video trainings if (trainChoice == 1) { int trainingItem = _uiSrvc.TrainMenuItems(_videoTrainings.GetTrainings()); VideoTraining training = _videoTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"Link: {training.Link}"); Console.WriteLine($"Raiting: {training.CheckRating()}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } // Live trainings if (trainChoice == 2) { int trainingItem = _uiSrvc.TrainMenuItems(_liveTrainings.GetTrainings()); LiveTraining training = _liveTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"THE TRAINING STARTS AT: {training.NextSession}"); Console.WriteLine($"Raiting: {training.CheckRating()}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } break; case "Upgrade to Premium": _uiSrvc.UpgradeToPremium(); break; case "Reschedule training": List <LiveTraining> trainings = _liveTrainings.GetTrainings().Where(x => x.Trainer.Id == _currentUser.Id).ToList(); if (trainings.Count == 0) { Console.WriteLine("No Trainings!"); Console.ReadLine(); } else { int trainingChoice = _uiSrvc.ChooseEntiiesMenu(trainings); Console.WriteLine("How many days do you want to reschedule the training:"); int days = ValidationHelper.ValidateNumber(Console.ReadLine(), 100); _trainerUserSrvc.GetUserById(_currentUser.Id).ChangeSchedule(trainings[trainingChoice - 1], days); Console.WriteLine("Schedule changed!"); Console.ReadLine(); } break; case "Account": int accountChoice = _uiSrvc.AccountMenu(_currentUser.Role); Console.Clear(); if (accountChoice == 1) { // Change Info Console.WriteLine("Enter new First Name:"); string firstName = Console.ReadLine(); Console.WriteLine("Enter new Last Name:"); string lastName = Console.ReadLine(); switch (_currentUser.Role) { case UserRole.Standard: _standardUserSrvc.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Premium: _premiumUserSrvc.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Trainer: _trainerUserSrvc.ChangeInfo(_currentUser.Id, firstName, lastName); break; } } else if (accountChoice == 2) { // Check Subscription Console.WriteLine($"Your subscription is: {_currentUser.Role}"); Console.ReadLine(); } else if (accountChoice == 3) { // Change info Console.WriteLine("Enter old password:"******"Enter new password:"******"Log Out": _currentUser = null; break; default: break; } } }
static void Main(string[] args) { Seed(); while (true) { if (_currentUser == null) { int loginChoice = _uiService.LogInMenu(); if (loginChoice == 1) { int roleChoice = _uiService.RoleMenu(); UserRole role = (UserRole)roleChoice; Console.Clear(); Console.WriteLine("Enter username:"******"Enter password:"******"Enter first name:"); newUser.FirstName = Console.ReadLine(); Console.WriteLine("Enter last name:"); newUser.LastName = Console.ReadLine(); Console.WriteLine("Enter username:"******"Enter password:"******"Train": int trainChoice = 1; if (_currentUser.Role == UserRole.Premium) { trainChoice = _uiService.TrainMenu(); } if (trainChoice == 1) { int trainingItem = _uiService.TrainMenuItems(_videoTrainings.GetTrainings()); VideoTraining training = _videoTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"Link: {training.Link}"); Console.WriteLine($"Raiting: {training.Rating}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } if (trainChoice == 2) { int trainingItem = _uiService.TrainMenuItems(_liveTrainings.GetTrainings()); LiveTraining training = _liveTrainings.GetTrainings()[trainingItem - 1]; Console.WriteLine(training.Title); Console.WriteLine($"THE TRAINING STARTS AT: {training.NextSession}"); Console.WriteLine($"Raiting: {training.Rating}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } break; case "Upgrade to Premium": break; case "Reschedule training": break; case "Account": break; case "Log Out": _currentUser = null; break; default: break; } } }
static void Main(string[] args) { Seed(); while (true) { //login/register if (_currentUser == null) { int loginChoice = _uiService.LogInMenu(); //login if (loginChoice == 1) { int roleChoice = _uiService.RoleMenu(); UserRole role = (UserRole)roleChoice; Console.Clear(); Console.WriteLine("Enter Username:"******"Enter Password:"******"Enter First Name:"); newUser.FirstName = Console.ReadLine(); Console.WriteLine("Enter Last Name:"); newUser.LastName = Console.ReadLine(); Console.WriteLine("Enter Username:"******"Enter Password:"******"Train": //int trainChoice; //if (_currentUser.Role == UserRole.Premium) //{ // trainChoice = _uiService.TrainMenu(); //} //else //{ // trainChoice = 1; //} int trainChoice = _currentUser.Role == UserRole.Premium ? _uiService.TrainMenu() : 1; //video training if (trainChoice == 1) { int trainingItem = _uiService.TrainMenuItems(_videoTrainingService.GetTrainings()); VideoTraining training = _videoTrainingService.GetTrainingByIndex(trainingItem - 1); Console.WriteLine(training.Title); Console.WriteLine($"Link: {training.Link}"); Console.WriteLine($"Raiting: {training.Rating}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } //live training if (trainChoice == 2) { int trainingItem = _uiService.TrainMenuItems(_liveTrainingService.GetTrainings()); LiveTraining training = _liveTrainingService.GetTrainingByIndex(trainingItem - 1); Console.WriteLine(training.Title); Console.WriteLine($"The training starts at: {training.NextSession}"); Console.WriteLine($"Raiting: {training.Rating}"); Console.WriteLine($"Time: {training.Time} minutes"); Console.ReadLine(); } break; case "Upgrade to premium": //suggestion for implementing real UpgradeToPremium functionality // logout // keep the currently logged user in a variable // find and delete that user from standardUserService // regsiter new premium user in the premiumUserService with the same data // log in the newly registered user Console.Clear(); Console.WriteLine("Do you really want to upgrade to premium? It will cost you 15$."); Console.WriteLine("Press enter to upgrade!"); Console.ReadLine(); User tempCurrentUser = _currentUser; _currentUser = null; _standardUserService.DeleteById(tempCurrentUser.Id); PremiumUser newUser = _premiumUserService.MapToPremiumUser(tempCurrentUser); User user = _premiumUserService.Register(newUser); _currentUser = user; Console.WriteLine("Createing new premium sibscription, please wait ...."); Thread.Sleep(2000); Console.WriteLine($"You have succesfully buy a premium subscription. Welcome back {_currentUser.Username}."); Thread.Sleep(2000); Console.ReadLine(); break; case "Reschedule training": List <LiveTraining> trainings = _liveTrainingService.GetTrainings().Where(training => training.Trainer.Id == _currentUser.Id).ToList(); if (trainings.Count == 0) { Console.WriteLine("No available trainings."); Console.ReadLine(); } else { int trainingChoice = _uiService.ChooseEntitiesMenu(trainings); Console.WriteLine("How many days fo you want to reschedule the training: "); int days = ValidationHelper.ValidateNumber(Console.ReadLine(), 10); _trainerUserService.GetById(_currentUser.Id).ChangeSchedule(trainings[trainingChoice - 1], days); Console.WriteLine("Schadule changed!"); Console.ReadLine(); } break; case "Account": int accountChoice = _uiService.AccountMenu(); Console.Clear(); if (accountChoice == 1) { //Change Info Console.WriteLine("Enter First Name:"); string firstName = Console.ReadLine(); Console.WriteLine("Enter Last Name:"); string lastName = Console.ReadLine(); switch (_currentUser.Role) { case UserRole.Standard: _standardUserService.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Premium: _premiumUserService.ChangeInfo(_currentUser.Id, firstName, lastName); break; case UserRole.Trainer: _trainerUserService.ChangeInfo(_currentUser.Id, firstName, lastName); break; default: break; } } else if (accountChoice == 2) { //Check Subscription Console.WriteLine($"Your subscription is {_currentUser.Role}"); Console.ReadLine(); } else if (accountChoice == 3) { //Change Password Console.WriteLine("Enter Old Password:"******"Enter New Password:"******"Log Out": _currentUser = null; break; default: break; } } }