Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # If two "tables" link to the same content, then you'll need to manually remove the toggle for each that would otherwise hide that content unnecessarily.
- # As in, if A->A, B->B, C->B, D->D: then in "table"-B, you need to take out the toggle that will hide B's content when clicking C (And vice versa).
- def build(opt, links, prefix, size):
- print("\n\n * CODE BELOW - COPY AND PASTE AS NEEDED * \n\n")
- # Starting with NONE
- print(f"<div class=\"mw-collapsible\" id=\"mw-customcollapsible-{prefix}:none\">")
- print(f"<div class=\"mw-customtoggle-{links[0]} mw-customtoggle-:{prefix}A: mw-customtoggle-{prefix}:none\"><span style=\"color:#eac98b;\">{opt[0]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[1]} mw-customtoggle-:{prefix}B: mw-customtoggle-{prefix}:none\"><span style=\"color:#eac98b;\">{opt[1]}</span></div>")
- if size >= 3:
- print(f"<div class=\"mw-customtoggle-{links[2]} mw-customtoggle-:{prefix}C: mw-customtoggle-{prefix}:none\"><span style=\"color:#eac98b;\">{opt[2]}</span></div>")
- if size == 4:
- print(f"<div class=\"mw-customtoggle-{links[3]} mw-customtoggle-:{prefix}D: mw-customtoggle-{prefix}:none\"><span style=\"color:#eac98b;\">{opt[3]}</span></div>")
- print("</div>\n")
- #--------------------
- # Now onto A -------
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-:{prefix}A:\">")
- print(f"<div class=\"mw-customtoggle-{links[0]} mw-customtoggle-{prefix}:none mw-customtoggle-:{prefix}A:\"><span style=\"background-color:#dba43d;\">{opt[0]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[1]} mw-customtoggle-{links[0]} mw-customtoggle-:{prefix}B: mw-customtoggle-:{prefix}A:\"><span style=\"color:#eac98b;\">{opt[1]}</span></div>")
- if size >= 3:
- print(f"<div class=\"mw-customtoggle-{links[2]} mw-customtoggle-{links[0]} mw-customtoggle-:{prefix}C: mw-customtoggle-:{prefix}A:\"><span style=\"color:#eac98b;\">{opt[2]}</span></div>")
- if size == 4:
- print(f"<div class=\"mw-customtoggle-{links[3]} mw-customtoggle-{links[0]} mw-customtoggle-:{prefix}D: mw-customtoggle-:{prefix}A:\"><span style=\"color:#eac98b;\">{opt[3]}</span></div>")
- print("</div>\n")
- #--------------------
- # Then onto B ------
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-:{prefix}B:\">")
- print(f"<div class=\"mw-customtoggle-{links[0]} mw-customtoggle-{links[1]} mw-customtoggle-:{prefix}A: mw-customtoggle-:{prefix}B:\"><span style=\"color:#eac98b;\">{opt[0]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[1]} mw-customtoggle-{prefix}:none mw-customtoggle-:{prefix}B:\"><span style=\"background-color:#dba43d;\">{opt[1]}</span></div>")
- if size >= 3:
- print(f"<div class=\"mw-customtoggle-{links[2]} mw-customtoggle-{links[1]} mw-customtoggle-:{prefix}C: mw-customtoggle-:{prefix}B:\"><span style=\"color:#eac98b;\">{opt[2]}</span></div>")
- if size == 4:
- print(f"<div class=\"mw-customtoggle-{links[3]} mw-customtoggle-{links[1]} mw-customtoggle-:{prefix}D: mw-customtoggle-:{prefix}B:\"><span style=\"color:#eac98b;\">{opt[3]}</span></div>")
- print("</div>\n")
- #--------------------
- if size >= 3:
- # C's turn ---------
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-:{prefix}C:\">")
- print(f"<div class=\"mw-customtoggle-{links[0]} mw-customtoggle-{links[2]} mw-customtoggle-:{prefix}A: mw-customtoggle-:{prefix}C:\"><span style=\"color:#eac98b;\">{opt[0]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[1]} mw-customtoggle-{links[2]} mw-customtoggle-:{prefix}B: mw-customtoggle-:{prefix}C:\"><span style=\"color:#eac98b;\">{opt[1]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[2]} mw-customtoggle-{prefix}:none mw-customtoggle-:{prefix}C:\"><span style=\"background-color:#dba43d;\">{opt[2]}</span></div>")
- if size == 4:
- print(f"<div class=\"mw-customtoggle-{links[3]} mw-customtoggle-{links[2]} mw-customtoggle-:{prefix}D: mw-customtoggle-:{prefix}C:\"><span style=\"color:#eac98b;\">{opt[3]}</span></div>")
- print("</div>\n")
- # --------------------
- if size == 4:
- # Finally - D --------
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-:{prefix}D:\">")
- print(f"<div class=\"mw-customtoggle-{links[0]} mw-customtoggle-{links[3]} mw-customtoggle-:{prefix}A: mw-customtoggle-:{prefix}D:\"><span style=\"color:#eac98b;\">{opt[0]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[1]} mw-customtoggle-{links[3]} mw-customtoggle-:{prefix}B: mw-customtoggle-:{prefix}D:\"><span style=\"color:#eac98b;\">{opt[1]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[2]} mw-customtoggle-{links[3]} mw-customtoggle-:{prefix}C: mw-customtoggle-:{prefix}D:\"><span style=\"color:#eac98b;\">{opt[2]}</span></div>")
- print(f"<div class=\"mw-customtoggle-{links[3]} mw-customtoggle-{prefix}:none mw-customtoggle-:{prefix}D:\"><span style=\"background-color:#dba43d;\">{opt[3]}</span></div>")
- print("</div>\n")
- # --------------------
- print ("\n\n * THIS NEXT SECTION IS FOR THE COLLAPSIBLE CONTENT - COPY AND PASTE IF NEEDED *\n\n")
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-{links[0]}\">")
- print("\n\n\n\n</div>\n")
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-{links[1]}\">")
- print("\n\n\n\n</div>\n")
- if size >= 3:
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-{links[2]}\">")
- print("\n\n\n\n</div>\n")
- if size == 4:
- print(f"<div class=\"mw-collapsible mw-collapsed\" id=\"mw-customcollapsible-{links[3]}\">")
- print("\n\n\n\n</div>\n")
- def display(opt, links, size):
- # To show your inputs afterwards - good for spotting mistakes.
- print()
- for x in range(size):
- print(opt[x] + " - links to \"" + links[x] + "\"")
- #print("Prefix:", p, "Size:", size)
- def punct(opt, p, size):
- for x in range(size):
- if opt[x] == "s": opt[x] = "(Stay silent.)"
- elif not (")" in opt[x] or "(" in opt[x]):
- opt[x] = "« %s »" % opt[x]
- print(f"\nRemember to include the prefix ({p}) if needed!\n")
- a_to = input(f"Where does clicking (A) {opt[0]} take you?: ")
- if a_to == "": a_to = p + "a"
- b_to = input(f"Where does clicking (B) {opt[1]} take you?: ")
- if b_to == "": b_to = p + "b"
- c_to = None
- d_to = None
- if size >= 3:
- c_to = input(f"Where does clicking (C) {opt[2]} take you?: ")
- if c_to == "": c_to = p + "c"
- if size == 4:
- d_to = input(f"Where does clicking (D) {opt[3]} take you?: ")
- if d_to == "": d_to = p + "d"
- links = [a_to, b_to, c_to, d_to]
- display(opt, links, size)
- return build(opt, links, p, size)
- def ask():
- p = input("Prefix?: ")
- a = input("Option A: ")
- b = input("Option B: ")
- c = input("Option C: ")
- # Error handling
- if a == "" or b == "":
- print("Not enough options!\n")
- return ask()
- if c == "":
- return punct([a, b], p, 2)
- else:
- d = input("Option D: ")
- if d == "":
- return punct([a, b, c], p, 3)
- else:
- return punct([a, b, c, d], p, 4)
- if __name__ == "__main__":
- ask()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement