def contact_us_emails(sender, **kwargs): """ Whenever a user submits a message using the contact us form this forwards the message to [email protected] with some additional data. """ reply_to = [] cc = [] user_email = kwargs['user_email'] editor_wp_username = kwargs['editor_wp_username'] body = kwargs['body'] reply_to.append(user_email) logger.info( u'Received contact us form submit signal for {editor_wp_username}; ' 'preparing to send email to [email protected].'.format( editor_wp_username=editor_wp_username)) mail_instance = MagicMailBuilder(template_mail_cls=InlineCSSTemplateMail) email = mail_instance.contact_us_email('*****@*****.**', { 'editor_wp_username': editor_wp_username, 'body': body }) email.extra_headers["Reply-To"] = ", ".join(reply_to) if kwargs['cc']: cc.append(user_email) email.extra_headers["Cc"] = ", ".join(cc) logger.info('Email constructed.') email.send() logger.info(u'Email queued.')
def contact_us_emails(sender, **kwargs): """ Whenever a user submits a message using the contact us form this forwards the message to [email protected] with some additional data. """ reply_to = [] cc = [] user_email = kwargs["user_email"] editor_wp_username = kwargs["editor_wp_username"] body = kwargs["body"] reply_to.append(user_email) logger.info( "Received contact us form submit signal for {editor_wp_username}; " "preparing to send email to [email protected].".format( editor_wp_username=editor_wp_username ) ) mail_instance = MagicMailBuilder(template_mail_cls=InlineCSSTemplateMail) email = mail_instance.contact_us_email( "*****@*****.**", {"editor_wp_username": editor_wp_username, "body": body}, ) email.extra_headers["Reply-To"] = ", ".join(reply_to) if kwargs["cc"]: cc.append(user_email) email.extra_headers["Cc"] = ", ".join(cc) logger.info("Email constructed.") email.send() logger.info("Email queued.")
def test_contact_us_emails(self, mock_email): factory = RequestFactory() request = factory.post(get_form_target()) request.user = UserFactory() editor = EditorFactory() reply_to = ['*****@*****.**'] cc = ['*****@*****.**'] self.assertEqual(len(mail.outbox), 0) mail_instance = MagicMailBuilder(template_mail_cls=InlineCSSTemplateMail) email = mail_instance.contact_us_email('*****@*****.**', {'editor_wp_username': editor.wp_username, 'body': 'This is a test email'}) email.extra_headers["Reply-To"] = ", ".join(reply_to) email.extra_headers["Cc"] = ", ".join(cc) email.send() self.assertEqual(len(mail.outbox), 1)