Link to decks on the site, open external links in new tabs

This commit is contained in:
mez 2025-08-30 10:21:07 +01:00
parent 37fcbe72c0
commit 2def7d6283

View file

@ -986,7 +986,7 @@ def portfoliogen(theportfolio,thetype,portnumber):
portstring += "" portstring += ""
break break
portstring += " " + specialdeck portstring += " " + specialdeck
portstring += "</td>\n</tr>\n<tr>\n<td colspan=\"2\"><a href=\"" + theportfolio["url"] + "\">palette portfolio " portstring += "</td>\n</tr>\n<tr>\n<td colspan=\"2\"><a href=\"" + theportfolio["url"] + "\" target=\"_blank\">palette portfolio "
if portnumber < 10: if portnumber < 10:
portstring += "0" + str(portnumber) portstring += "0" + str(portnumber)
else: else:
@ -1059,7 +1059,7 @@ def portfoliogen(theportfolio,thetype,portnumber):
else: else:
portstring += "" portstring += ""
break break
portstring += " " + thedecks[7] + "</td>\n</tr>\n<tr>\n<td colspan=\"2\"><a href=\"" + theportfolio["url"] + "\">monochrome portfolio " portstring += " " + thedecks[7] + "</td>\n</tr>\n<tr>\n<td colspan=\"2\"><a href=\"" + theportfolio["url"] + "\" target=\"_blank\">monochrome portfolio "
if portnumber < 10: if portnumber < 10:
portstring += "0" + str(portnumber) portstring += "0" + str(portnumber)
else: else:
@ -1195,7 +1195,7 @@ def printdeck(deck,fold=True):
deckstring += " </tr>\n" deckstring += " </tr>\n"
test += 1 test += 1
if deck["mastered"]: if deck["mastered"]:
deckstring += " <tr>\n <td colspan=\"5\" align=\"center\"><img src=\"" deckstring += " <tr>\n <td colspan=\"5\" align=\"center\"><a href=\"https://colors-tcg.eu/viewcards.php?deck=" + deck["name"] + "\" target=\"_blank\"><img src=\""
if len(variables.subfolder) > 0: if len(variables.subfolder) > 0:
deckstring += "/" + variables.subfolder deckstring += "/" + variables.subfolder
deckstring += "/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"] deckstring += "/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"]
@ -1204,7 +1204,7 @@ def printdeck(deck,fold=True):
deckstring += " (first)\" class=\"first" deckstring += " (first)\" class=\"first"
except: except:
pass pass
deckstring += "\"><td>\n</tr>\n" deckstring += "\"></a><td>\n</tr>\n"
deckstring += "</tbody>\n</table>\n" deckstring += "</tbody>\n</table>\n"
if fold: if fold:
deckstring += "</details>\n" deckstring += "</details>\n"
@ -1380,7 +1380,7 @@ def indexgen():
if variables.name == "Mez": if variables.name == "Mez":
content.write("under construction") content.write("under construction")
else: else:
content.write("by <a href=\https://tcg.praze.net\">mez</a>") content.write("by <a href=\https://tcg.praze.net\" target=\"_blank\">mez</a>")
content.write("</li>\n") content.write("</li>\n")
try: try:
if len(variables.misclink["text"]) > 0: if len(variables.misclink["text"]) > 0:
@ -1484,7 +1484,7 @@ def indexgen():
masteredcount = 0 masteredcount = 0
for deck in mastereddecks: for deck in mastereddecks:
if masteredcount < variables.maxmastered: if masteredcount < variables.maxmastered:
content.write("<img src=\"") content.write("<a href=\"https://colors-tcg.eu/viewcards.php?deck=" + deck["name"] + "\" target=\"_blank\"><img src=\"")
if len(variables.subfolder) > 0: if len(variables.subfolder) > 0:
content.write("/" + variables.subfolder) content.write("/" + variables.subfolder)
content.write("/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"]) content.write("/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"])
@ -1493,7 +1493,7 @@ def indexgen():
content.write(" (first)\" class=\"first") content.write(" (first)\" class=\"first")
except: except:
pass pass
content.write("\">") content.write("\"></a>")
masteredcount += 1 masteredcount += 1
if len(mastereddecks) > variables.maxmastered: if len(mastereddecks) > variables.maxmastered:
content.write(" <a href=\"") content.write(" <a href=\"")
@ -1557,6 +1557,11 @@ def indexgen():
donations = sorted(donations, key=lambda d: d["name"]) donations = sorted(donations, key=lambda d: d["name"])
content.write("<h2>donations</h2>\n<p>") content.write("<h2>donations</h2>\n<p>")
for donation in donations: for donation in donations:
content.write("<a href=\"https://colors-tcg.eu/viewcards.php?deck=")
if donation["type"] == "single":
content.write(donation["name"][:-2] + "\" target=\"_blank\">" + printcard(donation["name"]))
else:
content.write(donation["name"] + "\" target=\"_blank\">")
if donation["type"] == "deck": if donation["type"] == "deck":
content.write("<img src=\"") content.write("<img src=\"")
if len(variables.subfolder) > 0: if len(variables.subfolder) > 0:
@ -1572,9 +1577,8 @@ def indexgen():
content.write(" (first)\" class=\"first") content.write(" (first)\" class=\"first")
except: except:
pass pass
content.write("\">") content.write("\" loading=\"lazy\">")
elif donation["type"] == "single": content.write("</a>")
content.write(printcard(donation["name"]))
content.write("</p>\n") content.write("</p>\n")
content.close() content.close()
footerwrite(thefile) footerwrite(thefile)
@ -2287,7 +2291,7 @@ def massseriesgen(series,massindex):
for deck in decklist: for deck in decklist:
if deck["mastered"]: if deck["mastered"]:
if series in deck["mass"] or series in deck["massmaster"]: if series in deck["mass"] or series in deck["massmaster"]:
content.write("<img src=\"") content.write("<a href=\"https://colors-tcg.eu/viewcards.php?deck=" + deck["name"] + "\" target=\"_blank\"><img src=\"")
if len(variables.subfolder) > 0: if len(variables.subfolder) > 0:
content.write("/" + variables.subfolder) content.write("/" + variables.subfolder)
content.write("/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"]) content.write("/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"])
@ -2296,10 +2300,10 @@ def massseriesgen(series,massindex):
content.write(" (first)\" class=\"first") content.write(" (first)\" class=\"first")
except: except:
pass pass
content.write("\">") content.write("\"></a>")
elif series == "colors universe": elif series == "colors universe":
if deck["colour"] == "limited": if deck["colour"] == "limited":
content.write("<img src=\"") content.write("<a href=\"https://colors-tcg.eu/viewcards.php?deck=" + deck["name"] + "\" target=\"_blank\"><img src=\"")
if len(variables.subfolder) > 0: if len(variables.subfolder) > 0:
content.write("/" + variables.subfolder) content.write("/" + variables.subfolder)
content.write("/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"]) content.write("/decks/" + deck["name"] + "/master.gif\" title=\"mastered " + deck["name"])
@ -2308,7 +2312,7 @@ def massseriesgen(series,massindex):
content.write(" (first)\" class=\"first") content.write(" (first)\" class=\"first")
except: except:
pass pass
content.write("\">") content.write("\"></a>")
content.write("</p><p>") content.write("</p><p>")
for card in cardlist: for card in cardlist:
if series in card["mass"]: if series in card["mass"]:
@ -2392,7 +2396,7 @@ def tradegen(colour=False):
content.write("<h1>available for trade</h1>\n" + filterwrite("trade",colour,True,True) + "<p class=\"tradeterms\">") content.write("<h1>available for trade</h1>\n" + filterwrite("trade",colour,True,True) + "<p class=\"tradeterms\">")
if len(variables.tradestatement) > 0: if len(variables.tradestatement) > 0:
content.write(variables.tradestatement + " ") content.write(variables.tradestatement + " ")
content.write("Trade cards <a href=\"" + variables.tradepost + "\">here</a></p>\n<p><textarea readonly>") content.write("Trade cards <a href=\"" + variables.tradepost + "\" target=\"_blank\">here</a></p>\n<p><textarea readonly>")
precomma = False precomma = False
for card in alltradelist: for card in alltradelist:
if colour: if colour:
@ -2634,7 +2638,7 @@ def loggen(month=False):
else: else:
admit = True admit = True
if admit == True: if admit == True:
content.write("<p><code>" + event["date"].strftime("%Y-%m-%d") + "</code> <a href=\"" + event["url"] + "\">[" + event["name"] + "]</a>: ") content.write("<p><code>" + event["date"].strftime("%Y-%m-%d") + "</code> <a href=\"" + event["url"] + "\" target=\"_blank\">[" + event["name"] + "]</a>: ")
try: try:
if event["received"]: if event["received"]:
content.write("Received ") content.write("Received ")