45 lines
1.4 KiB
JavaScript
45 lines
1.4 KiB
JavaScript
|
|
import BasePage from "../base.js";
|
|
|
|
export default class PageContact extends BasePage {
|
|
static hash = hashPageContact;
|
|
|
|
constructor(router) {
|
|
super(router);
|
|
}
|
|
|
|
initialize() {
|
|
this.sharedInitialize();
|
|
this.hookupCaptcha();
|
|
this.hookupButtonSubmitFormContactUs();
|
|
}
|
|
|
|
hookupCaptcha() {
|
|
const form = document.querySelector(idContactForm);
|
|
const altchaWidget = form.querySelector('altcha-widget');
|
|
|
|
// Listen for verification events from the ALTCHA widget
|
|
if (altchaWidget) {
|
|
altchaWidget.addEventListener('serververification', function(event) {
|
|
// Create or update the hidden input for ALTCHA
|
|
let altchaInput = form.querySelector('input[name="altcha"]');
|
|
if (!altchaInput) {
|
|
altchaInput = document.createElement('input');
|
|
altchaInput.type = 'hidden';
|
|
altchaInput.name = 'altcha';
|
|
form.appendChild(altchaInput);
|
|
}
|
|
|
|
// Set the verification payload
|
|
altchaInput.value = event.detail.payload;
|
|
});
|
|
}
|
|
}
|
|
|
|
hookupButtonSubmitFormContactUs() {
|
|
const button = document.querySelector('form input[type="submit"]');
|
|
button.classList.add(flagButton);
|
|
button.classList.add(flagButtonPrimary);
|
|
}
|
|
}
|