friendly-challenge
Version:
The client code used for FriendlyCaptcha (widget script, html, styling and webworker solvers)
51 lines (43 loc) • 1.93 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>FriendlyCaptcha</title>
<script src="https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/url-polyfill@1.1.9/url-polyfill.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/whatwg-fetch@3.1.0"></script>
<script src="https://cdn.jsdelivr.net/npm/object-assign-polyfill@0.1.0"></script>
<script type="module" src="widget.module.min.js" defer async></script>
<script nomodule src="widget.min.js" defer async></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<!-- This index.html is used for e2e testing -->
<form>
<div class="frc-captcha" data-sitekey="FCMGEMUD2KTDSQ5H" data-callback="doneCallback"></div>
</form>
<button id="start-button">Start widget</button>
<button id="reset-button">Reset widget</button>
<button id="destroy-button">Destroy widget</button>
<button id="theme-button">Change Theme</button>
<script>
function doneCallback() {
const doneEl = document.createElement("div")
doneEl.id = "frc-captcha-done-callback-generated-element";
document.body.appendChild(doneEl);
}
document.querySelector("#start-button").addEventListener("click", function() {
friendlyChallenge.autoWidget.start();
});
document.querySelector("#reset-button").addEventListener("click", function() {
friendlyChallenge.autoWidget.reset();
});
document.querySelector("#destroy-button").addEventListener("click", function() {
friendlyChallenge.autoWidget.destroy();
});
document.querySelector("#theme-button").addEventListener("click", function() {
document.querySelector(".frc-captcha").classList.toggle("dark");
});
</script>
</body>
</html>