summaryrefslogtreecommitdiff
path: root/pages.py
diff options
context:
space:
mode:
authoraltaf-creator <dev@altafcreator.com>2026-05-31 10:45:44 +0800
committeraltaf-creator <dev@altafcreator.com>2026-05-31 10:45:44 +0800
commite944308db6de30153fdb86a67d6c913186fe8d89 (patch)
tree134db26ba4da6c75ba75cc3d26e70f11d801a6d9 /pages.py
parent8fea6e4be4a61cd2bfcb310166fbe6b2541b9ff4 (diff)
youtube videos, events, about me wip
Diffstat (limited to 'pages.py')
-rw-r--r--pages.py38
1 files changed, 35 insertions, 3 deletions
diff --git a/pages.py b/pages.py
index 9f37762..fcde18e 100644
--- a/pages.py
+++ b/pages.py
@@ -148,6 +148,8 @@ def render_video(video_name: str) -> tuple:
metadata, rendered_content = markdown_renderer.md_to_html(source)
metadata["path"] = VIDEO_INDEX[video_name]["path"]
+ if "download_path" in VIDEO_INDEX[video_name]:
+ metadata["download_path"] = VIDEO_INDEX[video_name]["download_path"]
print(metadata, rendered_content)
html = html.replace("{[{content}]}", rendered_content)
@@ -159,7 +161,16 @@ def render_video(video_name: str) -> tuple:
soup = BeautifulSoup(html, "html.parser")
soup.title.string = soup.title.string.replace("{[{title}]}", metadata["title"])
- soup.select_one("#video")["src"] = metadata["path"]
+ if "youtube" in metadata["path"]:
+ pass
+ iframe = BeautifulSoup(f"""
+ <iframe src="{metadata["path"]}" id="iframe-yt" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
+ """, "html.parser")
+ soup.select_one("#video-parent").append(iframe)
+ soup.select_one("#video").decompose()
+ soup.select_one("#video-controls").decompose()
+ else:
+ soup.select_one("#video")["src"] = metadata["path"]
if metadata["default_copyright"]:
soup.select_one("#video-license-parent").string = "©️ All rights reserved"
@@ -167,9 +178,30 @@ def render_video(video_name: str) -> tuple:
soup.select_one("#video-license-info")["href"] = metadata["license_url"]
soup.select_one("#video-license-info").insert(0, BeautifulSoup(metadata["license"], "html.parser"))
- if metadata["downloadable"] and not metadata["default_copyright"]:
- soup.select_one("#video-download-btn").href = metadata["path"]
+ if "download_path" in metadata and not metadata["default_copyright"]:
+ soup.select_one("#video-download-btn")["href"] = metadata["download_path"]
else:
soup.select_one("#video-download-btn").decompose()
return (200, str(soup))
+
+
+def render_event(event_name: str) -> tuple:
+ html = HTML_EVENT_TEMPLATE
+ source = ""
+
+ if event_name not in EVENT_INDEX:
+ return (404, "")
+
+ with open("." + EVENT_INDEX[event_name]["path"], "r") as f:
+ source = f.read()
+
+ metadata, rendered_content = markdown_renderer.md_to_html(source)
+ print(metadata, rendered_content)
+
+ html = html.replace("{[{content}]}", rendered_content)
+
+ soup = BeautifulSoup(html, "html.parser")
+ soup.title.string = soup.title.string.replace("{[{title}]}", metadata["title"])
+
+ return (200, str(soup))