summaryrefslogtreecommitdiff
path: root/src/scripts
diff options
context:
space:
mode:
authorBobby <[email protected]>2025-05-12 18:59:23 +0530
committerBobby <[email protected]>2025-05-12 18:59:23 +0530
commit5dba2d8cedf46798fc197de4856409124a65ce4e (patch)
treedb78fc28529fea672e31d0de27524b64ab904ed5 /src/scripts
parentc21c55fc1c5f262943f99fc4f0f343ed49d18f33 (diff)
downloadpagoda-5dba2d8cedf46798fc197de4856409124a65ce4e.tar.xz
pagoda-5dba2d8cedf46798fc197de4856409124a65ce4e.zip
added sidebar and related components
Diffstat (limited to 'src/scripts')
-rw-r--r--src/scripts/sidebarImage.ts30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/scripts/sidebarImage.ts b/src/scripts/sidebarImage.ts
new file mode 100644
index 0000000..456059e
--- /dev/null
+++ b/src/scripts/sidebarImage.ts
@@ -0,0 +1,30 @@
+document.addEventListener("DOMContentLoaded", (): void => {
+ const currentMinute: number = Math.floor(Date.now() / 60000);
+ const sidebarImagePathPrefix: string = "/images/internal/sidebar";
+
+ type ImageRule = {
+ divisor: number;
+ filename: string;
+ };
+
+ const imageRules: ImageRule[] = [
+ { divisor: 7, filename: "7.gif" },
+ { divisor: 5, filename: "5.gif" },
+ { divisor: 3, filename: "3.gif" },
+ { divisor: 2, filename: "2.gif" },
+ ];
+
+ const matchedRule: ImageRule | undefined = imageRules.find(
+ (rule: ImageRule): boolean => currentMinute % rule.divisor === 0
+ );
+
+ const imageName: string = matchedRule ? matchedRule.filename : "default.gif";
+ const sidebarImage: string = `${sidebarImagePathPrefix}/${imageName}`;
+
+ const imageElement: HTMLImageElement | null = document.getElementById(
+ "sidebar-image"
+ ) as HTMLImageElement;
+ if (imageElement) {
+ imageElement.src = sidebarImage;
+ }
+});