summaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
Diffstat (limited to 'static')
-rw-r--r--static/css/style.css65
-rw-r--r--static/js/dynamic-comment-form.js25
-rw-r--r--static/js/proof-of-work.js7
3 files changed, 75 insertions, 22 deletions
diff --git a/static/css/style.css b/static/css/style.css
index 3328f8c..442af67 100644
--- a/static/css/style.css
+++ b/static/css/style.css
@@ -278,7 +278,7 @@ a:hover {
border-color: #2e8b57
}
-.comment-form textarea,.form-row input,.search-module input {
+#comment-form textarea,.form-row input,.search-module input {
flex: 1;
font-size: 9px;
border: 1px solid #ccc;
@@ -286,7 +286,7 @@ a:hover {
font-family: inherit
}
-.comment-form button,.search-module button {
+#comment-form button,.search-module button {
text-transform: uppercase;
font-size: 9px;
cursor: pointer
@@ -392,20 +392,21 @@ hr {
border: 1px solid #ccc
}
-.comment-form {
+#comment-form {
+ display: flex;
flex-direction: column
}
-.comment-form,.form-row,.legacy-warning {
+#comment-form,.form-row,.legacy-warning {
display: flex;
gap: 8px
}
-.comment-form textarea,.form-row input {
+#comment-form textarea,.form-row input {
padding: 5px
}
-.comment-form button {
+#comment-form button {
align-self: flex-start;
background: #333;
color: #fff;
@@ -413,10 +414,60 @@ hr {
padding: 5px 15px
}
-.comment-form button:hover {
+#comment-form button:hover {
background: #2e8b57
}
+#captcha-image-wrapper img {
+ border: 1px solid #ccc;
+ background: #fff;
+ display: block;
+ max-width: 100%
+}
+
+#captcha-input-wrapper {
+ display: flex;
+ flex-direction: row;
+ align-items: flex-end;
+ gap: 8px;
+ margin-top: 12px
+}
+
+#captcha-input-wrapper input {
+ flex: 1;
+ font-size: 9px;
+ border: 1px solid #ccc;
+ padding: 5px
+}
+
+#captcha-challenge-trigger {
+ height: 23px;
+ padding: 0 10px;
+ font-size: 9px;
+ text-transform: uppercase;
+ cursor: pointer;
+ background: #eee;
+ border: 1px solid #ccc
+}
+
+#captcha-alternative-wrapper {
+ align-items: center;
+ gap: 10px;
+}
+
+#captcha-alternative-wrapper button {
+ background: #eee;
+ border: 1px solid #ccc;
+ color: #333;
+ font-size: 9px
+}
+
+#captcha-alternative-wrapper p {
+ font-size: 9px;
+ margin: 0;
+ color: #999
+}
+
.legacy-warning {
background: linear-gradient(to bottom,#fff3e0 0,#ffe0b2 100%);
border: 1px dotted #fb8c00;
diff --git a/static/js/dynamic-comment-form.js b/static/js/dynamic-comment-form.js
index ff5f875..809a755 100644
--- a/static/js/dynamic-comment-form.js
+++ b/static/js/dynamic-comment-form.js
@@ -42,19 +42,15 @@ function makeRequest (method, url) {
}
window.addEventListener("load", () => {
- let primaryDisplay = document.getElementById("comment-form-primary");
+ let primaryDisplay = document.getElementById("comment-form");
primaryDisplay.removeAttribute("hidden");
- let altDisplay = document.getElementById("comment-form-alt");
- altDisplay.remove();
+ const altDisplay = document.getElementById("captcha-alternative-wrapper");
let trigger = document.getElementById("captcha-challenge-trigger");
- let triggerBlock = document.getElementById("captcha-trigger-block");
trigger.addEventListener("click", (event) => {
- let captchaField = document.getElementById("comment-captcha");
-
let captchaId = document.getElementById("captcha-id");
- let captchaImage = document.getElementById("captcha-image");
+ let wrapper = document.getElementById("captcha-image-wrapper");
trigger.innerHTML = "Please wait...";
trigger.disabled = true;
@@ -65,13 +61,17 @@ window.addEventListener("load", () => {
// Update form with parsed values.
let challengeData = JSON.parse(data);
captchaId.value = challengeData["challenge-id"];
- captchaImage.src = challengeData["image"];
- // Unhide fieldset.
- captchaField.removeAttribute("hidden");
+ const img = document.createElement('img');
+ img.src = challengeData["image"];
+ // img.src = `data:image/png;base64,${base64Data}`;
+ wrapper.innerHTML = '';
+ wrapper.appendChild(img);
+
+ trigger.hidden = true;
- // Hide initial trigger.
- triggerBlock.remove();
+ // Unhide fieldset.
+ altDisplay.removeAttribute("hidden");
})
.catch(console.err);
}
@@ -80,7 +80,6 @@ window.addEventListener("load", () => {
});
});
-
window.addEventListener("load", () => {
// Unhide additional comment actions if Javascript is enabled.
let additionalActionsRows = document.querySelectorAll(".comment-additional-actions");
diff --git a/static/js/proof-of-work.js b/static/js/proof-of-work.js
index b4b5c57..f2f0484 100644
--- a/static/js/proof-of-work.js
+++ b/static/js/proof-of-work.js
@@ -81,7 +81,7 @@ function raceEndpoint() {
}
window.addEventListener("load", () => {
- let trigger = document.getElementById("pow-trigger");
+ let trigger = document.getElementById("proof-of-work-trigger");
trigger.removeAttribute("hidden");
trigger.addEventListener("click", (e) => {
trigger.innerHTML = "Please wait...";
@@ -96,8 +96,11 @@ window.addEventListener("load", () => {
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");
+ let primaryChallenge = document.getElementById("captcha-image-wrapper");
primaryChallenge.hidden = true;
+ let solutionInput = document.getElementById("captcha-solution");
+ solutionInput.hidden = true;
+ solutionInput.removeAttribute("required");
})
.catch((err) => {
console.log(err);