﻿/*
	Image Cross Fade Redux
	Version 1.0
	Last revision: 02.15.2006
	steve@slayeroffice.com

	Rewrite of old code found here: http://slayeroffice.com/code/imageCrossFade/index.html
*/

window.addEventListener?window.addEventListener('load',so_init1,false):window.attachEvent('onload',so_init1);

var d1=document, imgs1 = new Array(), zInterval1 = null, current1=0, pause=false;

function so_init1()
{
	if(!d1.getElementById || !d1.createElement)return;

	css = d1.createElement('link');
	css.setAttribute('href','xfade1.css');
	css.setAttribute('rel','stylesheet');
	css.setAttribute('type','text/css');
	d1.getElementsByTagName('head')[0].appendChild(css);

	imgs1 = d1.getElementById('rotator1').getElementsByTagName('img');
	for(i=1;i<imgs1.length;i++) imgs1[i].xOpacity = 0;
	imgs1[0].style.display = 'block';
	imgs1[0].xOpacity = .99;

	setTimeout(so_xfadeOut1,3000);
}

function so_xfadeOut1()
{
	cOpacity1 = imgs1[current1].xOpacity;

	cOpacity1-=.05;

	imgs1[current1].xOpacity = cOpacity1;

	setOpacity1(imgs1[current1]);

	if(cOpacity1<=0)
	{
		imgs1[current1].style.display = 'none';
  		setTimeout(so_xfadeIn1,0);
	}
	else
	{
		setTimeout(so_xfadeOut1,50);
	}
}

function so_xfadeIn1()
{
	nIndex1 = imgs1[current1+1]?current1+1:0;
	nOpacity1 = imgs1[nIndex1].xOpacity;

	nOpacity1+=.05;

	imgs1[nIndex1].style.display = 'block';
	imgs1[nIndex1].xOpacity = nOpacity1;

	setOpacity1(imgs1[nIndex1]);

	if(nOpacity1>=.99)
	{
		current1 = nIndex1;
		setTimeout(so_xfadeOut1,3000);
	}
	else
	{
		setTimeout(so_xfadeIn1,100);
	}
}

function setOpacity1(obj)
{
	if(obj.xOpacity>.99)
	{
		obj.xOpacity = .99;
		return;
	}

	if(obj.xOpacity<0)
	{
		obj.xOpacity = 0;
		return;
	}
	obj.style.opacity = obj.xOpacity;
	obj.style.MozOpacity = obj.xOpacity;
	obj.style.filter = 'alpha(opacity=' + (obj.xOpacity*100) + ')';
}
