# Flyttar wiki/*.html -> tds/, wiki/img + ikon -> tds/pics, skriver om länkar
import os,re,sys,json,hashlib,html,shutil,urllib.parse
T=sys.argv[1]; W=T+"/wiki"; P=T+"/pics"; os.makedirs(P,exist_ok=True)
for src in (W+"/img",T+"/ikon"):
    if os.path.isdir(src):
        for f in os.listdir(src):
            if not f.endswith(".tmp"): os.replace(src+"/"+f,P+"/"+f)
        shutil.rmtree(src)
def fix_remote(m):
    u=html.unescape(m.group(0)); u=re.sub(r"^//","https://",u)
    ext=os.path.splitext(urllib.parse.urlparse(u).path.split("/revision")[0])[1][:5] or ".png"
    n=hashlib.md5(u.encode()).hexdigest()+ext
    return "pics/"+n if os.path.exists(P+"/"+n) else m.group(0)
if os.path.isdir(W):
    for f in os.listdir(W):
        if not f.endswith(".html"): continue
        s=open(W+"/"+f,encoding="utf-8").read()
        s=s.replace('src="img/','src="pics/').replace('href="img/','href="pics/')
        s=re.sub(r'(?:https?:)?//static\.wikia\.nocookie\.net/[^"\s\']+',fix_remote,s)
        if f=="index.html":
            s=s.replace("<h1>","<p><a href=\"index.html\">← TDS Arkivet</a></p><h1>",1); out="alla-sidor.html"
        else:
            s=s.replace('<a href="index.html">Alla sidor</a>','<a href="index.html">TDS Arkivet</a> · <a href="alla-sidor.html">Alla sidor</a>',1); out=f
        open(T+"/"+out,"w",encoding="utf-8").write(s); os.remove(W+"/"+f)
    os.rmdir(W)
d=json.load(open(T+"/data.json"))
for it in d:
    if it.get("img"): it["img"]=it["img"].replace("ikon/","pics/")
json.dump(d,open(T+"/data.json","w"),ensure_ascii=False)
print("ok",len(os.listdir(T)),"filer i tds,",len(os.listdir(P)),"bilder")
