dt / app /utils /mailer.py
gitdeem's picture
Upload 96 files
4e9efe9 verified
# app/services/mailer.py
from flask_mail import Message
from app.extensions import mail
from app.utils.mail_templates import (
generate_register_email,
generate_new_user_notification,
generate_password_reset_email,
generate_password_change_email
)
class EmailService:
def send_register_verification(email: str, code: str):
"""ๅ‘้€ๆณจๅ†Œ้ชŒ่ฏ้‚ฎไปถ [^1]"""
msg = Message(
subject="ๆณจๅ†Œ้ชŒ่ฏ็ ",
recipients=[email],
html=f"""
<h3>ๆ‚จ็š„ๆณจๅ†Œ้ชŒ่ฏ็ ๆ˜ฏ๏ผš{code}</h3>
<p>้ชŒ่ฏ็ 15ๅˆ†้’Ÿๅ†…ๆœ‰ๆ•ˆ</p>
"""
)
mail.send(msg)
@staticmethod
def send_password_reset(email: str, code: str):
"""ๅ‘้€ๅฏ†็ ้‡็ฝฎ้‚ฎไปถ [^2]"""
msg = Message(
subject="ๅฏ†็ ้‡็ฝฎ้ชŒ่ฏ็ ",
recipients=[email],
html=f"""
<h3>ๆ‚จ็š„ๅฏ†็ ้‡็ฝฎ้ชŒ่ฏ็ ๆ˜ฏ๏ผš{code}</h3>
<p>้ชŒ่ฏ็ 30ๅˆ†้’Ÿๅ†…ๆœ‰ๆ•ˆ</p>
"""
)
mail.send(msg)
@staticmethod
def send_register_verification666(email: str, user: dict, code: str):
"""ๅ‘้€ๆณจๅ†Œ้ชŒ่ฏ้‚ฎไปถ"""
msg = Message(
subject="ๆณจๅ†Œ้ชŒ่ฏ็ ",
recipients=[email],
html=generate_register_email(user, code)
)
mail.send(msg)
@staticmethod
def send_new_user_alert(admin_emails: list, user: dict):
"""ๅ‘้€ๆ–ฐ็”จๆˆท้€š็Ÿฅ"""
msg = Message(
subject="ๆ–ฐ็”จๆˆทๆณจๅ†Œ้€š็Ÿฅ",
recipients=admin_emails,
html=generate_new_user_notification(user)
)
mail.send(msg)
@staticmethod
def send_password_reset666(email: str, user: dict, code: str):
"""ๅ‘้€ๅฏ†็ ้‡็ฝฎ้‚ฎไปถ"""
msg = Message(
subject="ๅฏ†็ ้‡็ฝฎ้ชŒ่ฏ็ ",
recipients=[email],
html=generate_password_reset_email(user, code)
)
mail.send(msg)
@staticmethod
def send_password_change_notification(email: str, user: dict):
"""ๅ‘้€ๅฏ†็ ไฟฎๆ”น้€š็Ÿฅ"""
msg = Message(
subject="ๅฏ†็ ไฟฎๆ”น้€š็Ÿฅ",
recipients=[email],
html=generate_password_change_email(user)
)
mail.send(msg)