Fix contact form submission errors and restore full functionality

- Fix JavaScript syntax errors preventing form submission
- Update reCAPTCHA configuration with working test keys
- Restore comprehensive spam protection (reCAPTCHA v3, AJAX validation, rate limiting)
- Switch from minified to source JS file to apply critical fixes
- Add missing security headers and form validation

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
root
2025-06-18 05:47:55 +00:00
parent cffe81f960
commit 0a3521a955
4 changed files with 71 additions and 24 deletions

View File

@@ -91,6 +91,11 @@ $twitter_card_image = "https://ukdataservices.co.uk/assets/images/ukds-main-logo
</script>
-->
<!-- reCAPTCHA v3 -->
<?php require_once '.recaptcha-config.php'; ?>
<script src="https://www.google.com/recaptcha/api.js?render=<?php echo RECAPTCHA_SITE_KEY; ?>"></script>
<script>window.recaptchaSiteKey = '<?php echo RECAPTCHA_SITE_KEY; ?>';</script>
<!-- Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@@ -99,7 +104,7 @@ $twitter_card_image = "https://ukdataservices.co.uk/assets/images/ukds-main-logo
<!-- Resource Preloading for Performance -->
<link rel="preload" href="assets/css/main.min.css" as="style">
<link rel="preload" href="assets/images/ukds-main-logo.webp" as="image">
<link rel="preload" href="assets/js/main.min.js" as="script">
<link rel="preload" href="assets/js/main.js" as="script">
<!-- Critical CSS for Above-the-Fold -->
<style>
@@ -910,6 +915,12 @@ $twitter_card_image = "https://ukdataservices.co.uk/assets/images/ukds-main-logo
<textarea id="message" name="message" rows="5" required placeholder="Please outline your data requirements, business objectives, compliance considerations, and any specific technical specifications..."></textarea>
</div>
<!-- Hidden fields for security -->
<input type="hidden" name="recaptcha_response" id="recaptcha_response">
<input type="hidden" name="form_timestamp" id="form_timestamp">
<input type="hidden" name="interaction_token" id="interaction_token">
<input type="text" name="website" style="display:none;">
<button type="submit" class="btn btn-primary btn-full">Submit Enquiry</button>
</form>
</div>
@@ -974,7 +985,7 @@ $twitter_card_image = "https://ukdataservices.co.uk/assets/images/ukds-main-logo
</footer>
<!-- Scripts -->
<script src="assets/js/main.min.js"></script>
<script src="assets/js/main.js"></script>
<!-- Service Worker Registration -->
<script>