//Image Rollover written by ArfaethaLab 
//ver 0.91

var Roll={
	originals:{},
	rollovers:{},
	start:function(){
		var idprefix="image"+((new Date()).getTime())+"_";
		Roll.idnumber=0;
		
		var images=[];
		if(typeof Containers=="object"){
			for (i=0,L=Containers.length;i<L;i++){
				if(!document.getElementById(Containers[i])) continue;
				var imgs=document.getElementById(Containers[i]).getElementsByTagName('img');
				if(imgs.length<1) continue;
				for (j=0,jL=imgs.length;j<jL;j++){
					images.push(imgs[j]);
				}
			}
		}
		if(typeof Singles=="object"){
			for (i=0,L=Singles.length;i<L;i++){
				if(document.getElementById(Singles[i])) images.push(document.getElementById(Singles[i]));
			}
		}
		if(typeof roll_postword!="string") var roll_postword="_r";
		
		for (i=0,L=images.length;i<L;i++){
				//var parcheck=images[i].src.match(/(.+)(\.)(.+)\s*$/gi);
				var parcheck=images[i].src.match(/(.+)(\.)(.+)\s*$/i);
				if(!parcheck) {
					continue;
				} else {
					var par1=RegExp.$1;var par2=RegExp.$2;var par3=RegExp.$3;
				}

				//var reg=new RegExp(roll_postword+"\s*$","gi");
				var reg=new RegExp(roll_postword+"\s*$","i");
				if(reg.test(par1)) continue;//Skip if is RolloverImage
				
				var id=(images[i].id)? images[i].id : idprefix+(Roll.idnumber++);
				images[i].id=id;
				Roll.originals[id]=images[i].src;
				Roll.rollovers[id]=par1+roll_postword+"."+par3;
				document.preload=new Image; //Image Preload
				document.preload.src=Roll.originals[id];				
				
				Roll.addListener(images[i],'mouseover',Roll.rollover,false);
				Roll.addListener(images[i],'mouseout',Roll.rollout,false);
		}
	},
	rollover:function(e){
		var target_node=(e.target) ? e.target:e.srcElement;
		if (!target_node.id) return;
		target_node.src=Roll.rollovers[target_node.id];		
	},
	rollout:function(e){
		var target_node=(e.target) ? e.target:e.srcElement;
		if (!target_node.id) return;
		target_node.src=Roll.originals[target_node.id];		
	},
	addListener:function (elem,eventType,func,cap){ 
		if(elem.addEventListener){
			elem.addEventListener(eventType,func,cap);
		} else if (elem.attachEvent){ 
			elem.attachEvent('on'+eventType,func);
		} else {
			return false;
		}
	},
	addLoadEvent:function(func){
		var onloadfunc = window.onload;
		if (typeof window.onloadfunc != 'function'){
			window.onload = func;
		} else {
			window.onload = function(){
				onloadfunc();
				func();
			}
		}	
	}
}
Roll.addLoadEvent(Roll.start); 