From 8fa16c343c9ce2e7e2514018062703a763d233e5 Mon Sep 17 00:00:00 2001 From: Benno Tielen Date: Wed, 18 Feb 2026 08:12:36 +0100 Subject: [PATCH] fix: spam --- src/utils/actions.ts | 4 +--- src/utils/detectSpam.ts | 13 +++++++------ 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/utils/actions.ts b/src/utils/actions.ts index 473a8bb..a6a0cf0 100644 --- a/src/utils/actions.ts +++ b/src/utils/actions.ts @@ -42,16 +42,14 @@ export async function send(toEmail: string, prevState: any, formData: FormData) try { const resend = new Resend(process.env.RESEND_API_KEY); - const resp = await resend.emails.send({ + await resend.emails.send({ from: 'noreply@dreikoenige.berlin', replyTo: validatedFields.data.email, to: toEmail, subject: `Über Kontaktformular: ${validatedFields.data.subject}`, text: `Nachricht von ${validatedFields.data.name} (${validatedFields.data.email}): \n\n ${validatedFields.data.message}` }); - console.log(resp); } catch (e) { - console.error(e); return { message: "Fehler beim senden der Nachricht." }; } diff --git a/src/utils/detectSpam.ts b/src/utils/detectSpam.ts index b8fe385..26e7b35 100644 --- a/src/utils/detectSpam.ts +++ b/src/utils/detectSpam.ts @@ -1,5 +1,7 @@ import LanguageDetect from 'languagedetect' +const lngDetector = new LanguageDetect(); + /** * This function determines whether a given message can be classified as spam. * @@ -13,16 +15,15 @@ import LanguageDetect from 'languagedetect' */ export const isSpam = (message: string): boolean => { - if (message.includes('https://') || message.includes('http://') || message.includes('$')) { - const lngDetector = new LanguageDetect(); - const language = lngDetector.detect(message)[0][0]; - return language !== 'german'; - } - if (message.includes('dreikoenige.berlin')) { return true; } + if (message.includes('https://') || message.includes('http://') || message.includes('$') || message.includes('www')) { + const language = lngDetector.detect(message)[0][0]; + return language !== 'german'; + } + if (message.split(" ").length < 5) { return true }