From d466b3a5c6218496f965d830b439c3fb3e3f8126 Mon Sep 17 00:00:00 2001 From: Florian Aucomte Date: Mon, 29 Apr 2024 17:42:21 +0100 Subject: [PATCH 1/7] build: Enable atomic transactions (#1605) --- example_project/rapid_router_test_settings.py | 1 + example_project/settings.py | 1 + 2 files changed, 2 insertions(+) diff --git a/example_project/rapid_router_test_settings.py b/example_project/rapid_router_test_settings.py index 7aa6d7032..c20128663 100644 --- a/example_project/rapid_router_test_settings.py +++ b/example_project/rapid_router_test_settings.py @@ -41,6 +41,7 @@ "NAME": os.path.join( os.path.abspath(os.path.dirname(__file__)), "db.sqlite3" ), # Or path to database file if using sqlite3. + "ATOMIC_REQUESTS": True, } } diff --git a/example_project/settings.py b/example_project/settings.py index a06b1d3d5..7ce36365b 100644 --- a/example_project/settings.py +++ b/example_project/settings.py @@ -28,6 +28,7 @@ "NAME": os.path.join( os.path.abspath(os.path.dirname(__file__)), "db.sqlite3" ), # Or path to database file if using sqlite3. + "ATOMIC_REQUESTS": True, } } From 9064b6cd78f099fc66141c6a1f259fad203c881a Mon Sep 17 00:00:00 2001 From: Eve Martin Date: Tue, 7 May 2024 11:14:34 +0000 Subject: [PATCH 2/7] replace level management email --- game/level_management.py | 28 +++++++++++----------------- game/messages.py | 11 ----------- 2 files changed, 11 insertions(+), 28 deletions(-) diff --git a/game/level_management.py b/game/level_management.py index 5182385fb..afeda2284 100644 --- a/game/level_management.py +++ b/game/level_management.py @@ -3,14 +3,10 @@ from builtins import str from itertools import chain -from common.helpers.emails import NOTIFICATION_EMAIL, send_email +from common.mail import campaign_ids, send_dotdigital_email from game.character import get_character_by_pk from game.decor import get_decor_element -from game.messages import ( - level_creation_email_subject, - level_creation_email_text_content, -) from game.theme import get_theme_by_pk from .models import Block, LevelBlock, LevelDecor @@ -191,16 +187,14 @@ def email_new_custom_level( teacher_email, moderate_url, level_url, home_url, student_name, class_name ): # email teacher when a new custom level is created by a pupil, so it can be moderated ASAP - send_email( - NOTIFICATION_EMAIL, - [teacher_email], - level_creation_email_subject(), - level_creation_email_text_content().format( - moderate_url=moderate_url, - level_url=level_url, - student_name=student_name, - class_name=class_name, - home_url=home_url, - ), - level_creation_email_subject(), + + send_dotdigital_email( + campaign_ids["level_creation"], + [teacher_email], + personalization_values={ + "STUDENT_NAME": student_name, + "CLASS_NAME": class_name, + "LEVEL_URL": level_url, + "MODERATE_URL": moderate_url + } ) diff --git a/game/messages.py b/game/messages.py index 01bdef81d..323af5bb4 100644 --- a/game/messages.py +++ b/game/messages.py @@ -1,17 +1,6 @@ from builtins import str -def level_creation_email_subject(): - return "Custom level to moderate" - - -def level_creation_email_text_content(): - return ( - "Your student {student_name} from your class {class_name} has created this level: {level_url}. " - "If you want to moderate it, you can do it on the moderation board: {moderate_url}." - ) - - def youtube_link(url, border): return ( "