45 lines
1.8 KiB
Python
45 lines
1.8 KiB
Python
import datetime, os
|
||
from importlib import import_module
|
||
|
||
import makeheader
|
||
import headerfooter
|
||
|
||
"""
|
||
Code to generate masterlist
|
||
"""
|
||
|
||
def listgen(local=False):
|
||
# delete existing file
|
||
if os.path.exists("build/masterlist/index.html"):
|
||
os.remove("build/masterlist/index.html")
|
||
# write header
|
||
headerfooter.headerwrite("build/masterlist/index.html","Masterlist","Fic masterlist","<p>On this page, from newest to oldest, you’ll find basically everything I’ve ever written that is a. fanfiction and b. extant; quality may vary. Some fics, such as things I wrote before 2020, require a username and password to access.</p>",False,local)
|
||
# write fic divs
|
||
ficcount = 500
|
||
sortfics = []
|
||
while ficcount > 0:
|
||
ficcount -= 1
|
||
if ficcount < 10:
|
||
ficcountstring = "00" + str(ficcount)
|
||
elif ficcount < 100:
|
||
ficcountstring = "0" + str(ficcount)
|
||
else:
|
||
ficcountstring = str(ficcount)
|
||
if os.path.exists("files/originalsmeta/" + ficcountstring + ".py"):
|
||
ficfile = "files.originalsmeta." + ficcountstring
|
||
fileread = import_module(ficfile)
|
||
try:
|
||
if fileread.revealdate <= datetime.datetime.now():
|
||
ficdict = {"thefic":ficcount,"thedate":(fileread.datewords[-1])["date"]}
|
||
sortfics.append(ficdict)
|
||
except:
|
||
ficdict = {"thefic":ficcount,"thedate":(fileread.datewords[-1])["date"]}
|
||
sortfics.append(ficdict)
|
||
thefics = sorted(sortfics, key=lambda d: d["thedate"],reverse=True)
|
||
for fic in thefics:
|
||
makeheader.ficgen(fic["thefic"],True,"build/masterlist/index.html",local)
|
||
# write footer
|
||
headerfooter.footerwrite("build/masterlist/index.html",False,local)
|
||
|
||
if __name__ == "__main__":
|
||
listgen()
|