From 5f1ea0ee335a73edf53939b87218a34e93fe4de9 Mon Sep 17 00:00:00 2001 From: sowgro Date: Thu, 9 Oct 2025 21:03:25 -0400 Subject: Menu cleanup - pass 1 --- .../controller/userinput/menus/CourseSearch.java | 32 +++++++++++----------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'src/main/java/design/controller/userinput/menus/CourseSearch.java') diff --git a/src/main/java/design/controller/userinput/menus/CourseSearch.java b/src/main/java/design/controller/userinput/menus/CourseSearch.java index 019965c..65d4b3e 100644 --- a/src/main/java/design/controller/userinput/menus/CourseSearch.java +++ b/src/main/java/design/controller/userinput/menus/CourseSearch.java @@ -27,22 +27,6 @@ public class CourseSearch extends Menu { return "select course"; } - /* - * Prompt for input and search. - */ - public void search() { - System.out.print("Enter search term (blank for all): "); - Scanner sc = new Scanner(System.in); - String searchTerm = sc.nextLine(); - - // search and present - query.search(searchTerm); - this.present(); - - // reset the query after we're done. - query.reset(); - } - /* * Display the results of our search. */ @@ -64,6 +48,22 @@ public class CourseSearch extends Menu { return l; } + /* + * Prompt for input and search. + */ + @Override + public void present() { + System.out.print("Enter search term (blank for all): "); + Scanner sc = new Scanner(System.in); + String searchTerm = sc.nextLine(); + + // search and present + query.search(searchTerm); + super.present(); + + // reset the query after we're done. + query.reset(); + } // recursively go through tree structure of courselist to make menu options. // this is all for displaying the menu options, not the actual sorting. -- cgit v1.2.3 From fac7fb71260b901a893b5b90aae23e86d6c23550 Mon Sep 17 00:00:00 2001 From: sowgro Date: Sat, 11 Oct 2025 22:24:54 -0400 Subject: Menu cleanup - pass 2 --- src/main/java/design/controller/userinput/menus/CourseSearch.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/main/java/design/controller/userinput/menus/CourseSearch.java') diff --git a/src/main/java/design/controller/userinput/menus/CourseSearch.java b/src/main/java/design/controller/userinput/menus/CourseSearch.java index 65d4b3e..0d5efa6 100644 --- a/src/main/java/design/controller/userinput/menus/CourseSearch.java +++ b/src/main/java/design/controller/userinput/menus/CourseSearch.java @@ -19,8 +19,8 @@ import java.util.Scanner; * The actual SEARCH feature of course searching. */ public class CourseSearch extends Menu { - CurrentSearchQuery query = CurrentSearchQuery.INSTANCE; - PersonalDatabase GolferDB = PersonalDatabase.INSTANCE; + private final CurrentSearchQuery query = CurrentSearchQuery.INSTANCE; + private final PersonalDatabase personalDB = PersonalDatabase.INSTANCE; @Override public String getTitle() { @@ -85,7 +85,7 @@ public class CourseSearch extends Menu { // add the course, try to save to DB. currentGolfer.addCourse(c); try { - GolferDB.updateGolfer(currentGolfer); + personalDB.updateGolfer(currentGolfer); } catch (IOException e) { e.printStackTrace(); // not sure if we should format this prettier for the user if the DB fails. } -- cgit v1.2.3 From ab8fc9a51e594d19a0fa020bc7ae60efe5824c42 Mon Sep 17 00:00:00 2001 From: sowgro Date: Sun, 12 Oct 2025 00:19:02 -0400 Subject: add datetime override --- .../design/controller/userinput/menus/CourseSearch.java | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) (limited to 'src/main/java/design/controller/userinput/menus/CourseSearch.java') diff --git a/src/main/java/design/controller/userinput/menus/CourseSearch.java b/src/main/java/design/controller/userinput/menus/CourseSearch.java index 0d5efa6..9d67b51 100644 --- a/src/main/java/design/controller/userinput/menus/CourseSearch.java +++ b/src/main/java/design/controller/userinput/menus/CourseSearch.java @@ -21,6 +21,7 @@ import java.util.Scanner; public class CourseSearch extends Menu { private final CurrentSearchQuery query = CurrentSearchQuery.INSTANCE; private final PersonalDatabase personalDB = PersonalDatabase.INSTANCE; + private final Golfer golfer = Session.getCurrentGolfer(); @Override public String getTitle() { @@ -74,18 +75,10 @@ public class CourseSearch extends Menu { var name = String.format("%s, %s, Difficulty: %s, %s holes, %s total par", c.getName(), c.getLocation(), c.getDifficultyRating(), c.getHoleCount(), c.getTotalPar()); menuOptions.add(new MenuOption(name, () -> { - Golfer currentGolfer = Session.getCurrentGolfer(); - if (currentGolfer == null) { - // if we aren't logged in, notify the user. - System.out.println("\n\n !!! log into a golfer account to add courses to your profile. !!! \n\n"); - new MainMenu().present(); - return; - } - // add the course, try to save to DB. - currentGolfer.addCourse(c); + golfer.addCourse(c); try { - personalDB.updateGolfer(currentGolfer); + personalDB.updateGolfer(golfer); } catch (IOException e) { e.printStackTrace(); // not sure if we should format this prettier for the user if the DB fails. } -- cgit v1.2.3