def accept_incoming_emails(): email_address = request.form['recipient'] email = EmailMessage(email_id=generate_email_id(), sender=request.form['from'], subject=request.form['subject'], text=request.form.get('body-plain'), html=request.form.get('body-html')) workshop_secret = get_workshop_secret_from_email_address(email_address) workshop = get_db().workshops.find_and_modify( query={"emailSecret": workshop_secret}, update={"$push": { "emails": email.as_db_dict() }}) if workshop is None: return error_response( "Workshop not found" ), 404 # TODO send reply that invalid email was sent? ensure_mails_were_sent_to_users([email], workshop['users'], workshop) ensure_mail_were_sent_to_mentors(email, workshop['mentors'], workshop) return success_response("Email processed.")
def send_email(self): "Send email" email = EmailMessage(self) if self.stream and self.stream.outgoing_server_name: email.send_email()
import mongomock from emails import EmailMessage import flaskr NAME = "Jan Kowalski" EMAIL_ADDRESS = "*****@*****.**" TEST_KEY = "TEST_KEY" FIRST_MAIL_SUBJECT = "Introduction to test workshop" SECOND_MAIL_SUBJECT = "Link to repository" WORKSHOP_ID = "test_workshop" WORKSHOP_EMAIL_SECRET = "tajny-kod" CURRENT_DATE = datetime.datetime(2007, 12, 6, 16, 29, 43, 79043) EMAIL_MESSAGE = EmailMessage(FIRST_MAIL_SUBJECT, "text", sender="*****@*****.**", date=CURRENT_DATE, email_id=1) def user_in_db(confirmed=False): return { "email": EMAIL_ADDRESS, "name": NAME, "key": TEST_KEY, "isConfirmed": confirmed, "emails": [] } def workshop_in_db(with_user, with_mail):