from flask.ext.mail import Message
from app import mail, app
CONFIRM_MESSAGE = """
This email address was recently used to register the username '%s'
at Quay.io.
To confirm this email address, please click the following link:
https://quay.io/confirm?code=%s
"""
CHANGE_MESSAGE = """
This email address was recently asked to become the new e-mail address for username '%s'
at Quay.io.
To confirm this email address, please click the following link:
https://quay.io/confirm?code=%s
"""
RECOVERY_MESSAGE = """
A user at Quay.io has attempted to recover their account
using this email.
If you made this request, please click the following link to recover your account and
change your password:
https://quay.io/recovery?code=%s
If you did not make this request, your account has not been compromised and the user was
not given access. Please disregard this email.
"""
SUBSCRIPTION_CHANGE = """
Change: {0}
Customer id: {1}
Customer email: {2}
Quay user or org name: {3}
"""
PAYMENT_FAILED = """
Hi {0},
Your recent payment for Quay.io failed, which usually results in our payments processorcanceling
your subscription automatically. If you would like to continue to use Quay.io without interruption,
please add a new card to Quay.io and re-subscribe to your plan.
You can find the card and subscription management features under your account settings.
Thanks and have a great day!
-Quay.io Support
"""
AUTH_FORREPO_MESSAGE = """
A request has been made to send notifications to this email address for the Quay.io repository %s/%s.
To confirm this email address, please click the following link:
https://quay.io/authrepoemail?code=%s
"""
SUBSCRIPTION_CHANGE_TITLE = 'Subscription Change - {0} {1}'
def send_change_email(username, email, token):
msg = Message('Quay.io email change. Please confirm your email.',
sender='support@quay.io', # Why do I need this?
recipients=[email])
msg.html = CHANGE_MESSAGE % (username, token, token)
mail.send(msg)
def send_confirmation_email(username, email, token):
msg = Message('Welcome to Quay.io! Please confirm your email.',
sender='support@quay.io', # Why do I need this?
recipients=[email])
msg.html = CONFIRM_MESSAGE % (username, token, token)
mail.send(msg)
def send_repo_authorization_email(namespace, repository, email, token):
msg = Message('Quay.io Notification: Please confirm your email.',
sender='support@quay.io', # Why do I need this?
recipients=[email])
msg.html = AUTH_FORREPO_MESSAGE % (namespace, repository, namespace, repository, token, token)
mail.send(msg)
def send_recovery_email(email, token):
msg = Message('Quay.io account recovery.',
sender='support@quay.io', # Why do I need this?
recipients=[email])
msg.html = RECOVERY_MESSAGE % (token, token)
mail.send(msg)
def send_invoice_email(email, contents):
msg = Message('Quay.io payment received - Thank you!',
sender='support@quay.io', # Why do I need this?
recipients=[email])
msg.html = contents
mail.send(msg)
def send_subscription_change(change_description, customer_id, customer_email, quay_username):
title = SUBSCRIPTION_CHANGE_TITLE.format(quay_username, change_description)
msg = Message(title, sender='support@quay.io', recipients=['stripe@quay.io'])
msg.html = SUBSCRIPTION_CHANGE.format(change_description, customer_id, customer_email,
quay_username)
mail.send(msg)
def send_payment_failed(customer_email, quay_username):
msg = Message('Quay.io Subscription Payment Failure', sender='support@quay.io',
recipients=[customer_email])
msg.html = PAYMENT_FAILED.format(quay_username)
mail.send(msg)