diff --git a/app.js b/app.js index 77105bd..823ba4c 100644 --- a/app.js +++ b/app.js @@ -55,6 +55,7 @@ app.use( directives: { defaultSrc: ["'self'"], scriptSrc: ["'self'", "'unsafe-inline'"], + scriptSrcAttr: ["'none'"], styleSrc: ["'self'", "'unsafe-inline'"], imgSrc: ["'self'", "data:"], connectSrc: ["'self'", "ws:", "wss:"], diff --git a/views/1v1_spielfeld.ejs b/views/1v1_spielfeld.ejs index 5d7a89c..f414da8 100644 --- a/views/1v1_spielfeld.ejs +++ b/views/1v1_spielfeld.ejs @@ -36,7 +36,7 @@
- +
@@ -53,7 +53,7 @@
⬜ Spieler 1
⬜ Spieler 2
- + @@ -62,7 +62,7 @@ @@ -93,7 +93,7 @@ @@ -347,6 +347,23 @@ }; r.readAsDataURL(file); } + // ── Event-Listener (kein inline-onclick wegen Helmet CSP) ───────────── + document.getElementById("bereit-btn") + ?.addEventListener("click", handleBereit); + + document.getElementById("aufgeben-btn") + ?.addEventListener("click", handleAufgeben); + + document.getElementById("fileInputLeft") + ?.addEventListener("change", function () { + loadAvatar(this, "avImgL", "avLeft"); + }); + + document.getElementById("fileInputRight") + ?.addEventListener("change", function () { + loadAvatar(this, "avImgR", "avRight"); + }); + // ─────────────────────────────────────────────────────────────────────