X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=index.html;h=c556792845e29f6cb668de5c176320516ba3180c;hb=ebe06a9b6759bb70c3c64d7c947e620cf9384412;hp=d3f25aa2494815938573881513d42dcfd9ad4fd1;hpb=3fb2bec10ed7b64ae2455abde1febce6156d854e;p=zombocom-ai
diff --git a/index.html b/index.html
index d3f25aa..c556792 100644
--- a/index.html
+++ b/index.html
@@ -64,7 +64,7 @@
-
+
@@ -112,6 +112,7 @@ mute.addEventListener("click", () => {
const name_input = document.querySelector("#name");
const name_dialog = document.querySelector("#name-dialog");
+ var informed_name;
const images = document.querySelector("#images");
const zombo_form = document.querySelector("#zombo-form");
const prompt = document.querySelector("#prompt");
@@ -141,7 +142,16 @@ mute.addEventListener("click", () => {
socket.on('inform-name', (name) => {
console.log("Received inform-name event: " + name);
+
+ /* When we receive a name we store it in 3 places:
+ *
+ * * The informed_name variable (confirming what the server knows)
+ * * The name_input field (so the user will see that in their profile)
+ * * In localStorage (for use in a future session)
+ */
+ informed_name = name;
name_input.value = name;
+ localStorage.setItem('name', name);
});
socket.on('reset', () => {
@@ -185,11 +195,18 @@ mute.addEventListener("click", () => {
figure.appendChild(comment_form);
comment_input.addEventListener('focus', () => {
- /* Do nothing if name is already set. */
- if (name_input.value)
+ /* If the server has informed us it has our name, we are done. */
+ if (informed_name)
+ return;
+
+ /* If server has no name, check local storage. */
+ const name = localStorage.getItem('name');
+ if (name) {
+ socket.emit('set-name', name);
return;
+ }
- /* Otherwise, bring up the modal dialog to set the name. */
+ /* Failing both, bring up the modal dialog to set the name. */
name_dialog.showModal();
});
@@ -240,6 +257,8 @@ mute.addEventListener("click", () => {
"An image of",
"A pencil sketch of",
"A watercolor of",
+ "A 3D rendering of",
+ "A marble statue of",
];
const subject = [
" a modern home",
@@ -252,6 +271,7 @@ mute.addEventListener("click", () => {
" sci-fi buildings",
" pastel purple clouds",
" a Teenage Mutant Ninja Turtle",
+ " Pikachu",
];
const scenery = [
" in tropical surroundings",
@@ -270,6 +290,7 @@ mute.addEventListener("click", () => {
" on the streets of London at night with neon lights flashing",
" that is part octopus",
" melting into a puddle",
+ " on a birthday cake",
];
const artist = [
", unreal engine 5",
@@ -281,6 +302,8 @@ mute.addEventListener("click", () => {
", fantasy art, neon fog",
", epic lighting from above",
", trending on artstation",
+ " by Gustav Klimt",
+ " by Leonardo da Vinci",
];
prompt.value = random_from(art_type) + random_from(subject) +