an updated and hopefully faster version of the ST Toolbox
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

46 lines
1007 B

package main
import (
"os"
"marmic/servicetrade-toolbox/internal/api"
"marmic/servicetrade-toolbox/internal/menu"
"marmic/servicetrade-toolbox/internal/ui"
)
func main() {
ui.DisplayStartScreen()
email, password, err := ui.PromptCredentials()
if err != nil {
ui.DisplayError("Error getting credentials:", err)
os.Exit(1)
}
session := api.NewSession()
err = session.Login(email, password)
if err != nil {
ui.DisplayError("Authentication failed:", err)
os.Exit(1)
}
ui.DisplayMessage("Login successful!")
mainMenu := menu.GetMainMenu()
for {
choice := menu.DisplayMenuAndGetChoice(mainMenu, "Main Menu")
if choice == len(mainMenu)+1 {
ui.ClearScreen()
ui.DisplayMessage("Logging out...")
err := session.Logout()
if err != nil {
ui.DisplayError("Error during logout: ", err)
} else {
ui.DisplayMessage("Logout successful.")
}
ui.DisplayMessage("Exiting ServiceTrade CLI Toolbox. Goodbye!")
return
}
mainMenu[choice-1].Handler(session)
}
}