From c3cb7b0df82479016c252ef45a302f566bd569f6 Mon Sep 17 00:00:00 2001 From: Griffin Smith Date: Mon, 13 Dec 2021 21:28:25 -0500 Subject: feat(grfn/bbbg): Init This will eventually become a signup sheet + no-show tracker for my local board game meetup group Change-Id: Id8d1d80d95d1e2fda5041275cff2fecfd6fa43f1 --- users/grfn/bbbg/resources/main.js | 49 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 users/grfn/bbbg/resources/main.js (limited to 'users/grfn/bbbg/resources/main.js') diff --git a/users/grfn/bbbg/resources/main.js b/users/grfn/bbbg/resources/main.js new file mode 100644 index 000000000000..d4752f114167 --- /dev/null +++ b/users/grfn/bbbg/resources/main.js @@ -0,0 +1,49 @@ +window.onload = () => { + console.log("loaded"); + const input = document.getElementById("name-autocomplete"); + if (input != null) { + const eventID = document.getElementById("event-id").value; + + const autocomplete = new autoComplete({ + selector: "#name-autocomplete", + placeHolder: "Enter your name", + data: { + src: async (query) => { + const resp = await fetch( + `/attendees.json?q=${query}&event_id=${eventID}&attended=false` + ); + console.log("got resp"); + const { results } = await resp.json(); + return results; + }, + keys: ["bbbg.attendee/meetup-name"], + }, + resultItem: { + highlight: { + render: true, + }, + }, + }); + + input.addEventListener("selection", function (event) { + const attendee = event.detail.selection.value; + event.target.value = attendee["bbbg.attendee/meetup-name"]; + + const attendeeID = attendee["bbbg.attendee/id"]; + document.getElementById("attendee-id").value = attendeeID; + document.getElementById("signup-form").removeAttribute("disabled"); + document + .getElementById("signup-form") + .querySelector('input[type="submit"]') + .removeAttribute("disabled"); + }); + } + + document.querySelectorAll("form").forEach((form) => { + form.onsubmit = (e) => { + if (e.target.attributes.disabled) { + e.preventDefault(); + } + }; + }); +}; -- cgit 1.4.1