
//another popup code
function popitup(mylink, windowname, w, h) {
    var href;
    if (typeof(mylink) == 'string')
        href=mylink;
    else
        href=mylink.href;
    newwindow=window.open(href, windowname,'height='+h+',width='+w+',scrollbars=no');
    if (window.focus) { newwindow.focus(); }
    return false;
}



//////////////////////////////////////////

//Setup the event
function DomReady(fn)
{
    if(document.addEventListener)
    {	//W3C
        document.addEventListener("DOMContentLoaded", fn, false);
    }
    else
    {	//IE
        document.onreadystatechange = function(){readyState(fn)}
    }
}

//IE execute function
function readyState(fn)
{
    //dom is ready for interaction
    if(document.readyState == "interactive" || document.readyState == "complete")
    {
	fn();
    }
}

//change the opacity for different browsers
function changeOpacity(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 iterOpacity(opacity, imageid, step, speed) {
//    changeOpacity(opacity+100*step, imageid);
//    if (1==0) {
	changeOpacity(opacity, imageid);
	opacity=opacity+step;
	if (opacity==50) {
	    opacity=50; // just for debuging purpos
	}
	if (0<=opacity && opacity<=100 && imageAction!='stop') {
	    setTimeout("iterOpacity(" + opacity + ",'" + imageid + "',"+step+","+speed+")", speed);
	}
	imageAction=null;
//    }
}

function Blendimage(divid, imageid, imagefile, imagenum, millisec, step)
{
	var speed = Math.round(millisec / 100);
	//set the current image as background
	document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";
        document.getElementById('current').innerHTML=imagenum+1;
	if (step>0) {	//make image transparent
	    opacity=0;
	} else {
	    opacity=100;
	}
	//make new image
	document.getElementById(imageid).src = imagefile;
	// start fading image
	iterOpacity(opacity, imageid, step, speed)
}

function ImageSuivante(divid, imageid, millisec, step)
{
    console.log('ImageSuivante divid=%s divid=%s divid=%d step=%d; imageActuelle=%d, tableauImages.length=%d', divid, divid, divid, step, imageActuelle, tableauImages.length)
    imageSuivanteTimeoutId=null;
    var imageSuiv=imageActuelle+step;
    console.log('ImageSuivante imageActuelle=%d imageSuiv=%d step=%d', imageActuelle, imageSuiv, step);
    imageSuiv=imageSuiv%tableauImages.length;
    console.log('ImageSuivante imageActuelle=%d imageSuiv=%d step=%d', imageActuelle, imageSuiv, step);
    var imageSuivSuiv=(imageSuiv+1)%tableauImages.length;
    var image=tableauImages[imageSuiv];
    var duree=tableauDurees[imageSuiv];
    //Changer l image
    Blendimage(divid,imageid,image,imageSuiv,millisec,step);
    // Mettre la suivante en cache
    document.getElementById('invisible').innerHTML = '<img src="' + tableauImages[imageSuivSuiv] + '" width="200" />';

    //Compte a rebours pour la suivante
    if (imageAction=='stop') {
	imageAction=null;
    } else {
	console.log('ImageSuivante imageActuelle=%d imageSuiv=%d cmd=%s', imageActuelle, imageSuiv, "ImageSuivante('"+divid+"','"+imageid+"','"+millisec+"','"+step+"')")
	imageSuivanteTimeoutId=setTimeout("ImageSuivante('"+divid+"','"+imageid+"','"+millisec+"',"+step+")",duree,"JavaScript");
	imageActuelle = imageSuiv;
    }
}

function InitDiapo()
{
    //Mettre en background, la 1ere image
    document.getElementById('blenddiv').style.backgroundImage = 'url('+tableauImages[0]+')';
    document.getElementById('blendimage').src = tableauImages[0];
    document.getElementById('current').innerHTML=1;
    document.getElementById('total').innerHTML=tableauImages.length;
    ImageSuivante('blenddiv', 'blendimage', 1000, +1);
}

function Stop(){
    Pause();
    imageAction='stop';
    document.getElementById('blenddiv').style.backgroundImage = 'url('+tableauImages[0]+')';
    document.getElementById('blendimage').src = tableauImages[0];
    document.getElementById('current').innerHTML=1;
}

function Play(){
    if (imageSuivanteTimeoutId==null) {
	ImageSuivante('blenddiv', 'blendimage', 1000, +1);
    }
}
function Pause(){
    if (imageSuivanteTimeoutId!=null) {
	clearTimeout(imageSuivanteTimeoutId);
	imageSuivanteTimeoutId=null;
    } else {
	imageAction='stop';
    }
}
function Next(){
    Pause();
    imageAction='stop';
    imageActuelle=(imageActuelle+1)%tableauImages.length;
    ImageSuivante('blenddiv', 'blendimage', 1000, +1);
}
function Prev(){
    Pause();
    imageAction='stop';
    imageActuelle=(imageActuelle-1+tableauImages.length)%tableauImages.length;
    ImageSuivante('blenddiv', 'blendimage', 1000, +1);
}

