]> git.cworth.org Git - lmno.games/blobdiff - lmno.js
Add simple JavaScript processing of game ID form submission
[lmno.games] / lmno.js
diff --git a/lmno.js b/lmno.js
new file mode 100644 (file)
index 0000000..f1f9cd7
--- /dev/null
+++ b/lmno.js
@@ -0,0 +1,32 @@
+function undisplay(element) {
+  element.style.display="none";
+}
+
+function add_message(severity, message) {
+  message = `<div class="message ${severity}" onclick="undisplay(this)">
+<span class="hide-button" onclick="undisplay(this.parentElement)">&times;</span>
+${message}
+</div>`;
+  const message_area = document.getElementById('message-area');
+  message_area.insertAdjacentHTML('beforeend', message);
+}
+
+function join_loadend(request, game_id) {
+  if (request.status === 404) {
+    add_message("danger", game_id + " is not a valid game ID. Try again.");
+    return;
+  }
+}
+
+function lmno_join(form) {
+  const game_id = form.id.value;
+
+  var request = new XMLHttpRequest();
+  request.addEventListener("loadend", () => join_loadend(request, game_id));
+
+  request.open("GET", "/" + game_id);
+  request.setRequestHeader("Content-Type", "application/json; charset=UTF-8");
+  request.send();
+
+  form.reset();
+}