diff --git a/.blacklist b/.blacklist new file mode 100644 index 0000000..62d1fce --- /dev/null +++ b/.blacklist @@ -0,0 +1 @@ +mchretien@forum.dk diff --git a/src/storefront/tasks.py b/src/storefront/tasks.py index dadbf7f..ba0cdab 100644 --- a/src/storefront/tasks.py +++ b/src/storefront/tasks.py @@ -8,15 +8,24 @@ from templated_email import send_templated_mail logger = get_task_logger(__name__) -COTACT_FORM_TEMPLATE = 'storefront/contact_form' +CONTACT_FORM_TEMPLATE = 'storefront/contact_form' + @shared_task(name='contact_form_email') def contact_form_email(formdata): - send_templated_mail( - template_name=COTACT_FORM_TEMPLATE, - from_email=settings.DEFAULT_FROM_EMAIL, - recipient_list=[settings.DEFAULT_CONTACT_EMAIL], - context=formdata - ) + with open(f'{settings.BASE_DIR.parent}/.blacklist') as blacklist: + if formdata.get('email_address') not in blacklist.read(): + send_templated_mail( + template_name=CONTACT_FORM_TEMPLATE, + from_email=settings.DEFAULT_FROM_EMAIL, + recipient_list=[settings.DEFAULT_CONTACT_EMAIL], + context=formdata + ) - logger.info(f"Contact form email sent from {formdata['email_address']}") + logger.info( + f"Contact form email sent from {formdata['email_address']}" + ) + else: + logger.warn( + f"{formdata['email_address']} tried to send an email but was on the blacklist" + )