var l, h, x, y, iterTrans = 0, iterPause = 0;
var slide1, slide2, slideIn, slideOut;
var curImg = -1;
var delaiTrans = Math.round(durTrans * 50); // milisec entre deux transitions de 5% de la transition
var delaiPause = Math.round(durPause * 1000); // durée de la pause en milisec
var vitesse = 4 // indice du facteur de vitesse; entre 0 (lent) et 8 (rapide)
var factVitesse = new Array(5.0, 4.0, 3.0, 1.5, 1.0, 0.8, 0.4, 0.2, 0.1);
var delai = delaiTrans;
var sensTrans = 0;
var winWidth = Math.min(window.screen.availWidth, 1280);
var winHeight = Math.min(window.screen.availHeight, 960);
var maxWidth, maxHeight, rapp;
var timer = null;
var zoneTexte;
var delaiBase=5;
window.resizeTo (winWidth, winHeight);
getMax ()
// déterminer si on est sous Explorer et si les filtres fonctionnent
try
  {
  var test = slide1Frame.filters.item(0).opacity;
  }
catch(e)
  {
  filtreOK = false;
  }
var filtreOK = true;
function getMax ()
  {
  maxWidth = (window.innerWidth ? window.innerWidth : document.body.offsetWidth) * 0.75 - 30;
  maxHeight = (window.innerHeight ? window.innerHeight : document.body.offsetHeight);
  }
function diapo_animate()
  {
  slideIn = slide1 = document.getElementById ("slide1");
  slideOut = slide2 = document.getElementById ("slide2");
  zoneTexte = document.getElementById ("zoneTexte");
  setDiapo(slideIn, 0);
  setOpaque (slideIn, 0);
  curImg = 0;
  nextIter();
  window.onresize = getMax
  this.focus()
  }
function setDiapo (img, n)
  {
  img.src = diapoPath + diaposSrc[n];
  var rappx = Math.min(1, maxWidth / diaposWidth[n]);
  var rappy = Math.min(1, maxHeight / (diaposHeight[n] + 70));
  var rapp = Math.min(rappx, rappy);
  //window.status = rapp;
  img.width = diaposWidth[n] * rapp;
  img.height = diaposHeight[n] * rapp;
  document.getElementById(img.id + "Titre").innerHTML = diaposTitre[n];
  document.getElementById(img.id + "Texte").innerHTML = diaposTexte[n];
  durPause = delaiBase;
  if (diaposTexte[n]) durPause += diaposTexte[n].length/50 ;
  if (envoyePar != null)
    {
    if (envoyePar[n] != "")document.getElementById(img.id + "EnvoyePar").innerHTML = "Envoyée par : " + envoyePar[n];
    else document.getElementById(img.id + "EnvoyePar").innerText = "";
    }
  }
function setOpaque (slide, opacity)
  {
  var style = document.getElementById(slide.id + "Frame").style;
  if(filtreOK)
    {
    style.opacity = (opacity / 100);
    style.MozOpacity = (opacity / 100);
    style.KhtmlOpacity = (opacity / 100);
    style.filter = "alpha(opacity=" + opacity + ")"; 
    }
  else
    {
    style.visibility = (opacity <=50 ? "hidden" : "visible");
    }
  }
function nextIter()
  {
  //window.status = "iterTrans = " + iterTrans + ", iterPause = " + iterPause + ", delai = " + delai
  if (iterTrans <= 100)
    {
    // mode transition
    setOpaque (slideIn, iterTrans);
    if (slideOut.src) setOpaque (slideOut, 100-iterTrans) 
    iterTrans+=5 ;
    }
  else if (iterPause == 0)
    {
    // passer en mode pause
    delai = Math.round(durPause * factVitesse[vitesse] * 1000);
    iterPause = 1;
    }
  else
    {
    iterTrans = 0;
    iterPause = 0;
    delai = delaiTrans;
    nextImage(1)
    }
    
  if (modeAuto) timer = window.setTimeout("nextIter()", delai);
  }
  
function nextImage(n)
  {
  // changement d'images
  if (iterTrans <= 100)
    {
    // mode transition
    if (sensTrans)
      {
      slideOut = slide2;
      slideIn = slide1;
      }
    else
      {
      slideOut = slide1;
      slideIn = slide2;
      }
    sensTrans = !sensTrans;
    setOpaque (slideIn, 0);
    }
    curImg += n;
    if (curImg == diaposSrc.length)
      {
      // fin du diaporama
      curImg = 0;
      document.getElementById(slide1.id + "Texte").innerText = "";
      document.getElementById(slide2.id + "Texte").innerText = "";
      document.getElementById("diapoFin").style.visibility="visible";
      runSlidesButton();
      }
    if (curImg <0 )curImg = diaposSrc.length-1;
    setDiapo (slideIn, curImg);
  }
function runSlidesButton()
  {
  if (modeAuto)
    {
    // passer en mode manuel : terminer la transition courante
    if (iterTrans <= 100)
      {
      // mode de transition : terminer la transition courante
      iterTrans = 100;
      }
    else if(timer) 
      {
      // mode pause : annuler le chrono
      window.clearTimeout(timer);
      timer = null;
      }
    modeAuto = false;
    }
  else 
    {
    // passer en mode auto : simuler fin de pause
    document.getElementById("diapoFin").style.visibility="hidden";
    modeAuto = true;
    iterTrans = 101;
    iterPause = 1;
    nextIter(); 
    }
  setRunButton ();
  }
function nextImageButton()
  {
  nextImage(1)
  }
  
function prevImageButton()
  {
  nextImage(-1)
  }
function exitButton()
  {
  window.close();
  }
function setRunButton ()
  {
  var but = document.getElementById('runButton');
  if (modeAuto)
    {
    but.src = but.src.replace(/play/i, 'pause');
    but.alt = "Défilement manuel";
    }
   else
    {
    but.src = but.src.replace(/pause/i, 'play')
    but.alt = "Défilement automatique";
    }
  }
function speedButton(n)
  {
  vitesse = Math.min(Math.max(vitesse - n, 0), 8);
  }
setRunButton ();

