diff options
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/controller/userinput/menus/SelectUser.java | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/main/java/design/controller/userinput/menus/SelectUser.java b/src/main/java/design/controller/userinput/menus/SelectUser.java index ffae559..e8b3874 100644 --- a/src/main/java/design/controller/userinput/menus/SelectUser.java +++ b/src/main/java/design/controller/userinput/menus/SelectUser.java @@ -31,24 +31,10 @@ public class SelectUser extends Menu { var opts = new ArrayList<MenuOption>(); for (Golfer i : personalDB.getGolfers()) { - MenuOption menuOption = new MenuOption(i.getUsername(), () -> { - System.out.print("Enter password: "); - var password = scanner.nextLine(); - if (i.checkPassword(password)) { - // Sets user in Session too - Session.setCurrentGolfer(i); - System.out.printf("Loaded user: %s%n", i.getUsername()); - doAfter.onAction(); - } else { - System.out.println("Incorrect password. "); - this.present(); - } - }); - opts.add(menuOption); + opts.add(new MenuOption(i.toString(), () -> login(i))); } opts.add(new MenuOption("<create>", () -> { - System.out.print("Enter username: "); var username = scanner.nextLine(); @@ -68,4 +54,18 @@ public class SelectUser extends Menu { return opts; } + + private void login(Golfer g) { + System.out.print("Enter password: "); + var password = scanner.nextLine(); + if (g.checkPassword(password)) { + // Sets user in Session too + Session.setCurrentGolfer(g); + System.out.printf("Loaded user: %s%n", g); + doAfter.onAction(); + } else { + System.out.println("Incorrect password. "); + this.present(); + } + } } |
