From aeeb45cf573b5d252af9e73a5b50b59b38f4b9b1 Mon Sep 17 00:00:00 2001 From: Renzo Lucioni Date: Fri, 19 Dec 2014 11:58:48 -0500 Subject: [PATCH] Update virtual pageview event categories, general polish --- .../views/enrollment_confirmation_step_view.js | 7 ++++++- .../views/face_photo_step_view.js | 3 +++ .../verify_student/views/id_photo_step_view.js | 3 +++ .../js/verify_student/views/intro_step_view.js | 3 +++ .../views/make_payment_step_view.js | 5 ++++- .../views/payment_confirmation_step_view.js | 18 ++++++++++-------- .../views/review_photos_step_view.js | 5 ++++- .../js/verify_student/views/step_view.js | 3 --- 8 files changed, 33 insertions(+), 14 deletions(-) diff --git a/lms/static/js/verify_student/views/enrollment_confirmation_step_view.js b/lms/static/js/verify_student/views/enrollment_confirmation_step_view.js index e865e30fca..20491c7b91 100644 --- a/lms/static/js/verify_student/views/enrollment_confirmation_step_view.js +++ b/lms/static/js/verify_student/views/enrollment_confirmation_step_view.js @@ -11,6 +11,11 @@ var edx = edx || {}; // Currently, this step does not need to install any event handlers, // since the displayed information is static. - edx.verify_student.EnrollmentConfirmationStepView = edx.verify_student.StepView.extend({}); + edx.verify_student.EnrollmentConfirmationStepView = edx.verify_student.StepView.extend({ + postRender: function() { + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'verification', this.templateName ); + } + }); })( jQuery ); diff --git a/lms/static/js/verify_student/views/face_photo_step_view.js b/lms/static/js/verify_student/views/face_photo_step_view.js index 17822b688a..8008565a13 100644 --- a/lms/static/js/verify_student/views/face_photo_step_view.js +++ b/lms/static/js/verify_student/views/face_photo_step_view.js @@ -19,6 +19,9 @@ var edx = edx || {}; errorModel: this.errorModel }).render(); + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'verification', this.templateName ); + this.listenTo( webcam, 'imageCaptured', function() { // Track the user's successful image capture window.analytics.track( 'edx.bi.user.face_image.captured', { diff --git a/lms/static/js/verify_student/views/id_photo_step_view.js b/lms/static/js/verify_student/views/id_photo_step_view.js index cb7724f444..35ed9e7b5d 100644 --- a/lms/static/js/verify_student/views/id_photo_step_view.js +++ b/lms/static/js/verify_student/views/id_photo_step_view.js @@ -19,6 +19,9 @@ var edx = edx || {}; errorModel: this.errorModel }).render(); + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'verification', this.templateName ); + this.listenTo( webcam, 'imageCaptured', function() { // Track the user's successful image capture window.analytics.track( 'edx.bi.user.identification_image.captured', { diff --git a/lms/static/js/verify_student/views/intro_step_view.js b/lms/static/js/verify_student/views/intro_step_view.js index d79b12e61b..4de4efd9ee 100644 --- a/lms/static/js/verify_student/views/intro_step_view.js +++ b/lms/static/js/verify_student/views/intro_step_view.js @@ -21,6 +21,9 @@ var edx = edx || {}; el: $( '.requirements-container', this.el ), requirements: this.stepData.requirements }).render(); + + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'verification', this.templateName ); } }); diff --git a/lms/static/js/verify_student/views/make_payment_step_view.js b/lms/static/js/verify_student/views/make_payment_step_view.js index e0d498db41..28c22e6519 100644 --- a/lms/static/js/verify_student/views/make_payment_step_view.js +++ b/lms/static/js/verify_student/views/make_payment_step_view.js @@ -17,6 +17,9 @@ var edx = edx || {}; requirements: this.stepData.requirements }).render(); + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'payment', this.templateName ); + // Update the contribution amount with the amount the user // selected in a previous screen. if ( this.stepData.contributionAmount ) { @@ -84,7 +87,7 @@ var edx = edx || {}; // Marketing needs a way to tell the difference between users // leaving for the payment processor and users dropping off on // this page. A virtual pageview can be used to do this. - window.analytics.page( 'verification', 'payment_processor_step' ); + window.analytics.page( 'payment', 'payment_processor_step' ); form.submit(); }, diff --git a/lms/static/js/verify_student/views/payment_confirmation_step_view.js b/lms/static/js/verify_student/views/payment_confirmation_step_view.js index 40e0129241..47f8443d1a 100644 --- a/lms/static/js/verify_student/views/payment_confirmation_step_view.js +++ b/lms/static/js/verify_student/views/payment_confirmation_step_view.js @@ -71,18 +71,20 @@ var edx = edx || {}; * those used to track business intelligence events. */ postRender: function() { + var $verifyNowButton = $('#verify_now_button'), + $verifyLaterButton = $('#verify_later_button'); + + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'payment', this.templateName ); + // Track the user's decision to verify immediately - $( '#verify_now_button' ).on( 'click', function() { - window.analytics.track( 'edx.bi.user.verification.immediate', { - category: 'verification' - }); + window.analytics.trackLink( $verifyNowButton, 'edx.bi.user.verification.immediate', { + category: 'verification' }); // Track the user's decision to defer their verification - $( '#verify_later_button' ).on( 'click', function() { - window.analytics.track( 'edx.bi.user.verification.deferred', { - category: 'verification' - }); + window.analytics.trackLink( $verifyLaterButton, 'edx.bi.user.verification.deferred', { + category: 'verification' }); }, diff --git a/lms/static/js/verify_student/views/review_photos_step_view.js b/lms/static/js/verify_student/views/review_photos_step_view.js index 8617893b09..1e434dcf19 100644 --- a/lms/static/js/verify_student/views/review_photos_step_view.js +++ b/lms/static/js/verify_student/views/review_photos_step_view.js @@ -30,6 +30,9 @@ var edx = edx || {}; // When moving to the next step, submit photos for verification $( '#next_step_button' ).on( 'click', _.bind( this.submitPhotos, this ) ); + + // Track a virtual pageview, for easy funnel reconstruction. + window.analytics.page( 'verification', this.templateName ); }, toggleSubmitEnabled: function() { @@ -38,7 +41,7 @@ var edx = edx || {}; retakePhotos: function() { // Track the user's intent to retake their photos - window.analytics.track( 'edx.bi.user.verification_images.retaken', { + window.analytics.track( 'edx.bi.user.images.retaken', { category: 'verification' }); diff --git a/lms/static/js/verify_student/views/step_view.js b/lms/static/js/verify_student/views/step_view.js index a069b96eb9..869754566a 100644 --- a/lms/static/js/verify_student/views/step_view.js +++ b/lms/static/js/verify_student/views/step_view.js @@ -47,9 +47,6 @@ this.postRender(); } ).fail( _.bind( this.handleError, this ) ); - - // Track a virtual pageview, for easy funnel reconstruction. - window.analytics.page( 'verification', this.templateName ); }, handleResponse: function( data ) {