diff --git a/generate-html.py b/generate-html.py
index 64dfed2..8035a3d 100644
--- a/generate-html.py
+++ b/generate-html.py
@@ -15,20 +15,39 @@ rawext = [".ARW", ".tif", ".tiff", ".TIF", ".TIFF"]
def listfolder(folder: str):
items: list[str] = os.listdir(folder)
items.sort()
- for item in items:
- if item != "Galleries" and item != ".previews":
- if os.path.isdir(os.path.join(folder, item)):
- print(f'{item}
')
- listfolder(os.path.join(folder, item))
- else:
- if os.path.splitext(item)[1] in imgext:
- print(f'
{item}
')
- for raw in rawext:
- if os.path.exists(os.path.join(folder, os.path.splitext(item)[0] + raw)):
- print(f'RAW
')
+ images: list[str] = []
+ subfolders: list[str] = []
+
+ if not os.path.exists(os.path.join(root, ".previews", folder.removeprefix(root))):
+ os.mkdir(os.path.join(root, ".previews", folder.removeprefix(root)))
+
+ with open(os.path.join(folder, "list.txt"), "w", encoding="utf-8") as f:
+ for item in items:
+ if item != "Galleries" and item != ".previews":
+ if os.path.isdir(os.path.join(folder, item)):
+ subfolders.extend([f'{item}
'])
+ listfolder(os.path.join(folder, item))
+ else:
+ if os.path.splitext(item)[1] in imgext:
+ images.extend([f'
{item}
'])
+ if not os.path.exists(os.path.join(root, ".previews", folder.removeprefix(root), item)):
+ # os.system(f'magick {os.path.join(folder, item)} -resize 1024x768! {os.path.join(root, ".previews", folder.removeprefix(root), item)}')
+ print(f'magick {os.path.join(folder, item)} -resize 1024x768! {os.path.join(root, ".previews", folder.removeprefix(root), item)}')
+ for raw in rawext:
+ if os.path.exists(os.path.join(folder, os.path.splitext(item)[0] + raw)):
+ images.extend([f'RAW
'])
+ for image in images:
+ f.write(image)
+ f.write("\n")
+ for subfolder in subfolders:
+ f.write(subfolder)
+ f.write("\n")
+ f.close()
def main():
+ global root
+ global webroot
if not root.endswith("/"):
root += "/"
if not webroot.endswith("/"):
@@ -36,5 +55,6 @@ def main():
listfolder(root)
# @TODO: write actual html files (and css 🙄)
+
if __name__ == "__main__":
main()