diff --git a/README.org b/README.org
index 49c9149..6539aa5 100644
--- a/README.org
+++ b/README.org
@@ -19,6 +19,7 @@ Python scripts to generate a mobile-friendly static site for tracking tcg cards
- =servername=: name set for your remote in =rclone=
- =serverpath=: path to the site root on the server (with leading slash, without trailing slash)
- =subfolder=: subfolder under your (sub)domain in which the TCG pages will be located (leave as an empty string if they are at the top level)
+ - =url=: URL of your site index page including =https://=
- =name=: the name you use in the game
- =highpriority=: a list of high priority decks you’re collecting
- =trademedium=: whether to allow trading medium-priority cards away in exchange for high-priority cards
diff --git a/colors.py b/colors.py
index fb0281c..df80d0d 100644
--- a/colors.py
+++ b/colors.py
@@ -1029,6 +1029,338 @@ def riku():
print("Characters")
print(dupes(True,False,True,False))
+def nextportfolio(monochrome=False):
+ useddecks = {}
+ already = 0
+ if monochrome:
+ for portfolio in portfolios:
+ if portfolio["type"] == "monochrome":
+ already += 1
+ useddecks.update(portfolio["decks"])
+ else:
+ for portfolio in portfolios:
+ if portfolio["type"] == "palette":
+ already += 1
+ useddecks.update(portfolio["decks"])
+ potentials = []
+ for deck in decklist:
+ if deck["mastered"]:
+ if deck["colour"] != "special" and deck["colour"] != "limited":
+ potential = True
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ potential = False
+ if potential:
+ potentials.append(deck)
+ potentials = sorted(potentials, key=lambda d: d["mastered"])
+ if monochrome:
+ reddecks = []
+ orangedecks = []
+ yellowdecks = []
+ greendecks = []
+ bluedecks = []
+ purpledecks = []
+ browndecks = []
+ greydecks = []
+ for deck in potentials:
+ if deck["colour"] == "red":
+ reddecks.append(deck)
+ elif deck["colour"] == "orange":
+ orangedecks.append(deck)
+ elif deck["colour"] == "yellow":
+ yellowdecks.append(deck)
+ elif deck["colour"] == "green":
+ greendecks.append(deck)
+ elif deck["colour"] == "blue":
+ bluedecks.append(deck)
+ elif deck["colour"] == "purple":
+ purpledecks.append(deck)
+ elif deck["colour"] == "brown":
+ browndecks.append(deck)
+ elif deck["colour"] == "gray":
+ greydecks.append(deck)
+ longestvalue = len(reddecks)
+ nextportcolour = "red"
+ if len(orangedecks) > longestvalue:
+ nextportcolour = "orange"
+ if len(yellowdecks) > longestvalue:
+ nextportcolour = "yellow"
+ if len(greendecks) > longestvalue:
+ nextportcolour = "green"
+ if len(bluedecks) > longestvalue:
+ nextportcolour = "blue"
+ if len(purpledecks) > longestvalue:
+ nextportcolour = "purple"
+ if len(browndecks) > longestvalue:
+ nextportcolour = "brown"
+ if len(greydecks) > longestvalue:
+ nextportcolour = "grey"
+ firstthree = []
+ if nextportcolour == "red":
+ firstthree.append(reddecks[0]["name"])
+ firstthree.append(reddecks[1]["name"])
+ firstthree.append(reddecks[2]["name"])
+ elif nextportcolour == "orange":
+ firstthree.append(orangedecks[0]["name"])
+ firstthree.append(orangedecks[1]["name"])
+ firstthree.append(orangedecks[2]["name"])
+ elif nextportcolour == "yellow":
+ firstthree.append(yellowdecks[0]["name"])
+ firstthree.append(yellowdecks[1]["name"])
+ firstthree.append(yellowdecks[2]["name"])
+ elif nextportcolour == "green":
+ firstthree.append(greendecks[0]["name"])
+ firstthree.append(greendecks[1]["name"])
+ firstthree.append(greendecks[2]["name"])
+ elif nextportcolour == "blue":
+ firstthree.append(bluedecks[0]["name"])
+ firstthree.append(bluedecks[1]["name"])
+ firstthree.append(bluedecks[2]["name"])
+ elif nextportcolour == "purple":
+ firstthree.append(purpledecks[0]["name"])
+ firstthree.append(purpledecks[1]["name"])
+ firstthree.append(purpledecks[2]["name"])
+ elif nextportcolour == "brown":
+ firstthree.append(browndecks[0]["name"])
+ firstthree.append(browndecks[1]["name"])
+ firstthree.append(browndecks[2]["name"])
+ elif nextportcolour == "grey":
+ firstthree.append(greydecks[0]["name"])
+ firstthree.append(greydecks[1]["name"])
+ firstthree.append(greydecks[2]["name"])
+ secondfive = []
+ nearingdecks = sorted(decklist, key=lambda d: d["count"],reverse=True)
+ slots = 5
+ for deck in nearingdecks:
+ if slots > 0:
+ if not deck["mastered"]:
+ if nextportcolour == "grey":
+ if deck["colour"] == "gray":
+ secondfive.append(deck["name"])
+ slots -= 1
+ else:
+ if deck["colour"] == nextportcolour:
+ secondfive.append(deck["name"])
+ slots -= 1
+ alleight = sorted(firstthree + secondfive)
+ else:
+ thereddeck = False
+ redmastered = False
+ theorangedeck = False
+ orangemastered = False
+ theyellowdeck = False
+ yellowmastered = False
+ thegreendeck = False
+ greenmastered = False
+ thebluedeck = False
+ bluemastered = False
+ thepurpledeck = False
+ purplemastered = False
+ thebrowndeck = False
+ brownmastered = False
+ thegreydeck = False
+ greymastered = False
+ sorteddecks = 0
+ for deck in potentials:
+ if sorteddecks < 3:
+ if deck["colour"] == "red" and thereddeck == False:
+ thereddeck = deck["name"]
+ redmastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "orange" and theorangedeck == False:
+ theorangedeck = deck["name"]
+ orangemastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "yellow" and theyellowdeck == False:
+ theyellowdeck = deck["name"]
+ yellowmastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "green" and thegreendeck == False:
+ thegreendeck = deck["name"]
+ greenmastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "blue" and thebluedeck == False:
+ thebluedeck = deck["name"]
+ bluemastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "purple" and thepurpledeck == False:
+ thepurpledeck = deck["name"]
+ purplemastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "brown" and thebrowndeck == False:
+ thebrowndeck = deck["name"]
+ brownmastered = True
+ sorteddecks += 1
+ elif deck["colour"] == "gray" and thegreydeck == False:
+ thegreydeck = deck["name"]
+ greymastered = True
+ sorteddecks += 1
+ nearingdecks = sorted(decklist, key=lambda d: d["count"],reverse=True)
+ if thereddeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if thereddeck == False:
+ if deck["colour"] == "red":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ thereddeck = deck["name"]
+ if theorangedeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if theorangedeck == False:
+ if deck["colour"] == "orange":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ theorangedeck = deck["name"]
+ if theyellowdeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if theyellowdeck == False:
+ if deck["colour"] == "yellow":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ theyellowdeck = deck["name"]
+ if thegreendeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if thegreendeck == False:
+ if deck["colour"] == "green":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ thegreendeck = deck["name"]
+ if thebluedeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if thebluedeck == False:
+ if deck["colour"] == "blue":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ thebluedeck = deck["name"]
+ if thepurpledeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if thepurpledeck == False:
+ if deck["colour"] == "purple":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ thepurpledeck = deck["name"]
+ if thebrowndeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if thebrowndeck == False:
+ if deck["colour"] == "brown":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ thebrowndeck = deck["name"]
+ if thegreydeck == False:
+ for deck in nearingdecks:
+ if not deck["mastered"]:
+ if thegreydeck == False:
+ if deck["colour"] == "gray":
+ used = False
+ for key, value in useddecks.items():
+ if deck["name"] == key.replace(" ",""):
+ used = True
+ if used == False:
+ thegreydeck = deck["name"]
+ alleight = []
+ alleight.append(thereddeck)
+ alleight.append(theorangedeck)
+ alleight.append(theyellowdeck)
+ alleight.append(thegreendeck)
+ alleight.append(thebluedeck)
+ alleight.append(thepurpledeck)
+ alleight.append(thebrowndeck)
+ alleight.append(thegreydeck)
+ portcomment = "♥ Your Name: " + variables.name + "\n♥ Card post: " + variables.url + "\n♥ "
+ if monochrome:
+ portcomment += "Monochrome"
+ else:
+ portcomment += "Palette"
+ portcomment += " Portfolio #: " + str(already + 1) + "\n"
+ if monochrome:
+ portcomment += "♥ Monochrome Color: "
+ if nextportcolour == "grey":
+ if variables.british:
+ portcomment += "grey"
+ else:
+ portcomment += "gray"
+ else:
+ portcomment += nextportcolour
+ portcomment += "\n♥ 1st deck: " + alleight[0]
+ if alleight[0] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 2nd deck: " + alleight[1]
+ if alleight[1] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 3rd deck: " + alleight[2]
+ if alleight[2] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 4th deck: " + alleight[3]
+ if alleight[3] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 5th deck: " + alleight[4]
+ if alleight[4] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 6th deck: " + alleight[5]
+ if alleight[5] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 7th deck: " + alleight[6]
+ if alleight[6] in firstthree:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ 8th deck: " + alleight[7]
+ if alleight[7] in firstthree:
+ portcomment += " (mastered)"
+ else:
+ portcomment += "♥ Red deck: " + thereddeck
+ if redmastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Orange deck: " + theorangedeck
+ if orangemastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Yellow deck: " + theyellowdeck
+ if yellowmastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Green deck: " + thegreendeck
+ if greenmastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Blue deck: " + thebluedeck
+ if bluemastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Purple deck: " + thepurpledeck
+ if purplemastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Brown deck: " + thebrowndeck
+ if brownmastered:
+ portcomment += " (mastered)"
+ portcomment += "\n♥ Gray deck: " + thegreydeck
+ if greymastered:
+ portcomment += " (mastered)"
+ print(portcomment)
+ porturl = input("\nPaste the comment URL here: ")
+ print("\n{\"event\":\"portfolio\",\"date\":datetime.datetime(" + datetime.datetime.today().strftime("%Y,%-m,%-d") + "),\"url\":\"" + porturl + "\",\"decks\":[\"" + alleight[0] + "\",\"" + alleight[1] + "\",\"" + alleight[2] + "\",\"" + alleight[3] + "\",\"" + alleight[4] + "\",\"" + alleight[5] + "\",\"" + alleight[6] + "\",\"" + alleight[7] + "\"]}")
+
if __name__ == "__main__":
print("Building index page")
diff --git a/variables-template.py b/variables-template.py
index d3dd68d..4e0176c 100644
--- a/variables-template.py
+++ b/variables-template.py
@@ -1,6 +1,7 @@
servername = ""
serverpath = ""
subfolder = ""
+url = ""
name = "your name"
highpriority = ["deckname","nameofadeck"]
trademedium = True