diff --git a/lms/djangoapps/experiments/utils.py b/lms/djangoapps/experiments/utils.py index ade46534d4..b73504a633 100644 --- a/lms/djangoapps/experiments/utils.py +++ b/lms/djangoapps/experiments/utils.py @@ -79,7 +79,7 @@ def check_and_get_upgrade_link_and_date(user, enrollment=None, course=None): """ if enrollment is None and course is None: logger.warn(u'Must specify either an enrollment or a course') - return (None, None) + return (None, None, None) if enrollment: if course is None: @@ -97,7 +97,7 @@ def check_and_get_upgrade_link_and_date(user, enrollment=None, course=None): course.id.deprecated ) ) - return (None, None) + return (None, None, None) if enrollment.user_id != user.id: logger.warn(u'{} refers to a different user than {} which was supplied. Enrollment user id={}, repr={!r}. ' @@ -109,7 +109,7 @@ def check_and_get_upgrade_link_and_date(user, enrollment=None, course=None): user.id, ) ) - return (None, None) + return (None, None, None) if enrollment is None: enrollment = CourseEnrollment.get_enrollment(user, course.id) @@ -117,10 +117,11 @@ def check_and_get_upgrade_link_and_date(user, enrollment=None, course=None): if user.is_authenticated and verified_upgrade_link_is_valid(enrollment): return ( verified_upgrade_deadline_link(user, course), - enrollment.upgrade_deadline + enrollment.upgrade_deadline, + enrollment.course_upgrade_deadline, ) - return (None, None) + return (None, None, None) # TODO: clean up as part of REVEM-199 (START) @@ -308,8 +309,10 @@ def get_base_experiment_metadata_context(course, user, enrollment, user_enrollme enrollment_mode = enrollment.mode enrollment_time = enrollment.created - # upgrade_link and upgrade_date should be None if user has passed their dynamic pacing deadline. - upgrade_link, upgrade_date = check_and_get_upgrade_link_and_date(user, enrollment, course) + # upgrade_link, dynamic_upgrade_deadline and course_upgrade_deadline should be None + # if user has passed their dynamic pacing deadline. + upgrade_link, dynamic_upgrade_deadline, course_upgrade_deadline = check_and_get_upgrade_link_and_date( + user, enrollment, course) return { 'upgrade_link': upgrade_link, @@ -317,7 +320,8 @@ def get_base_experiment_metadata_context(course, user, enrollment, user_enrollme 'enrollment_mode': enrollment_mode, 'enrollment_time': enrollment_time, 'pacing_type': 'self_paced' if course.self_paced else 'instructor_paced', - 'upgrade_deadline': upgrade_date, + 'dynamic_upgrade_deadline': dynamic_upgrade_deadline, + 'course_upgrade_deadline': course_upgrade_deadline, 'audit_access_deadline': get_audit_access_expiration(user, course), 'course_key': course.id, 'course_start': course.start, diff --git a/lms/templates/experiments/user_metadata.html b/lms/templates/experiments/user_metadata.html index d4b0ba0963..94d4f07198 100644 --- a/lms/templates/experiments/user_metadata.html +++ b/lms/templates/experiments/user_metadata.html @@ -40,7 +40,8 @@ for datekey in ( 'enrollment_time', 'course_start', 'course_end', - 'upgrade_deadline' + 'dynamic_upgrade_deadline', + 'course_upgrade_deadline', ): user_metadata[datekey] = ( context.get(datekey).isoformat() if context.get(datekey) else None