aboutsummaryrefslogtreecommitdiff
path: root/captcha-demo.js
diff options
context:
space:
mode:
Diffstat (limited to 'captcha-demo.js')
-rw-r--r--captcha-demo.js24
1 files changed, 16 insertions, 8 deletions
diff --git a/captcha-demo.js b/captcha-demo.js
index 28d331d..9c1ad55 100644
--- a/captcha-demo.js
+++ b/captcha-demo.js
@@ -22,19 +22,27 @@
if (document.getElementsByClassName("recaptcha-success").length > 0)
return;
- const demo_div = document.getElementById("recaptcha-demo");
+ const demo_submit = document.getElementById("recaptcha-demo-submit");
+ const demo_div = document.getElementById("recaptcha-demo");
+ const token_field = document.createElement("textarea");
const demo_site_key = demo_div.getAttribute("data-sitekey");
+ token_field.name = "g-recaptcha-response";
+ token_field.style.display = "none";
+
while (demo_div.nextElementSibling !== null)
demo_div.nextElementSibling.remove();
- const token = await HCHA.run(demo_div, demo_site_key);
-
- const token_field = document.createElement("textarea");
-
demo_div.after(token_field);
- token_field.name = "g-recaptcha-response";
- token_field.style.display = "none";
- token_field.value = token;
+ demo_submit.setAttribute("disabled", "");
+
+ for await (const token of HCHA.run(demo_div, demo_site_key)) {
+ if (token === null) {
+ demo_submit.setAttribute("disabled", "");
+ } else {
+ token_field.value = token;
+ demo_submit.removeAttribute("disabled");
+ }
+ }
})();