Difference between revisions of "MediaWiki:Common.js"

From Ribbon Commander Documentation
Jump to: navigation, search
Line 35: Line 35:
 
   
 
   
 
for (var i = 0; i < links.length; i++) {
 
for (var i = 0; i < links.length; i++) {
     //if (links[i].className=="external text") {
+
     addtrackcode(links[i]);
        addtrackcode(links[i]);
+
    //}
+
 
}
 
}
 
   
 
   
 
function addtrackcode(obj) {
 
function addtrackcode(obj) {
     //alert(obj.href + " " + obj.className);
+
     if(obj.className == "external link" || parentNode.className == "external link") {
    var parentNode = obj.parentNode;
+
    if(parentNode.className == "external link") {
+
 
      
 
      
 
         var vSplit = obj.href.split("://");
 
         var vSplit = obj.href.split("://");
Line 49: Line 45:
 
             obj.setAttribute('onClick',"javascript:trackOutboundLink(this, 'Outbound Links', '" + vSplit[1] + "');");
 
             obj.setAttribute('onClick',"javascript:trackOutboundLink(this, 'Outbound Links', '" + vSplit[1] + "');");
 
         }
 
         }
 
    //if(vSplit[0]=="http" || vSplit[0]=="https") {
 
        //obj.setAttribute('onClick',"javascript:trackOutboundLink(this, 'Outbound Links', '" + vSplit[1] + "');");
 
    //}
 
 
     }
 
     }
 
}
 
}

Revision as of 13:13, 19 March 2013

/* Any JavaScript here will be loaded for all users on every page load. */
 
/**
 * Track all pages with google analytics
 */
 
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-39399611-1']);
_gaq.push(['_trackPageview']);
 
(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);
})();
 
/**
 * Track outbound links
 */
function trackOutboundLink(link, category, action) { 
 
try { 
_gaq.push(['_trackEvent', category , action]); 
} catch(err){}
 
setTimeout(function() {
document.location.href = link.href;
}, 100);
}
 
/**
 * Add onClick event to all external links of every page
 */
var links = document.getElementsByTagName("a");
 
for (var i = 0; i < links.length; i++) {
    addtrackcode(links[i]);
}
 
function addtrackcode(obj) {
    if(obj.className == "external link" || parentNode.className == "external link") {
 
        var vSplit = obj.href.split("://");
        if(vSplit.length == 2) {
            obj.setAttribute('onClick',"javascript:trackOutboundLink(this, 'Outbound Links', '" + vSplit[1] + "');");
        }
    }
}