From 6bc031459fdd8cf89bd8567487fe65a8b268c739 Mon Sep 17 00:00:00 2001 From: hitlerrip Date: Wed, 30 Jul 2025 11:19:34 +0200 Subject: play page added basic functionality to the play page and moved it to /play/ --- README.md | 4 +- frontend/hitler-clicker/src/lib/login.svelte | 2 +- .../hitler-clicker/src/routes/main/+layout.svelte | 8 -- .../hitler-clicker/src/routes/main/+page.svelte | 64 ----------- .../hitler-clicker/src/routes/play/+layout.svelte | 8 ++ .../hitler-clicker/src/routes/play/+page.svelte | 123 +++++++++++++++++++++ 6 files changed, 135 insertions(+), 74 deletions(-) delete mode 100644 frontend/hitler-clicker/src/routes/main/+layout.svelte delete mode 100644 frontend/hitler-clicker/src/routes/main/+page.svelte create mode 100644 frontend/hitler-clicker/src/routes/play/+layout.svelte create mode 100644 frontend/hitler-clicker/src/routes/play/+page.svelte diff --git a/README.md b/README.md index 4b084d9..22976c8 100644 --- a/README.md +++ b/README.md @@ -48,5 +48,7 @@ curl -X POST -d '{ "key": "value" }' http://localhost:8000/yourapifile.php - sort landing page team clicks by amount - rank page -- design play page and make functional +- play page: team-based images +- play page: functional navigation bar +- play page: click on any key press - find out if cookie banner is legally required diff --git a/frontend/hitler-clicker/src/lib/login.svelte b/frontend/hitler-clicker/src/lib/login.svelte index 9ee938c..a0a8b73 100644 --- a/frontend/hitler-clicker/src/lib/login.svelte +++ b/frontend/hitler-clicker/src/lib/login.svelte @@ -30,7 +30,7 @@ //console.log(data.token); console.log("logged in!"); document.cookie = `token=${data.token}`; - window.location.href = `${page.url.origin}/main/`; + window.location.href = `${page.url.origin}/play/`; } else { alert((data.status) ? `ERROR: ${data.status}` : `ERROR: something went wrong.`); } diff --git a/frontend/hitler-clicker/src/routes/main/+layout.svelte b/frontend/hitler-clicker/src/routes/main/+layout.svelte deleted file mode 100644 index 85b696e..0000000 --- a/frontend/hitler-clicker/src/routes/main/+layout.svelte +++ /dev/null @@ -1,8 +0,0 @@ - - -{@render children()} - diff --git a/frontend/hitler-clicker/src/routes/main/+page.svelte b/frontend/hitler-clicker/src/routes/main/+page.svelte deleted file mode 100644 index dc7842c..0000000 --- a/frontend/hitler-clicker/src/routes/main/+page.svelte +++ /dev/null @@ -1,64 +0,0 @@ - - -
- -

Hitler Clicker!

- - {#if token} - - {#await fetch("http://localhost:8000/info.php", { - method: "POST", - headers: { - "Accept": "application/json", - "Content-Type": "application/json", - }, - body: JSON.stringify({ - "token": token - }) - }).then((response) => response.json())} -

...

- {:then response} - -

{response.name} {response.team} {response.clicks}

- - {:catch error} -
{error.message}
- {/await} - - {:else} - -

anonymous play not supported yet. please return to the landing page and log in from there.

- - {/if} - -
diff --git a/frontend/hitler-clicker/src/routes/play/+layout.svelte b/frontend/hitler-clicker/src/routes/play/+layout.svelte new file mode 100644 index 0000000..85b696e --- /dev/null +++ b/frontend/hitler-clicker/src/routes/play/+layout.svelte @@ -0,0 +1,8 @@ + + +{@render children()} + diff --git a/frontend/hitler-clicker/src/routes/play/+page.svelte b/frontend/hitler-clicker/src/routes/play/+page.svelte new file mode 100644 index 0000000..ad58a72 --- /dev/null +++ b/frontend/hitler-clicker/src/routes/play/+page.svelte @@ -0,0 +1,123 @@ + + +
+ +

Hitler Clicker!

+ + {#if token} + + {#await fetch("http://localhost:8000/info.php", { + method: "POST", + headers: { + "Accept": "application/json", + "Content-Type": "application/json", + }, + body: JSON.stringify({ + "token": token + }) + }).then((response) => response.json())} +

...

+ {:then response} + + {#if response.status === "success"} + + + + {#if response.team === "axis"} +

࿕ Axis ࿕

+

{axis}

+ {:else if response.team === "allies"} +

⊙ Allies ⊙

+

{allies}

+ {:else if response.team === "soviet"} +

☭ Soviets ☭

+

{soviets}

+ {/if} + + {#if response.team} + { + fetch("http://localhost:8000/click.php", { + method: "POST", + headers: { + "Accept": "application/json", + "Content-Type": "application/json", + }, + body: JSON.stringify({ + "token": token + }) + }) + axis++ + allies++ + soviets++ + contrib++ + }} /> + {/if} + +

user ui and navigation bar goes here, permanently pinned to the bottom of the screen

+

{Number(response.clicks) + contrib}

+ + {:else} +

ERROR: {response.status}

+ {/if} + + {:catch error} +
{error.message}
+ {/await} + + {:else} + +

(anonymous play not supported yet. please return to the landing page and log in from there.)

+ + {/if} + +
-- cgit v1.2.3