/******************************************************************************
save this file as astrack.js and place 
<script src="/astrack.js" type="text/javascript"></script>
at the end of your page code (after the last AdSense ad unit)

You must already have the UrchinTracker installed to use this.
 
Modified with permission from Jim Rotherford's Adsense Pepper
(http://www.digitalmediaminute.com/) 

Ž© SeoBook.com. For updates see http://www.seobook.com/archives/001370.shtml 
You are allowed to use this but you should keep this copyright notice here

******************************************************************************/
function as_click () {
    urchinTracker ('/asclick');
}

// incredibly funky onload add-event scripting, for all browsers

         if(typeof window.addEventListener != 'undefined')
         {
            //.. gecko, safari, konqueror and standard
            window.addEventListener('load', adsense_init, false);
         }
         else if(typeof document.addEventListener != 'undefined')
         {
            //.. opera 7
            document.addEventListener('load', adsense_init, false);
         }
         else if(typeof window.attachEvent != 'undefined')
         {
            //.. win/ie
            window.attachEvent('onload', adsense_init);
         }

         //** remove this condition to degrade older browsers
         else
         {
            //.. mac/ie5 and anything else that gets this far

            //if there's an existing onload function
            if(typeof window.onload == 'function')
            {
                //store it
                var existing = onload;

                //add new onload handler
                window.onload = function()
                {
                    //call existing onload function
                    existing();

                    //call adsense_init onload function
                    adsense_init();
                };
            }
            else
            {
                //setup onload function
                window.onload = adsense_init;
            }
         }
function adsense_init () {

    if (document.all) {  //ie

        var el = document.getElementsByTagName("iframe");
    
        for(var i = 0; i < el.length; i++) {
            if(el[i].src.indexOf('googlesyndication.com') > -1) {

                el[i].onfocus =  as_click;
            }
        }
    
    } else {   // firefox
    
        window.addEventListener('beforeunload', doPageExit, false);
        window.addEventListener('mousemove', getMouse, true);
    
    }
        
}

//for firefox
var px;
var py;

function getMouse(e) {
    px=e.pageX;
    py=e.clientY;
}

function findY(obj) {
    var y = 0;
    while (obj) {
        y += obj.offsetTop;
        obj = obj.offsetParent;
    }
    return(y);
}

function findX(obj) {
    var x = 0;
    while (obj) {
        x += obj.offsetLeft;
        obj = obj.offsetParent;
    }
    return(x);
}

function doPageExit(e) {

    ad = document.getElementsByTagName("iframe");
    for (i=0; i<ad.length; i++) {
        var adLeft = findX(ad[i]);
        var adTop = findY(ad[i]);
        var inFrameX = (px > (adLeft - 10) && px < (parseInt(adLeft) + parseInt(ad[i].width) + 15));
        var inFrameY = (py > (adTop - 10) && py < (parseInt(adTop) + parseInt(ad[i].height) + 10));
        
        if (inFrameY && inFrameX) {

            urchinTracker('/asclick');
        
        }
    }

}

//end for firefox

