From 3870dc81725337f12cb8f27f131c9bf61a192d34 Mon Sep 17 00:00:00 2001 From: Florian Baumann Date: Mon, 14 Aug 2023 08:00:36 +0200 Subject: [PATCH] Fix: Handle input errors for add commnand --- src/serra/add.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/serra/add.go b/src/serra/add.go index b6f1cb3..bcca863 100644 --- a/src/serra/add.go +++ b/src/serra/add.go @@ -89,8 +89,19 @@ func addCards(cards []string, unique bool, count int64) error { // Loop over different cards for _, card := range cards { // Extract collector number and set name from card input & trim any leading 0 from collector number - collectorNumber := strings.TrimLeft(strings.Split(card, "/")[1], "0") + + if !strings.Contains(card, "/") { + LogMessage(fmt.Sprintf("Invalid card format %s. Needs to be set/collector number i.e. \"usg/13\"", card), "red") + continue + } + setName := strings.Split(card, "/")[0] + collectorNumber := strings.TrimLeft(strings.Split(card, "/")[1], "0") + + if collectorNumber == "" { + LogMessage(fmt.Sprintf("Invalid card format %s. Needs to be set/collector number i.e. \"usg/13\"", card), "red") + continue + } // Check if card is already in collection co, err := coll.storageFind(bson.D{{"set", setName}, {"collectornumber", collectorNumber}}, bson.D{}, 0, 0)