var fadeImageArray = new Array();
var fadeImageAltArray = new Array();
var imgcounter = 0;
var bgimgcounter = 0;
var fadeCount = 0;
var fadingPause = 3000;
var fadingSpeed = 4000;


function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;


    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }

    setTimeout("nextImage();" , (timer * speed) + fadingPause);
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function fadeImageIn(divid, imageid, imagefile, bgimagefile, millisec) {

    //set the current image as background
    document.getElementById(divid).style.backgroundImage = "url(" + bgimagefile + ")";

    //make new image
    document.getElementById(imageid).src = imagefile;

    //fade in image
    opacity(imageid, 0, 100, millisec);
}

function fadeImageOut(divid, imageid, imagefile, bgimagefile, millisec) {

    //set the current image as background
    document.getElementById(divid).style.backgroundImage = "url(" + bgimagefile + ")";

   //make image transparent
    changeOpac(100, imageid);

    //make new image
    document.getElementById(imageid).src = imagefile;

    //fade in image
    opacity(imageid, 100, 0, millisec);
}

function setAltAttribute(imageid, alttext)
{
	document.getElementById(imageid).alt = alttext;
}

function nextImage()
{
	if (fadeCount==(fadeImageArray.length-1))
	{
		if ((fadeCount%2)==0)
		{
			imgcounter=(fadeImageArray.length-1);
			bgimgcounter=0;
			fadeImageOut("blenddiv", "blendimage", fadeImageArray[imgcounter], fadeImageArray[bgimgcounter], fadingSpeed);
			setAltAttribute("blendimage", fadeImageAltArray[bgimgcounter]);
			imgcounter=0;
		} else
		{
			bgimgcounter=(fadeImageArray.length-1);
			imgcounter=0;
			fadeImageIn("blenddiv", "blendimage", fadeImageArray[imgcounter], fadeImageArray[bgimgcounter], fadingSpeed);
			setAltAttribute("blendimage", fadeImageAltArray[imgcounter]);
			bgimgcounter=0;
		}

	} else
	{
		if ((fadeCount%2)==0)
		{
			imageid = ++imgcounter;
			bgimageid = bgimgcounter++;
			fadeImageIn("blenddiv", "blendimage", fadeImageArray[imageid], fadeImageArray[bgimageid], fadingSpeed);
			setAltAttribute("blendimage", fadeImageAltArray[imageid]);
		} else
		{
			imageid = imgcounter++;
			bgimageid = ++bgimgcounter;
			fadeImageOut("blenddiv", "blendimage", fadeImageArray[imageid], fadeImageArray[bgimageid], fadingSpeed);
			setAltAttribute("blendimage", fadeImageAltArray[bgimageid]);
		}
	}
	fadeCount++;

	if (fadeCount>(fadeImageArray.length-1)) fadeCount=0;
}



