var slideShow      = new Array();
var slideIntval    = new Array();
var slideElmtImag  = new Array();
var slideElmtImagI = new Array();
var slideElmtLoad  = new Array();
var slideElmtLoadI = new Array();
var slidePos       = new Array();
var slideOpac      = new Array();

function initSlideshow( name, imgs, intval ) {
	slideShow[name] = imgs;
	if( intval ) slideIntval[name] = intval;
	else slideIntval[name] = 5000;
	if( slideShow[name].length > 1 &&
	( slideElmtImag[name] = document.getElementById( name+'SlideImage' )) &&
	( slideElmtImagI[name] = document.getElementById( name+'SlideImageI' )) &&
	( slideElmtLoad[name] = document.getElementById( name+'SlidePreload' )) &&
	( slideElmtLoadI[name] = document.getElementById( name+'SlidePreloadI' )))
	{
		slidePos[name] = 0;
		slideOpac[name] = 0;
		changeSlide( 0, name+'SlidePreload' );
		//slideElmtLoad[name].src = slideShow[name][slidePos[name]++];
		slideElmtLoadI[name].src = slideShow[name][slidePos[name]++];
		window.setTimeout( 'updateSlide("'+name+'")', slideIntval[name] );
	}
}

function updateSlide(name) {
	if( slideOpac[name] == 0 ) {
		if( slideElmtLoadI[name].complete )
		{
			slideOpac[name] += 5;
			changeSlide( slideOpac[name], name+'SlidePreload' );
			changeSlide( 100-slideOpac[name], name+'SlideImage' );
		}
		window.setTimeout( 'updateSlide("'+name+'")', 30 );
	} else if( slideOpac[name] < 100 ) {
		slideOpac[name] += 5;
		changeSlide( slideOpac[name], name+'SlidePreload' );
		changeSlide( 100-slideOpac[name], name+'SlideImage' );
		window.setTimeout( 'updateSlide("'+name+'")', 30 );
	} else if( slideElmtImagI[name].src != slideElmtLoadI[name].src ){
		slideOpac[name] = 100;
		changeSlide( slideOpac[name], name+'SlidePreload' );
		changeSlide( 100-slideOpac[name], name+'SlideImage' );
		slideElmtImagI[name].src = slideElmtLoadI[name].src;
		window.setTimeout( 'updateSlide("'+name+'")', 30 );
	} else if( !slideElmtImagI[name].complete ) {
		window.setTimeout( 'updateSlide("'+name+'")', 30 );
	} else {
		changeSlide( 100, name+'SlideImage' );
		slideOpac[name] = 0;
		changeSlide( slideOpac[name], name+'SlidePreload' );

		window.setTimeout( 'slideElmtLoadI["'+name+'"].src = "'+slideShow[name][slidePos[name]]+'"', 30 );
		if( ++slidePos[name] == slideShow[name].length ) slidePos[name] = 0;

		window.setTimeout( 'updateSlide("'+name+'")', slideIntval[name] );
	}
}

function changeSlide(opacity, id) {
    var object = document.getElementById(id).style;
    //object.visibility = opacity<5 ? "hidden" : "visible";
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}
