/**
 * Unobtrusive Image Rollovers
 * By: Paul McLanahan <paul dot mclanahan at digital insight>
 */
var Roll = {
    
    imgObjects: [],
    
    init: function(){		
        if(!document.getElementsByTagName)return;
        var all_links = document.getElementsByTagName('a');
		var rexOff = /_off\.([a-z]{3,4})$/i;
        for(var i = 0; i < all_links.length; i++){
            var linkObj = all_links[i]; 
            if (linkObj.className && (' ' + linkObj.className + ' ').indexOf(' rollover ') != -1){
                if (linkObj.childNodes && 
                    linkObj.childNodes.length == 1 && 
                    linkObj.firstChild.nodeName.toLowerCase() == 'img' &&
                    rexOff.test(linkObj.firstChild.src)){
                    // preload rollover images
                    linkObj.imgOver = new Image();
                    linkObj.imgOut = new Image();
                    linkObj.imgOver.src = linkObj.firstChild.src.replace(rexOff,"_on.$1");
					linkObj.imgOut.src = linkObj.firstChild.src;
                    
                    // add mouseover and mouseout event handlers to links
                    libDI.addEvent(linkObj,'mouseover',Roll.imgOn,false);
                    libDI.addEvent(linkObj,'mouseout',Roll.imgOff,false);
                }
            }
        }
    },
    
    imgOn: function(e){
        linkObj = libDI.getTarget(e,'a');
        if(!linkObj)return;
        linkObj.firstChild.src = linkObj.imgOver.src;
    },
    
    imgOff: function(e){
        linkObj = libDI.getTarget(e,'a');
        if(!linkObj)return;
        linkObj.firstChild.src = linkObj.imgOut.src;
    }
    
}
libDI.addEvent(window,'load',Roll.init,false);
