var imgarray = Array();
function el(id){if(typeof(id)=="string"){return document.getElementById(id)}else{return id;};}

function initRollOver()
{
	var prefix = 'RO|';
	var indOf=-1;
	var originalName='';
	var className;
	var suffix;
	var srcover='';
	var i;
	var ii;
	if(document.getElementsByTagName)
	{
		imgs = document.getElementsByTagName('img');
	}
	else if(document.images)
	{
		imgs = document.images;
	}
	for(ii=0;ii<2;ii++)
	{
		for(i = 0; i<imgs.length;i++)
		{
			if(ii==1 && imgs[i].type!="image")
			{
				continue;			
			}
			//first we check class attribute to be imgover
			className = '' + imgs[i].getAttribute("class");
			if(imgs[i].className)
			{className=''+imgs[i].className;}
			srcover='';
			if (className.indexOf('imgover')!=-1)
			{
				suffix = imgs[i].src.substring(imgs[i].src.lastIndexOf('.'));			
				srcover= imgs[i].src.substring(0,imgs[i].src.lastIndexOf('.')) + "_over" + suffix;
			}
			else //we look for 'RO|' in the name attribute
			{
				originalName=imgs[i].getAttribute('name');
				if(originalName)
				{
					indOf=originalName.indexOf(prefix);
					if(indOf!=-1)
					{
						srcover=originalName.substring(indOf + prefix.length);					
					}
				}
			}
			if(srcover){
			imgsrc(srcover);
			imgs[i].setAttribute('imgover', srcover);
			imgs[i].setAttribute('imgout', imgs[i].src);
			imgs[i].onmouseover = function(){switchImg(this, this.getAttribute('imgover'));}
			imgs[i].onmouseout = function(){switchImg(this, this.getAttribute('imgout'));}
			}
		}
		imgs = document.getElementsByTagName('input');
	}
}

function imgsrc(src)
{
	if(!imgarray[src])
	{
		imgarray[src] = new Image();
		imgarray[src].src = src;
	}
	return imgarray[src].src;
}

function switchImg(img, optPath)
{
	img=el(img);
	if(img && optPath)
	{
		img.src=optPath;
	}
}