diff options
Diffstat (limited to 'haunt/static/js/proof-of-work.js')
| -rw-r--r-- | haunt/static/js/proof-of-work.js | 47 |
1 files changed, 26 insertions, 21 deletions
diff --git a/haunt/static/js/proof-of-work.js b/haunt/static/js/proof-of-work.js index 5dedb66..f2439dd 100644 --- a/haunt/static/js/proof-of-work.js +++ b/haunt/static/js/proof-of-work.js @@ -80,25 +80,30 @@ function raceEndpoint() { }); } -let trigger = document.getElementById("pow-trigger"); -trigger.hidden = false; -trigger.addEventListener("click", (e) => { - trigger.innerHTML = "Please wait..."; - trigger.disabled = true; - raceEndpoint() - .then((result) => { - let resultField = document.getElementById("captcha-alt"); - let challengeIdField = document.getElementById("captcha-alt-id"); - resultField.value = result[0]; - challengeIdField.value = result[1]; - trigger.innerHTML = "Proof-of-Work completed successfully!"; - trigger.disabled = true; - }) - .catch((err) => { - console.log(err); - trigger.innerHTML = "Proof-of-Work failed!"; - trigger.disabled = true; - }); - e.preventDefault(); -}) +window.addEventListener("load", () => { + let trigger = document.getElementById("pow-trigger"); + trigger.removeAttribute("hidden"); + trigger.addEventListener("click", (e) => { + trigger.innerHTML = "Please wait..."; + trigger.disabled = true; + raceEndpoint() + .then((result) => { + let resultField = document.getElementById("captcha-alt"); + let challengeIdField = document.getElementById("captcha-alt-id"); + resultField.value = result[0]; + challengeIdField.value = result[1]; + trigger.innerHTML = "Proof-of-Work completed successfully!"; + trigger.disabled = true; + // Hide the primary captcha, too, to make it clear that it isn't necessary to complete. + let primaryChallenge = document.getElementById("captcha-challenge-primary"); + primaryChallenge.hidden = true; + }) + .catch((err) => { + console.log(err); + trigger.innerHTML = "Proof-of-Work failed!"; + trigger.disabled = true; + }); + e.preventDefault(); + }) +}); |