diff --git a/lms/djangoapps/instructor/enrollment.py b/lms/djangoapps/instructor/enrollment.py index 544b60a08e..d16343b6ed 100644 --- a/lms/djangoapps/instructor/enrollment.py +++ b/lms/djangoapps/instructor/enrollment.py @@ -4,7 +4,6 @@ Enrollment operations for use by instructor APIs. Does not include any access control, be sure to check access before calling. """ - import json import logging from contextlib import ExitStack, contextmanager @@ -16,8 +15,7 @@ from django.contrib.auth.models import User # lint-amnesty, pylint: disable=imp from django.template.loader import render_to_string from django.urls import reverse from django.utils.translation import override as override_language -from edx_ace import ace, presentation -from edx_ace.channel.django_email import DjangoEmailChannel +from edx_ace import ace from edx_ace.recipient import Recipient from eventtracking import tracker from submissions import api as sub_api # installed from the edx-submissions repository @@ -61,6 +59,7 @@ log = logging.getLogger(__name__) class EmailEnrollmentState: """ Store the complete enrollment state of an email in a class """ + def __init__(self, course_id, email): # N.B. retired users are not a concern here because they should be # handled at a higher level (i.e. in enroll_email). Besides, this @@ -434,10 +433,10 @@ def _reset_module_attempts(studentmodule): def _fire_score_changed_for_block( - course_id, - student, - block, - module_state_key, + course_id, + student, + block, + module_state_key, ): """ Fires a PROBLEM_RAW_SCORE_CHANGED event for the given module. @@ -592,19 +591,17 @@ def send_mail_to_student(student, param_dict, language=None): user_context=param_dict, ) - render_msg = presentation.render(DjangoEmailChannel, message) - if not render_msg.body_html.count(student) and message_type == 'allowed_enroll': - log.error( - { - 'message': 'Email template does not contain required email address', - 'email_address': student, - 'message_type': message_type, - 'render_msg': render_msg.body, - 'count': render_msg.body_html.count(student), - 'lms_user_id': lms_user_id, - **param_dict - } - ) + if message_type == 'allowed_enroll': + log_data = { + 'message': 'allowed_enroll email data log', + 'message_type': message_type, + 'student': student, + 'recipient': message.recipient.email_address, + 'context_email': message.context.get('email_address'), + 'lms_user_id': lms_user_id, + **param_dict + } + log.error(log_data) ace.send(message)