diff options
Diffstat (limited to 'client/go/internal/cli/cmd/login.go')
-rw-r--r-- | client/go/internal/cli/cmd/login.go | 25 |
1 files changed, 4 insertions, 21 deletions
diff --git a/client/go/internal/cli/cmd/login.go b/client/go/internal/cli/cmd/login.go index d2075bdfcf0..54c0dfef770 100644 --- a/client/go/internal/cli/cmd/login.go +++ b/client/go/internal/cli/cmd/login.go @@ -4,7 +4,6 @@ import ( "fmt" "log" "os" - "strings" "time" "github.com/pkg/browser" @@ -46,7 +45,10 @@ func newLoginCmd(cli *CLI) *cobra.Command { log.Printf("Your Device Confirmation code is: %s\n", state.UserCode) - auto_open := confirm(cli, "Automatically open confirmation page in your default browser?") + auto_open, err := cli.confirm("Automatically open confirmation page in your default browser?") + if err != nil { + return err + } if auto_open { log.Printf("Opened link in your browser: %s\n", state.VerificationURI) @@ -90,22 +92,3 @@ func newLoginCmd(cli *CLI) *cobra.Command { }, } } - -func confirm(cli *CLI, question string) bool { - for { - var answer string - - fmt.Fprintf(cli.Stdout, "%s [Y/n] ", question) - fmt.Fscanln(cli.Stdin, &answer) - - answer = strings.TrimSpace(strings.ToLower(answer)) - - if answer == "y" || answer == "" { - return true - } else if answer == "n" { - return false - } else { - log.Printf("Please answer Y or N.\n") - } - } -} |