From 0b2a9c7010d2e986428fed64e17d89a0f11e6e9c Mon Sep 17 00:00:00 2001 From: Diane Kaplan Date: Thu, 23 Jul 2020 11:40:22 -0400 Subject: [PATCH] [REV-1205] Add ecommerce event tracking to FBE (feature based enrollment) upsell links (#24528) --- lms/djangoapps/courseware/tests/helpers.py | 2 +- .../discussion/discussion_board_fragment.html | 12 ++++++++++++ lms/templates/courseware/courseware.html | 12 ++++++++++++ lms/templates/courseware/progress.html | 12 ++++++++++++ openedx/features/course_duration_limits/access.py | 2 +- .../course_experience/course-home-fragment.html | 8 ++++++++ 6 files changed, 46 insertions(+), 2 deletions(-) diff --git a/lms/djangoapps/courseware/tests/helpers.py b/lms/djangoapps/courseware/tests/helpers.py index bcee0f60a0..d5c50044d4 100644 --- a/lms/djangoapps/courseware/tests/helpers.py +++ b/lms/djangoapps/courseware/tests/helpers.py @@ -440,7 +440,7 @@ def get_expiration_banner_text(user, course, language='en'): bannerText = u'Audit Access Expires {expiration_date}
\ You lose all access to this course, including your progress, on {expiration_date}.\
Upgrade by {upgrade_deadline} to get unlimited access to the course as long as it exists\ - on the site. Upgrade now to retain access past\ + on the site. Upgrade now to retain access past\ {expiration_date}'.format( expiration_date=formatted_expiration_date, upgrade_link=upgrade_link, diff --git a/lms/djangoapps/discussion/templates/discussion/discussion_board_fragment.html b/lms/djangoapps/discussion/templates/discussion/discussion_board_fragment.html index a79b6ab336..eb8e1b66dc 100644 --- a/lms/djangoapps/discussion/templates/discussion/discussion_board_fragment.html +++ b/lms/djangoapps/discussion/templates/discussion/discussion_board_fragment.html @@ -64,3 +64,15 @@ from openedx.core.djangolib.markup import HTML <%include file="_underscore_templates.html" /> <%include file="_thread_list_template.html" /> + +<%static:require_module_async module_name="js/commerce/track_ecommerce_events" class_name="TrackECommerceEvents"> + + var fbeLink = $("#FBE_banner"); + + TrackECommerceEvents.trackUpsellClick(fbeLink, 'discussion_audit_access_expires', { + pageName: "discussion_tab", + linkType: "link", + linkCategory: "FBE_banner" + }); + + diff --git a/lms/templates/courseware/courseware.html b/lms/templates/courseware/courseware.html index 4167364ef4..fbaf36d28c 100644 --- a/lms/templates/courseware/courseware.html +++ b/lms/templates/courseware/courseware.html @@ -271,3 +271,15 @@ ${HTML(fragment.foot_html())} % endif % endif + +<%static:require_module_async module_name="js/commerce/track_ecommerce_events" class_name="TrackECommerceEvents"> + + var fbeLink = $("#FBE_banner"); + + TrackECommerceEvents.trackUpsellClick(fbeLink, 'in_course_audit_access_expires', { + pageName: "in_course", + linkType: "link", + linkCategory: "FBE_banner" + }); + + \ No newline at end of file diff --git a/lms/templates/courseware/progress.html b/lms/templates/courseware/progress.html index fb8c9e9e78..18ba42a71b 100644 --- a/lms/templates/courseware/progress.html +++ b/lms/templates/courseware/progress.html @@ -248,3 +248,15 @@ username = get_enterprise_learner_generic_name(request) or student.username <%static:require_module_async module_name="js/dateutil_factory" class_name="DateUtilFactory"> DateUtilFactory.transform(iterationKey=".localized-datetime"); + +<%static:require_module_async module_name="js/commerce/track_ecommerce_events" class_name="TrackECommerceEvents"> + + var fbeLink = $("#FBE_banner"); + + TrackECommerceEvents.trackUpsellClick(fbeLink, 'progress_audit_access_expires', { + pageName: "progress_tab", + linkType: "link", + linkCategory: "FBE_banner" + }); + + diff --git a/openedx/features/course_duration_limits/access.py b/openedx/features/course_duration_limits/access.py index a3f837c100..cf40ef2de6 100644 --- a/openedx/features/course_duration_limits/access.py +++ b/openedx/features/course_duration_limits/access.py @@ -179,7 +179,7 @@ def generate_course_expired_message(user, course): ) return HTML(full_message).format( - a_open=HTML(u'').format( + a_open=HTML(u'').format( upgrade_link=verified_upgrade_deadline_link(user=user, course=course) ), sronly_span_open=HTML(''), diff --git a/openedx/features/course_experience/templates/course_experience/course-home-fragment.html b/openedx/features/course_experience/templates/course_experience/course-home-fragment.html index 86d9fa5954..f0f392b786 100644 --- a/openedx/features/course_experience/templates/course_experience/course-home-fragment.html +++ b/openedx/features/course_experience/templates/course_experience/course-home-fragment.html @@ -193,6 +193,7 @@ from openedx.features.course_experience.course_tools import HttpMethod <%static:require_module_async module_name="js/commerce/track_ecommerce_events" class_name="TrackECommerceEvents"> var personalizedLearnerSchedulesLink = $(".personalized_learner_schedules_button"); + var fbeLink = $("#FBE_banner"); TrackECommerceEvents.trackUpsellClick(personalizedLearnerSchedulesLink, 'course_home_upgrade_shift_dates', { pageName: "course_home", @@ -200,4 +201,11 @@ from openedx.features.course_experience.course_tools import HttpMethod linkCategory: "personalized_learner_schedules" }); + TrackECommerceEvents.trackUpsellClick(fbeLink, 'course_home_audit_access_expires', { + pageName: "course_home", + linkType: "link", + linkCategory: "FBE_banner" + }); + +