﻿var Ebiquity;
if (!Ebiquity) Ebiquity = {};

Ebiquity.Analytics = function() {
    var _defaults = {
       referrer: "_ebrfr"
    };
    
    _init();
    
    function _init() {
        $(window).unload(function() { onexit(); });
        Ebiquity.Analytics.Cookie.setCookie();
        _writeImgRequest();
    }
    
    function _writeImgRequest() {
        var s = "<img src='/analytics/tracker.aspx?" +
            Ebiquity.Analytics.Cookie.getURL() +
            "&_ebrfr=" + escape( document.referrer ) +
            "' width='1' height='1' />";
        document.write(s);
    }
    
    function onexit() {
        var url = "/analytics/tracker.aspx/exitpage?" +
            Ebiquity.Analytics.Cookie.getURL() +
            "&" + _defaults.referrer + "=" + escape( document.referrer );
        $.post(url);
    }
    
    
};

Ebiquity.Analytics.Cookie = {
    
    defaults: {
        cookieExpireDays: 1,
        cookieName: '_ebanl'
    },

    setCookie: function() {
        if (!this.getCookie()) {
            var expiryDate = new Date();
            var cookieValue = expiryDate.getTime();
            expiryDate.setDate(expiryDate.getDate() + this.defaults.cookieExpireDays);
            var kookie = this.defaults.cookieName + "=" + cookieValue + ";expires" + expiryDate.toUTCString();
            document.cookie = kookie;
        }
    },
    
    getCookie: function() {
        var allCookies = document.cookie;
        var re = new RegExp("(" + this.defaults.cookieName + "=)([0-9]*);?$", "i");
        var results = re.exec(allCookies);
        if (results && results.length >= 3) {
            return results[2];
        }
        return '';
    },
    
    getURL: function() {
        return this.defaults.cookieName + "=" + this.getCookie();
    }
    
};