From 7031bc7b07cb5906683bd9072eac0ea675d86b1a Mon Sep 17 00:00:00 2001 From: The Magician Date: Wed, 12 Jun 2024 21:33:50 +0100 Subject: [PATCH] Unify into single REPL --- sevenkeys/cli/mainui.go | 27 +++++++++++++++++++++++---- sevenkeys/cli/stashui.go | 38 -------------------------------------- 2 files changed, 23 insertions(+), 42 deletions(-) diff --git a/sevenkeys/cli/mainui.go b/sevenkeys/cli/mainui.go index dd0c85d..c51a887 100644 --- a/sevenkeys/cli/mainui.go +++ b/sevenkeys/cli/mainui.go @@ -2,23 +2,42 @@ package cli import ( "database/sql" + "errors" "fmt" + "os/exec" + "sevenkeys/logic" ) func MainCliLoop(db *sql.DB) { var command string for { + ShowSplashScreen() + ShowStorageInfo() + command = GetStringResponse("SEVENKEYS $") switch command { case "quit": return - case "splash": - ShowSplashScreen() + case "storage": + GetStorageOptions() break - case "stash": - StashCliLoop(db) + case "criteria": + getSearchCriteria() + break + case "search": + getSearchOptions(db) + var err error + selectedCardPrintingId, selectedCardPrintingSearchLine, err = logic.Search(searchOptions) + var exitError *exec.ExitError + if errors.As(err, &exitError) { + break + } + logic.Check(err) + break + case "insert": + InsertSelectedCard(db) break default: fmt.Println("Unrecognized command:", command) diff --git a/sevenkeys/cli/stashui.go b/sevenkeys/cli/stashui.go index 8de6111..c9f06f2 100644 --- a/sevenkeys/cli/stashui.go +++ b/sevenkeys/cli/stashui.go @@ -2,9 +2,7 @@ package cli import ( "database/sql" - "errors" "fmt" - "os/exec" "sevenkeys/database" "sevenkeys/logic" ) @@ -94,39 +92,3 @@ func InsertSelectedCard(db *sql.DB) { logic.Check(err) fmt.Println("Inserted card") } - -func StashCliLoop(db *sql.DB) { - var command string - - for { - ShowStorageInfo() - command = GetStringResponse("SEVENKEYS (stash) $") - - switch command { - case "back": - return - case "storage": - GetStorageOptions() - break - case "criteria": - getSearchCriteria() - break - case "search": - getSearchOptions(db) - var err error - selectedCardPrintingId, selectedCardPrintingSearchLine, err = logic.Search(searchOptions) - var exitError *exec.ExitError - if errors.As(err, &exitError) { - break - } - logic.Check(err) - break - case "insert": - InsertSelectedCard(db) - break - default: - fmt.Println("Unrecognized command:", command) - break - } - } -}