Skip to content

Commit

Permalink
Add template for magic link auth (#2171)
Browse files Browse the repository at this point in the history
  • Loading branch information
jzbahrai authored May 8, 2024
1 parent 5c0ae89 commit 9471eed
Show file tree
Hide file tree
Showing 2 changed files with 98 additions and 0 deletions.
1 change: 1 addition & 0 deletions app/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,6 +300,7 @@ class Config(object):
INVITATION_EMAIL_TEMPLATE_ID = "4f46df42-f795-4cc4-83bb-65ca312f49cc"
SMS_CODE_TEMPLATE_ID = "36fb0730-6259-4da1-8a80-c8de22ad4246"
EMAIL_2FA_TEMPLATE_ID = "299726d2-dba6-42b8-8209-30e1d66ea164"
EMAIL_MAGIC_LINK_TEMPLATE_ID = "6e97fd09-6da0-4cc8-829d-33cf5b818103"
NEW_USER_EMAIL_VERIFICATION_TEMPLATE_ID = "ece42649-22a8-4d06-b87f-d52d5d3f0a27"
PASSWORD_RESET_TEMPLATE_ID = "474e9242-823b-4f99-813d-ed392e7f1201"
FORCED_PASSWORD_RESET_TEMPLATE_ID = "e9a65a6b-497b-42f2-8f43-1736e43e13b3"
Expand Down
97 changes: 97 additions & 0 deletions migrations/versions/0449_update_magic_link_auth.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
"""
Revision ID: 0448_update_verify_code2
Revises: 0449_update_magic_link_auth
Create Date: 2023-10-05 00:00:00
"""
from datetime import datetime

from alembic import op
from flask import current_app

revision = "0449_update_magic_link_auth"
down_revision = "0448_update_verify_code2"

near_content = "\n".join(
[
"[[en]]"
"Hi ((name)),"
""
"Here is your magic link to log in to GC Notify:"
""
"^ **[Sign-in](((link_url_en)))**"
"[[/en]]"
""
"---"
""
"[[fr]]"
"Bonjour ((name)),"
""
"Voici votre lien magique pour vous connecter à Notification GC:"
""
"^ **[Connectez-vous](((link_url_fr)))**"
"[[/fr]]"
]
)


template = {
"id": current_app.config["EMAIL_MAGIC_LINK_TEMPLATE_ID"],
"template_type": "email",
"subject": "Sign in | Connectez-vous",
"content": near_content,
"process_type": "priority",
"name": "Sign in - Magic Link | Se connecter - Lien magique",
}


def upgrade():
conn = op.get_bind()

template_insert = """
INSERT INTO templates (id, name, template_type, created_at, updated_at, content, service_id, subject, created_by_id, version, archived, process_type, hidden)
VALUES ('{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', false, '{}', false)
"""

template_history_insert = """
INSERT INTO templates_history (id, name, template_type, created_at, content, archived, service_id, subject,
created_by_id, version, process_type, hidden)
VALUES ('{}', '{}', '{}', '{}', '{}', False, '{}', '{}', '{}', {}, '{}', false)
"""
op.execute(
template_insert.format(
template["id"],
template["name"],
template["template_type"],
datetime.utcnow(),
datetime.utcnow(),
template["content"],
current_app.config["NOTIFY_SERVICE_ID"],
template["subject"],
current_app.config["NOTIFY_USER_ID"],
1,
template["process_type"],
)
)

op.execute(
template_history_insert.format(
template["id"],
template["name"],
template["template_type"],
datetime.utcnow(),
template["content"],
current_app.config["NOTIFY_SERVICE_ID"],
template["subject"],
current_app.config["NOTIFY_USER_ID"],
1,
template["process_type"],
)
)

op.execute("INSERT INTO auth_type (name) VALUES ('magic_link')")


def downgrade():
op.execute("DELETE FROM auth_type WHERE name = 'magic_link'")

0 comments on commit 9471eed

Please sign in to comment.