var bAds_adg = true;
var bAds_adSenseDeliveryDone;
var bAds_adSensePx;
var bAds_adSensePy;
var bAds_trigger = true;
function bAds_adSenseClick(path, params) {
    var i = new Image();
    i.src = path + '/NavBanner.ashx?' + params + '&redirect=false&cb=' + (new String (Math.random())).substring(2,11);
}
function bAds_adSenseLog(obj) {
    var params;
    if (params = obj.src.match(/^(.*)\/adframe\.php\?n=([a-z0-9]+)/i)) {
        bAds_adSenseClick(params[1], 'n=' + params[2]);
    } else if (typeof(obj.parentNode) != 'undefined') {
        var t = obj.parentNode.innerHTML;
        if (params = t.match(/\/\* path='([^ ]*)' banner_id=([^ ]*) zone_id=([^ ]*) \*\//)) {
            bAds_adSenseClick(params[1], 'banner_id=' + params[2] + '&zone_id=' + params[3]);
        } 
    }
}
function bAds_adSenseGetMouse(e) {
    if (typeof(e.pageX)=='number') {
        bAds_adSensePx = e.pageX;
        bAds_adSensePy = e.pageY;
    } else if (typeof(e.clientX)== 'number') {
        bAds_adSensePx = e.clientX;
        bAds_adSensePy = e.clientY;
        if (document.body && (document.body.scrollLeft || document.body.scrollTop)) {
            bAds_adSensePx += document.body.scrollLeft;
            bAds_adSensePy += document.body.scrollTop;
        } else if (document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop )) {
            bAds_adSensePx += document.documentElement.scrollLeft;
            bAds_adSensePy += document.documentElement.scrollTop;
        }
    }
}
function bAds_adSenseFindX(obj) { var x = 0; while (obj) { x += obj.offsetLeft; obj = obj.offsetParent; } return x; }
function bAds_adSenseFindY(obj) { var y = 0; while (obj) { y += obj.offsetTop; obj = obj.offsetParent; } return y; }
function bAds_adSensePageExit(e) {
    var ad = document.getElementsByTagName("iframe");
    if (typeof(bAds_adSensePx) == 'undefined') return;
    for (var i = 0; i < ad.length; i++) {
        var adLeft = bAds_adSenseFindX(ad[i]);
        var adTop = bAds_adSenseFindY(ad[i]);
        var adRight = parseInt(adLeft) + parseInt(ad[i].width) + 15;
        var adBottom = parseInt(adTop) + parseInt(ad[i].height) + 10;
        var inFrameX = (bAds_adSensePx > (adLeft - 10) && bAds_adSensePx < adRight);
        var inFrameY = (bAds_adSensePy > (adTop - 10) && bAds_adSensePy < adBottom);
        if (inFrameY && inFrameX)  {
            if (ad[i].src.indexOf('googlesyndication.com') > -1) bAds_adSenseLog(ad[i]);
        }
    }
}
function bAds_adSenseInit() {
    if (document.all && typeof(window.opera) == 'undefined') { 
        var el = document.getElementsByTagName("iframe");
        for (var i = 0; i < el.length; i++) {
            if (el[i].src.indexOf('googlesyndication.com') > -1) {
                el[i].onfocus = function() {
                    if (bAds_trigger) {
                        bAds_adSenseLog(this);
                        bAds_trigger = false;
                    }
                }
            }
        }
    } else if (typeof(window.addEventListener) != 'undefined') { 
        window.addEventListener('unload', bAds_adSensePageExit, false);
        window.addEventListener('mousemove', bAds_adSenseGetMouse, true);
    }
}
function bAds_adSenseDelivery() {
    if (typeof(bAds_adSenseDeliveryDone) != 'undefined' && bAds_adSenseDeliveryDone) return;
    bAds_adSenseDeliveryDone = true;
    if(typeof(window.addEventListener) != 'undefined') {
        window.addEventListener('load', bAds_adSenseInit, false);
    } else if(typeof(document.addEventListener) != 'undefined') {
        document.addEventListener('load', bAds_adSenseInit, false);
    } else if(typeof(window.attachEvent) != 'undefined') {
        window.attachEvent('onload', bAds_adSenseInit);
    } else {
        if (typeof(window.onload)=='function') {
            var existing = onload;
            window.onload = function() {
                existing();
                bAds_adSenseInit();
            };
        } else {
            window.onload = bAds_adSenseInit;
        }
    }
}
bAds_adSenseDelivery();
