Skip to content

Instantly share code, notes, and snippets.

@jfridye
Created September 3, 2014 21:38
Show Gist options
  • Save jfridye/d87ea96ccae352af1a00 to your computer and use it in GitHub Desktop.
Save jfridye/d87ea96ccae352af1a00 to your computer and use it in GitHub Desktop.
<script>
(function (window) {
var pageViewRollup=function(){var this_analytics_url=window.location.pathname,page;if(this_analytics_url.search(/\/routes\/view\//)>-1||this_analytics_url.search(/-route-[0-9]/)>-1){page="/routes/view/"}else{if(this_analytics_url.search(/\/routes\/fullscreen\//)>-1){page="/routes/fullscreen/"}else{if(this_analytics_url.search(/\/courses\/[0-9]/)>-1||this_analytics_url.search(/-course-[0-9]/)>-1){page="/courses/details/"}else{if(this_analytics_url.search(/\/courses\/create\//)>-1){page="/courses/create/"}else{if(this_analytics_url.search(/^\/profile\//)>-1){page="/profile/"}else{if(this_analytics_url.search(/\/events\/[0-9]/)>-1||this_analytics_url.search(/-event-[0-9]/)>-1){page="/events/details/"}else{if(this_analytics_url.search(/\/workout\/[0-9]/)>-1){page="/workout/details/"}else{if(this_analytics_url.search(/\/people\/groups\/[0-9]/)>-1||this_analytics_url.search(/-group-[0-9]/)>-1){page="/people/groups/details/"}else{page=null}}}}}}}}return page};
// Using Single Account for Domain Consolidation (kc)
var _gaq = _gaq || [];
_gaq.push(
['_setAccount', ${google_analytics_key | n, jscript}],
['b._setAccount', ${request.site.tracking_code | n, jscript}],
['b._trackPageview']
);
var gaq_pageview;
% if force_pageview_override:
gaq_pageview = ${force_pageview_override | n, jscript};
% else:
gaq_pageview = pageViewRollup();
% endif
if (gaq_pageview) {
_gaq.push(["_trackPageview", gaq_pageview]);
} else {
_gaq.push(["_trackPageview"]);
}
## Set Custom Variables
% if request.user.is_authenticated():
_gaq.push(['_setCustomVar', 1, 'sex', ${request.user.get_profile().sex | n, jscript}, 1]);
_gaq.push(['_setCustomVar', 2, 'age_group', ${request.user.get_profile().age_group | n, jscript}, 1]);
_gaq.push(['_setCustomVar', 3, 'membership', ${membership_code | n, jscript}, 1]);
_gaq.push(['_setCustomVar', 4, 'logged_in', 'is_logged_in', 1]);
_gaq.push(['b._setCustomVar', 1, 'sex', ${request.user.get_profile().sex | n, jscript}, 1]);
_gaq.push(['b._setCustomVar', 2, 'age_group', ${request.user.get_profile().age_group | n, jscript}, 1]);
_gaq.push(['b._setCustomVar', 3, 'membership', ${membership_code | n, jscript}, 1]);
_gaq.push(['b._setCustomVar', 4, 'logged_in', 'is_logged_in', 1]);
% else:
_gaq.push(['_setCustomVar', 3, 'membership', ${membership_code | n, jscript}, 1]);
_gaq.push(['_setCustomVar', 4, 'logged_in', 'not_logged_in', 1]);
_gaq.push(['b._setCustomVar', 3, 'membership', ${membership_code | n, jscript}, 1]);
_gaq.push(['b._setCustomVar', 4, 'logged_in', 'not_logged_in', 1]);
% endif
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
window._gaq = _gaq;
}(this));
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment