diff --git a/.gitignore b/.gitignore index 29e5a26..609c787 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ penny_dreadful_downloader/legality_data/ a_scanner_dorkly/.venv/ scantap/images/ +sevenkeys/sevenkeys MTG-Card-Identifier_v5.pdf info.txt diff --git a/sevenkeys/database/card.go b/sevenkeys/database/card.go index 89f984e..b5d8a2c 100644 --- a/sevenkeys/database/card.go +++ b/sevenkeys/database/card.go @@ -11,6 +11,7 @@ type CardPrinting struct { IsFoil bool IsPromo bool CollectorNumber string + ImageUrl string Language string } @@ -22,8 +23,9 @@ func InsertCardPrinting(db *sql.DB, cardPrinting CardPrinting) error { IsFoil, IsPromo, CollectorNumber, + ImageUrl, Language) - VALUES (?, ?, ?, ?, ?, ?, ?);` + VALUES (?, ?, ?, ?, ?, ?, ?, ?);` insert, err := db.Prepare(query) defer insert.Close() @@ -31,7 +33,7 @@ func InsertCardPrinting(db *sql.DB, cardPrinting CardPrinting) error { return err } - _, err = insert.Exec(cardPrinting.Id, cardPrinting.Name, cardPrinting.SetCode, cardPrinting.IsFoil, cardPrinting.IsPromo, cardPrinting.CollectorNumber, cardPrinting.Language) + _, err = insert.Exec(cardPrinting.Id, cardPrinting.Name, cardPrinting.SetCode, cardPrinting.IsFoil, cardPrinting.IsPromo, cardPrinting.CollectorNumber, cardPrinting.ImageUrl, cardPrinting.Language) if err != nil { return err } diff --git a/sevenkeys/database/sql/createdb.sql b/sevenkeys/database/sql/createdb.sql index 27537df..5449fbb 100644 --- a/sevenkeys/database/sql/createdb.sql +++ b/sevenkeys/database/sql/createdb.sql @@ -22,6 +22,7 @@ CREATE TABLE IF NOT EXISTS CardPrinting ( IsFoil BOOLEAN NOT NULL, IsPromo BOOLEAN NOT NULL, CollectorNumber VARCHAR(10) NOT NULL, + ImageUrl VARCHAR(100) NOT NULL, Language VARCHAR(3) NOT NULL ); diff --git a/sevenkeys/logic/scryfall/card.go b/sevenkeys/logic/scryfall/card.go index e53048b..9707423 100644 --- a/sevenkeys/logic/scryfall/card.go +++ b/sevenkeys/logic/scryfall/card.go @@ -1,13 +1,14 @@ package scryfall type Card struct { - Id string `json:"id"` - Name string `json:"name"` - Set string `json:"set"` - Games []string `json:"games"` - Foil bool `json:"foil"` - NonFoil bool `json:"nonfoil"` - Promo bool `json:"promo"` - CollectorNumber string `json:"collector_number"` - Language string `json:"lang"` + Id string `json:"id"` + Name string `json:"name"` + Set string `json:"set"` + Games []string `json:"games"` + Foil bool `json:"foil"` + NonFoil bool `json:"nonfoil"` + Promo bool `json:"promo"` + CollectorNumber string `json:"collector_number"` + ImageUris map[string]string `json:"image_uris"` + Language string `json:"lang"` } diff --git a/sevenkeys/logic/update.go b/sevenkeys/logic/update.go index 86c09a6..1c605b2 100644 --- a/sevenkeys/logic/update.go +++ b/sevenkeys/logic/update.go @@ -124,6 +124,7 @@ func getCardPrintings(card scryfall.Card) []database.CardPrinting { IsFoil: true, IsPromo: card.Promo, CollectorNumber: card.CollectorNumber, + ImageUrl: card.ImageUris["png"], Language: card.Language, }) }