diff --git a/README.org b/README.org index d79dd0e..82fd3bf 100644 --- a/README.org +++ b/README.org @@ -46,5 +46,5 @@ Python scripts to generate a mobile-friendly static site for tracking tcg cards - Add level images manually to =build/assets/levels/= - Add custom CSS to =build/user.css= *** Updating and building -- For each transaction, add a dictionary ={}= to the =log= list like in the example (removing any of ="received"=, ="lost"=, ="crayons"=, ="decks"=, ="coupons"=, ="pend"=, ="unpend"= that aren’t relevant). +- For each transaction, add a dictionary ={}= to the =log= list like in the example (removing any of ="received"=, ="lost"=, ="crayons"=, ="decks"=, ="coupons">= that aren’t relevant). - Run =./build.sh= in this directory to download the relevant card images and then upload everything to the server. diff --git a/build/style.css b/build/style.css index f29203e..6f12746 100644 --- a/build/style.css +++ b/build/style.css @@ -563,27 +563,7 @@ span.searchresults { font-family: monospace; } -/* coupons */ - img.coupon.expired { -webkit-filter: grayscale(100%); filter: grayscale(100%); } - -/* pending cards */ - -td:has(.pending) { - position: relative; -} - -td:has(.pending) img { - filter: hue-rotate(180deg); -} - -td p.pending { - position: absolute; - font-size: 10px; - top: 50%; - left: 50%; - transform: translate(-50%, -200%); -} diff --git a/log-template.py b/log-template.py index 5dd55b7..39786f4 100644 --- a/log-template.py +++ b/log-template.py @@ -9,8 +9,6 @@ log = [ "crayons":{"red":1,"orange":2,"yellow":-3}, "coupons":{"01":5}, "decks":["deck1","deck2","deck3","deck4","deck5","deck6","deck7","deck8"], # only if "event":"portfolio" - "sketch":-1, # for turning in 1 sketchpad - "pend":["card05"], # to mark a card as pending - "unpend":["card06"] # to remove a card from the pending list if a trade is cancelled + "sketch":-1 # for turning in 1 sketchpad } ] diff --git a/new.py b/new.py index 087a846..3ffc7cf 100644 --- a/new.py +++ b/new.py @@ -8,7 +8,7 @@ numbers = ["01","02","03","04","05","06","07","08","09","10","11","12","13","14" print("Getting list of deck colours") -deckkey = {} +deckkey = [] request = requests.get("https://colors-tcg.eu/cards.php?view=alpha") alldecks = open("key.html","w") @@ -31,8 +31,10 @@ for row in souprows: soupcells = row.find_all("td") deckname = soupcells[2].text.lower().replace(" ","").replace("'","").replace("ç","c").replace(".","").replace("politetness","politeness") decktype = soupcells[3].text.lower() + thedeck = {} + thedeck[deckname] = decktype if decktype in values: - deckkey[deckname] = decktype + deckkey.append(thedeck) print("Parsing log") @@ -52,7 +54,6 @@ redeemedsketch = 0 coupons = [] datelist = [] logitems = [] -pends = [] for event in log.log: logentry = {} @@ -65,7 +66,10 @@ for event in log.log: thedecks = {} for spacedeck in event["decks"]: deck = spacedeck.replace(" ","") - thedecks[spacedeck] = deckkey[deck] + for keydeck in deckkey: + if deck in keydeck: + thedecks[spacedeck] = keydeck[deck] + break portcolours = list(thedecks.values()) portcolours = sorted(list(dict.fromkeys(portcolours))) if len(portcolours) < 3: @@ -102,10 +106,10 @@ for event in log.log: if card[0:4] == "sig_": thecard["colour"] = "sig" else: - try: - thecard["colour"] = deckkey[thedeck] - except: - pass + for deck in deckkey: + if thedeck in deck: + thecard["colour"] = deck[thedeck] + break try: if thecard["colour"]: pass @@ -233,16 +237,6 @@ for event in log.log: coupons.append({newcoupon:event["coupons"][newcoupon]}) except: pass - try: - for card in event["pend"]: - pends.append(card) - except: - pass - try: - for card in event["unpend"]: - pends.remove(card) - except: - pass if logit == True: logitems.append(logentry) @@ -274,7 +268,10 @@ decklist = [] for deck in decks: thedeck = {} thedeck["name"] = deck - thedeck["colour"] = deckkey[deck] + for keydeck in deckkey: + if deck in keydeck: + thedeck["colour"] = keydeck[deck] + break thedeck["mass"] = [] thedeck["massmaster"] = [] for theme in variables.masscollect: @@ -349,50 +346,11 @@ for deck in decklist: for number in numbers: if deck[number] == None: wantedcard = {} - wantedcard["name"] = deck["name"] + number + wantedcard["name"] = deck["name"] + str(number) wantedcard["colour"] = deck["colour"] wantedcard["priority"] = deck["priority"] wantedlist.append(wantedcard) -decknames = [] -for deck in decklist: - decknames.append(deck["name"]) - -for theme in variables.masscollect: - if variables.masscollect[theme]["full"] == True: - try: - for deck in variables.masscollect[theme]["decks"]: - if deck not in decknames: - for number in numbers: - wantedcard = {} - wantedcard["name"] = deck + number - wantedcard["colour"] = deckkey[deck] - wantedcard["priority"] = 3 - wantedlist.append(wantedcard) - except KeyError: - pass - try: - for card in variables.masscollect[theme]["singles"]: - if card[:-2] not in decknames: - wantedcard = {} - wantedcard["name"] = card - wantedcard["colour"] = deckkey[card[:-2]] - wantedcard["priority"] = 3 - wantedlist.append(wantedcard) - except KeyError: - pass - -wantedlist = sorted(wantedlist, key=lambda d: d["name"]) - -removelist = [] - -for card in wantedlist: - if card["name"] in pends: - removelist.append(card) - -for card in removelist: - wantedlist.remove(card) - print("Adjusting card priorities") for card in cardlist: @@ -484,20 +442,12 @@ def footerwrite(thefile): footer.close() def printcard(card): - if type(card) == dict: - if card["colour"] == "sig": - return "" - else: - deck = card["name"][:-2] - cardid = card["name"][-2:] - return "" - elif type(card) == str: - if card[0:4] == "sig_": - return "" - else: - deck = card[:-2] - cardid = card[-2:] - return "" + if card["colour"] == "sig": + return "" + else: + deck = card["name"][:-2] + cardid = card["name"][-2:] + return "" def cardtext(card): cardtext = "" @@ -857,8 +807,6 @@ def printdeck(deck,fold=True): break if found == False: deckstring += "" - if deck["name"] + teststring in pends: - deckstring += "

pending

" deckstring += "\n" if test % 5 == 0: deckstring += " \n" @@ -1126,7 +1074,10 @@ def indexgen(): content.write("

faves

\n

") faveslist = sorted(variables.faves) for card in faveslist: - content.write(printcard(card)) + for thecard in cardlist: + if card == thecard["name"]: + content.write(printcard(thecard)) + break content.write("

\n") if len(coupons) > 0: content.write("

coupons

\n

") @@ -1141,43 +1092,26 @@ def indexgen(): content.write("

\n") donations = [] try: - for donatedeck in variables.donations["decks"]: - donation = {} - donation["name"] = donatedeck - for deck in decklist: - if deck["name"] == donatedeck: - if deck["mastered"]: - donation["type"] = "mastered" - else: - donation["type"] = "deck" - break - donations.append(donation) + for deck in variables.donations["decks"]: + donations.append(deck + "00") except: pass try: for card in variables.donations["scrapbook"]: - donation = {} - donation["name"] = card - donation["type"] = "single" - donations.append(donation) + donations.append(card) except: pass if len(donations) > 0: - donations = sorted(donations, key=lambda d: d["name"]) + donations = sorted(donations) content.write("

donations

\n

") for donation in donations: - if donation["type"] == "deck": - content.write("") - elif donation["type"] == "mastered": - content.write("") - elif donation["type"] == "single": - content.write(printcard(donation["name"])) + if donation[-2:] == "00": + content.write("") + else: + for thecard in cardlist: + if donation == thecard["name"]: + content.write(printcard(thecard)) + break content.write("

\n") content.close() footerwrite(thefile)