package main import ( "bufio" "fmt" "log" "os" "strings" ) func advancedMenu(app *application) { var option string for option != "0" { fmt.Print("\nAdvanced Menu\n-------------\n\n") fmt.Printf("1. Change units (Default: imperial; Current: %s)\n", app.Config.Units) fmt.Println("2. Enter precise location") fmt.Print("0. Back\n\n") reader := bufio.NewReader(os.Stdin) input, err := reader.ReadString('\n') if err != nil { log.Println(err) } option = strings.TrimSuffix(input, "\n") if option == "1" { current := app.Config.Units if current == "imperial" { app.Config.Units = "metric" } else { app.Config.Units = "imperial" } fmt.Printf("\nChanged units from %s to %s...\n\n", current, app.Config.Units) } else if option == "2" { getPreciseLocation(app) getCurrent(app) printWeather(app) } } }