/**
 * Page statistics functions.
 */
var domReadyTime;

jQuery(window).bind('beforeunload', function(event) {
    $.cookie("beforeUnloadTime", (new Date()).getTime(), {path: '/'});
});

jQuery(window).unload(function() {
    $.cookie("unloadTime", (new Date()).getTime(), {path: '/'});
});

jQuery(document).ready(function() {
    domReadyTime = (new Date()).getTime();
});

jQuery(window).load(function() {
    if ((document.referrer != null) && (document.referrer != '')) {
        var beforeUnloadTime = $.cookie("beforeUnloadTime");
        var unloadTime = $.cookie("unloadTime");
        var loadTime = (new Date()).getTime();
        var referrerDomain = document.referrer.split('/')[2].split(':')[0];
        var testCoverage = 100;
        
        if ((document.domain == referrerDomain) 
                && (beforeUnloadTime != null) && (unloadTime != null)
                && (Math.floor(Math.random()*101) <= testCoverage)) {
        
            var params = {};
            params["beforeUnloadTime"] = beforeUnloadTime;
            params["unloadTime"] = unloadTime;
            params["domReadyTime"] = domReadyTime;
            params["loadTime"] = loadTime;
        
            $.ajax({type: "POST",
                url: "?action=statistics.logPageLoadTime",
                dataType: "text",
                data: jQuery.param(params), 
                success: function(response) {
                }
            });
        }
    }
    
    $.cookie("beforeUnloadTime", null, {path: '/'});
    $.cookie("unloadTime", null, {path: '/'});
});

