var hauteurMenu = Array( );
var refreshTimer =  25;
var max = 0, pos = 0;

var nPack = 4;
var delay = 2.5 * 1000;
var tPack = Array(0,0,0,0,0);
var mPack = -1;

var diva = "";

function Min( v1, v2 ) { return (v1 < v2) ? v1 : v2; }

function Max( v1, v2 ) { return (v1 > v2) ? v1 : v2; }


function setOpacity(obj, opacity) {
  obj.style.filter = "alpha(opacity:"+opacity+")";
  obj.style.KhtmlOpacity = (opacity / 100);
  obj.style.MozOpacity = opacity/100;
  obj.style.opacity = opacity/100;
}

function defilement( obj, opacity, hauteur, pasDefilement ) {
  if( parseInt(obj.offsetHeight) + pasDefilement < hauteur ) {
    obj.style.height = (parseInt(obj.offsetHeight) + pasDefilement) + "px";
    setOpacity(obj, 50.0+((parseFloat(parseInt(obj.offsetHeight))/parseFloat(hauteur))*100.0)/2.0 );
    setTimeout( function( ) {
      defilement(obj, 50.0+((parseFloat(parseInt(obj.offsetHeight))/parseFloat(hauteur))*100.0)/2.0, hauteur,pasDefilement);
    },refreshTimer);
  }
  else {
    obj.style.height = hauteur + "px";
    setOpacity(obj, 100);
  }
}

function remonter( obj, opacity, hauteur, pasDefilement ) {
  if( parseInt(obj.offsetHeight) - pasDefilement > 0 ) {
    obj.style.height = (parseInt(obj.offsetHeight) - pasDefilement) + "px";
    setOpacity(obj, 50.0+((parseFloat(parseInt(obj.offsetHeight))/parseFloat(hauteur))*100.0)/2.0 );
    setTimeout( function( ) {
      remonter(obj, 50.0+((parseFloat(parseInt(obj.offsetHeight))/parseFloat(hauteur))*100.0)/2.0, hauteur,pasDefilement);
    },refreshTimer);
  }
  else {
    obj.style.height = "1px";
    obj.style.display = "none";
    setOpacity(obj, 50);
  }
}

function toggleDisplay( div ) {
  var obj = document.getElementById(div);
  if( obj.style.display == "none" ) {
    setOpacity(obj, 50);
    obj.style.height = "1px";
    obj.style.display = "block";
    defilement(obj,50.0,hauteurMenu[div],parseFloat(hauteurMenu[div])/30.0);
    div = "SMenu1" == div ? "SMenu2" : "SMenu1";
    var obj = document.getElementById(div);
    if( obj.offsetHeight >= hauteurMenu[div] ) {
      obj.style.display = "none";
      obj.style.height = "1px";
      setOpacity(obj, 50);
    }
  }
  else if( obj.offsetHeight >= hauteurMenu[div] ) {
    setOpacity(obj, 100);
    remonter(obj,100.0,hauteurMenu[div],parseFloat(hauteurMenu[div])/30.0);
  }

  return false;
}

function initMenu( div ) {
  hauteurMenu[div] = parseInt(document.getElementById(div).offsetHeight);
  if( div != diva ) {
    document.getElementById(div).style.height = "1px";
    document.getElementById(div).style.display = "none";
  }
}

function getMousePosition(event)
{
  var e = event || window.event;
  var scroll = new Array((document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft,(document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop);
  return e.clientX + scroll[0] - document.body.clientLeft;
}

function getPosition(element)
{
  var _left = 0;
  var _top = 0;
  var e = document.getElementById(element);

  while (e.offsetParent != undefined && e.offsetParent != null) {
      _left += e.offsetLeft + (e.clientLeft != null ? e.clientLeft : 0);
      _top += e.offsetTop + (e.clientTop != null ? e.clientTop : 0);
      e = e.offsetParent;
  }
  return _left;
}

function initFollow( obj_name, container ) {
  var obj = document.getElementById(obj_name);
  max = document.getElementById(container).offsetWidth - obj.offsetWidth - 20;
  pos = obj.offsetLeft;
}

function followMouse( event ) {
  var mpos = getMousePosition(event);
  pos = mpos - getPosition("MainLeft") - 32;
  pos = Max(0,pos);
  pos = Min(pos,max);
  document.getElementById("Pack").style.left = pos + "px";
}

//window.onmousemove = followMouse;

function initImage(image1, image2, n1, n2) {
  if( mPack == -1 ) {
    setOpacity(image1, tPack[n1]);
    setOpacity(image2, tPack[n2]);
    fadeIn(image1, image2, 0, n1, n2);
  }
}

function fadeIn(obj1, obj2, opacity, n1, n2) {
  if(opacity <= 100 && mPack == -1 ) {
    setOpacity(obj1, opacity); tPack[n1] = opacity ;
    setOpacity(obj2, tPack[n2] - 5); tPack[n2] = tPack[n2] - 5;
    opacity += 5;
    if( mPack == -1 ) setTimeout( function( ) {
      fadeIn(obj1, obj2, opacity, n1, n2);
    },50);
  }
}

function show(n1) {
  if( mPack != n1 ) {
    mPack = n1;
    FadeIn(n1,document.getElementById("Pack" + n1 ),tPack[n1]);
    for( var i = 0; i < 5; i++ ) {
      if( i != n1 ) {
        FadeOut(i,document.getElementById("Pack" + i ),tPack[i]);
      }
    }
  }
}

function hide(n1) {
  if( mPack != -1 ) {
    mPack = -1;
    FadeOut(n1,document.getElementById("Pack" + n1 ),tPack[n1]);
  }
}

function FadeIn(n1,obj1,opacity) {
  if( mPack == n1 ) {
    opacity += 10;
    opacity = Min(opacity, 100);
    setOpacity(obj1, opacity); tPack[n1] = opacity;
    if( opacity < 100 && mPack == n1 ) setTimeout( function( ) {
      FadeIn(n1,obj1,opacity);
    },50);
  }
}

function FadeOut(n1,obj1,opacity) {
  if( opacity > 0 && mPack != n1 ) {
    opacity -= 10;
    opacity = Max(opacity, 0);
    setOpacity(obj1, opacity); tPack[n1] = opacity;
    if( opacity > 0 && mPack != n1 ) setTimeout( function( ) {
      FadeOut(n1,obj1,opacity);
    },50);
  }
}

function startFade( ) {
  var nPack2 = nPack;
  if( mPack == -1 ) {
    nPack = (nPack + 1) % 5;
    initImage(document.getElementById("Pack" + nPack ),document.getElementById("Pack" + nPack2),nPack,nPack2);
  }
  setTimeout("startFade( )",delay);
}

function init( ) {
  setOpacity(document.getElementById("Pack" + 0 ),0);
  setOpacity(document.getElementById("Pack" + 1 ),1);
  setOpacity(document.getElementById("Pack" + 2 ),2);
  setOpacity(document.getElementById("Pack" + 3 ),3);
  setOpacity(document.getElementById("Pack" + 4 ),4);
  startFade( );
}

window.onload = init;

