From f80111dba4c60966ac508a1eeff5bbb21f184f00 Mon Sep 17 00:00:00 2001 From: codex Date: Thu, 11 Jun 2026 21:02:25 +0200 Subject: [PATCH] Refine join captcha layout --- kkkmeet-server.el | 2 +- public/index.html | 19 ++++++++++--------- public/styles.css | 32 ++++++++++++++++---------------- server.js | 2 +- 4 files changed, 28 insertions(+), 27 deletions(-) diff --git a/kkkmeet-server.el b/kkkmeet-server.el index ec23bd8..fad9511 100644 --- a/kkkmeet-server.el +++ b/kkkmeet-server.el @@ -135,7 +135,7 @@ (defun kkkmeet-server--captcha-accepted-p (value) "Return non-nil when VALUE matches the configured captcha passphrase." - (equal (or value "") (kkkmeet-server--captcha-passphrase))) + (string-equal-ignore-case (or value "") (kkkmeet-server--captcha-passphrase))) (defun kkkmeet-server--captcha-svg () "Return an SVG captcha image for the configured passphrase." diff --git a/public/index.html b/public/index.html index e119f1d..e214ba6 100644 --- a/public/index.html +++ b/public/index.html @@ -150,15 +150,16 @@

Choose your name

-
- -
+ +
+ Prove that you are not a bot +
input { - width: 100%; -} - .captcha-control { display: grid; - grid-template-columns: 160px minmax(0, 1fr); - gap: 8px; - align-items: stretch; + gap: 7px; } .captcha-control[hidden] { display: none; } +.captcha-label { + color: #d5dbe3; + font-size: 13px; + font-weight: 650; +} + +.captcha-row { + display: grid; + grid-template-columns: 160px minmax(0, 1fr); + gap: 8px; + align-items: stretch; +} + .captcha-control canvas { width: 160px; height: 42px; @@ -148,8 +149,7 @@ h1 { } @media (max-width: 620px) { - .join-fields, - .captcha-control { + .captcha-row { grid-template-columns: 1fr; } diff --git a/server.js b/server.js index 0972831..6243559 100644 --- a/server.js +++ b/server.js @@ -90,7 +90,7 @@ function normalizeClientId(value) { } function captchaAccepted(value) { - return String(value || "") === captchaPassphrase; + return String(value || "").toLowerCase() === captchaPassphrase.toLowerCase(); } function captchaSvg() {