added filter for curren spam mails
This commit is contained in:
parent
35ee0eeb4b
commit
af62a449e6
1 changed files with 16 additions and 5 deletions
|
|
@ -1,5 +1,5 @@
|
||||||
// Configuration and Messages
|
// Configuration and Messages
|
||||||
const debugEnabled = false
|
const debugEnabled = true
|
||||||
const mouseDebugEnabled = false
|
const mouseDebugEnabled = false
|
||||||
const zsrCheckEnabled = false
|
const zsrCheckEnabled = false
|
||||||
const interactionThreshold = 15 // Time in seconds
|
const interactionThreshold = 15 // Time in seconds
|
||||||
|
|
@ -43,6 +43,11 @@ const captcha = document.querySelectorAll('.captcha')
|
||||||
const captchaInput = document.querySelectorAll('.captcha-input')
|
const captchaInput = document.querySelectorAll('.captcha-input')
|
||||||
const captchaVerifyButton = document.querySelectorAll('.captcha-verify')
|
const captchaVerifyButton = document.querySelectorAll('.captcha-verify')
|
||||||
const botBadge = document.createElement('div')
|
const botBadge = document.createElement('div')
|
||||||
|
|
||||||
|
// Form fields
|
||||||
|
const subjectField = document.getElementById('subject')
|
||||||
|
const messageField = document.getElementById('description')
|
||||||
|
|
||||||
if (debugEnabled) {
|
if (debugEnabled) {
|
||||||
botBadge.className = 'bot-badge'
|
botBadge.className = 'bot-badge'
|
||||||
document.body.appendChild(botBadge)
|
document.body.appendChild(botBadge)
|
||||||
|
|
@ -102,6 +107,9 @@ function handleMouseMove(event) {
|
||||||
function checkForBotBehavior() {
|
function checkForBotBehavior() {
|
||||||
let timeSpent = (Date.now() - startTime) / 1000
|
let timeSpent = (Date.now() - startTime) / 1000
|
||||||
botDetected =
|
botDetected =
|
||||||
|
subjectField.value === "I promised." ||
|
||||||
|
// or if messageField Has string "Hi, this is" in it
|
||||||
|
messageField.value.startsWith("Hi, this is") ||
|
||||||
!userInteracted ||
|
!userInteracted ||
|
||||||
interactionCount === 0 ||
|
interactionCount === 0 ||
|
||||||
honeypotInput1.value !== '' ||
|
honeypotInput1.value !== '' ||
|
||||||
|
|
@ -131,7 +139,11 @@ function checkForBotBehavior() {
|
||||||
' honeypotInput2:' +
|
' honeypotInput2:' +
|
||||||
honeypotInput2.value +
|
honeypotInput2.value +
|
||||||
' verifyEmailInput:' +
|
' verifyEmailInput:' +
|
||||||
verifyEmailInput.value
|
verifyEmailInput.value +
|
||||||
|
' subjectField:' +
|
||||||
|
subjectField.value +
|
||||||
|
' messageField:' +
|
||||||
|
messageField.value
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
function handleSubmit(e) {
|
function handleSubmit(e) {
|
||||||
|
|
@ -144,7 +156,6 @@ function handleSubmit(e) {
|
||||||
fakeOut()
|
fakeOut()
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
const formData = new FormData(form)
|
const formData = new FormData(form)
|
||||||
const formDataEncoded = new URLSearchParams(formData).toString()
|
const formDataEncoded = new URLSearchParams(formData).toString()
|
||||||
const formURL = form.action + '.json'
|
const formURL = form.action + '.json'
|
||||||
|
|
@ -164,7 +175,7 @@ function handleSubmit(e) {
|
||||||
})
|
})
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
submitButton.disabled = true
|
submitButton.disabled = true
|
||||||
submitButton.innerHTML = `
|
submitButton.innerHTML = `
|
||||||
<svg class="svg-spin" fill="#ffffff" width="30px" height="30px" viewBox="0 0 9.6 9.6" id="Flat" xmlns="http://www.w3.org/2000/svg"><path d="M5.1 1.2v1.2a0.3 0.3 0 0 1 -0.6 0V1.2a0.3 0.3 0 0 1 0.6 0m3.3 3.3h-1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0 -0.6m-1.691 1.785a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 1 0 0.424 -0.424ZM4.8 6.9a0.3 0.3 0 0 0 -0.3 0.3v1.2a0.3 0.3 0 0 0 0.6 0v-1.2a0.3 0.3 0 0 0 -0.3 -0.3m-1.909 -0.615L2.042 7.133a0.3 0.3 0 0 0 0.424 0.424l0.849 -0.849a0.3 0.3 0 0 0 -0.424 -0.424M2.7 4.8a0.3 0.3 0 0 0 -0.3 -0.3H1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0.3 -0.3m-0.233 -2.758a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 0 0 0.424 -0.424Z"/></svg>
|
<svg class="svg-spin" fill="#ffffff" width="30px" height="30px" viewBox="0 0 9.6 9.6" id="Flat" xmlns="http://www.w3.org/2000/svg"><path d="M5.1 1.2v1.2a0.3 0.3 0 0 1 -0.6 0V1.2a0.3 0.3 0 0 1 0.6 0m3.3 3.3h-1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0 -0.6m-1.691 1.785a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 1 0 0.424 -0.424ZM4.8 6.9a0.3 0.3 0 0 0 -0.3 0.3v1.2a0.3 0.3 0 0 0 0.6 0v-1.2a0.3 0.3 0 0 0 -0.3 -0.3m-1.909 -0.615L2.042 7.133a0.3 0.3 0 0 0 0.424 0.424l0.849 -0.849a0.3 0.3 0 0 0 -0.424 -0.424M2.7 4.8a0.3 0.3 0 0 0 -0.3 -0.3H1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0.3 -0.3m-0.233 -2.758a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 0 0 0.424 -0.424Z"/></svg>
|
||||||
`
|
`
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
|
@ -189,7 +200,7 @@ function handleSubmit(e) {
|
||||||
}
|
}
|
||||||
function fakeOut() {
|
function fakeOut() {
|
||||||
submitButton.disabled = true
|
submitButton.disabled = true
|
||||||
submitButton.innerHTML = `
|
submitButton.innerHTML = `
|
||||||
<svg class="svg-spin" fill="#ffffff" width="30px" height="30px" viewBox="0 0 9.6 9.6" id="Flat" xmlns="http://www.w3.org/2000/svg"><path d="M5.1 1.2v1.2a0.3 0.3 0 0 1 -0.6 0V1.2a0.3 0.3 0 0 1 0.6 0m3.3 3.3h-1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0 -0.6m-1.691 1.785a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 1 0 0.424 -0.424ZM4.8 6.9a0.3 0.3 0 0 0 -0.3 0.3v1.2a0.3 0.3 0 0 0 0.6 0v-1.2a0.3 0.3 0 0 0 -0.3 -0.3m-1.909 -0.615L2.042 7.133a0.3 0.3 0 0 0 0.424 0.424l0.849 -0.849a0.3 0.3 0 0 0 -0.424 -0.424M2.7 4.8a0.3 0.3 0 0 0 -0.3 -0.3H1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0.3 -0.3m-0.233 -2.758a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 0 0 0.424 -0.424Z"/></svg>
|
<svg class="svg-spin" fill="#ffffff" width="30px" height="30px" viewBox="0 0 9.6 9.6" id="Flat" xmlns="http://www.w3.org/2000/svg"><path d="M5.1 1.2v1.2a0.3 0.3 0 0 1 -0.6 0V1.2a0.3 0.3 0 0 1 0.6 0m3.3 3.3h-1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0 -0.6m-1.691 1.785a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 1 0 0.424 -0.424ZM4.8 6.9a0.3 0.3 0 0 0 -0.3 0.3v1.2a0.3 0.3 0 0 0 0.6 0v-1.2a0.3 0.3 0 0 0 -0.3 -0.3m-1.909 -0.615L2.042 7.133a0.3 0.3 0 0 0 0.424 0.424l0.849 -0.849a0.3 0.3 0 0 0 -0.424 -0.424M2.7 4.8a0.3 0.3 0 0 0 -0.3 -0.3H1.2a0.3 0.3 0 0 0 0 0.6h1.2a0.3 0.3 0 0 0 0.3 -0.3m-0.233 -2.758a0.3 0.3 0 0 0 -0.424 0.424l0.849 0.849a0.3 0.3 0 0 0 0.424 -0.424Z"/></svg>
|
||||||
`
|
`
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue