Esempio n. 1
0
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.")
Esempio n. 2
0
 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):