Commit da511808 by Renzo Lucioni

Add comments explaining analytics improvements

parent 74d03809
...@@ -6,23 +6,33 @@ ...@@ -6,23 +6,33 @@
<% active_flags = " + ".join(waffle.get_flags(request)) %> <% active_flags = " + ".join(waffle.get_flags(request)) %>
<script type="text/javascript"> <script type="text/javascript">
// Asynchronously load Segment.io's analytics.js library
window.analytics||(window.analytics=[]),window.analytics.methods=["identify","track","trackLink","trackForm","trackClick","trackSubmit","page","pageview","ab","alias","ready","group","on","once","off"],window.analytics.factory=function(t){return function(){var a=Array.prototype.slice.call(arguments);return a.unshift(t),window.analytics.push(a),window.analytics}};for(var i=0;i<window.analytics.methods.length;i++){var method=window.analytics.methods[i];window.analytics[method]=window.analytics.factory(method)}window.analytics.load=function(t){var a=document.createElement("script");a.type="text/javascript",a.async=!0,a.src=("https:"===document.location.protocol?"https://":"http://")+"d2dq2ahtl5zl1z.cloudfront.net/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(a,n)},window.analytics.SNIPPET_VERSION="2.0.8", window.analytics||(window.analytics=[]),window.analytics.methods=["identify","track","trackLink","trackForm","trackClick","trackSubmit","page","pageview","ab","alias","ready","group","on","once","off"],window.analytics.factory=function(t){return function(){var a=Array.prototype.slice.call(arguments);return a.unshift(t),window.analytics.push(a),window.analytics}};for(var i=0;i<window.analytics.methods.length;i++){var method=window.analytics.methods[i];window.analytics[method]=window.analytics.factory(method)}window.analytics.load=function(t){var a=document.createElement("script");a.type="text/javascript",a.async=!0,a.src=("https:"===document.location.protocol?"https://":"http://")+"d2dq2ahtl5zl1z.cloudfront.net/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(a,n)},window.analytics.SNIPPET_VERSION="2.0.8",
window.analytics.load("${ settings.SEGMENT_IO_LMS_KEY }"); window.analytics.load("${ settings.SEGMENT_IO_LMS_KEY }");
path = window.location.href.split("/").slice(3)[0] // Get current page URL and pull out the path
path = window.location.href.split("/")[3]
// Match on the current path and fire the appropriate pageview event
if (path == "") { if (path == "") {
// Home page viewed (path empty)
window.analytics.page("Home"); window.analytics.page("Home");
} else if (path == "register") { } else if (path == "register") {
// Registration page viewed
window.analytics.page("Registration"); window.analytics.page("Registration");
} else if (path == "login") { } else if (path == "login") {
// Login page viewed
window.analytics.page("Login"); window.analytics.page("Login");
} else if (path == "dashboard") { } else if (path == "dashboard") {
// Dashboard viewed
window.analytics.page("Dashboard"); window.analytics.page("Dashboard");
} else if (path == "course-list") { } else if (path == "course-list") {
// Course listing page viewed
window.analytics.page("Course Listing"); window.analytics.page("Course Listing");
} else if (path == "course") { } else if (path == "course") {
// Course about page viewed
window.analytics.page("Course About"); window.analytics.page("Course About");
} else { } else {
// This event serves as a catch-all, firing when any other page is viewed
window.analytics.page("Other"); window.analytics.page("Other");
} }
...@@ -32,6 +42,7 @@ ...@@ -32,6 +42,7 @@
"Registered" : true, "Registered" : true,
email : "${ user.email }", email : "${ user.email }",
username : "${ user.username }", username : "${ user.username }",
// Count the number of courses in which the user is currently enrolled
"Enrollment Count": ${ sum(1 for course in user.courseenrollment_set.values() if course['is_active'] == True) }, "Enrollment Count": ${ sum(1 for course in user.courseenrollment_set.values() if course['is_active'] == True) },
"Active Flags" : "${ active_flags }", "Active Flags" : "${ active_flags }",
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment