/******************************************************************************
    Composant de barre d'attente - jsWait
    Vincent Fiack - 18/03/2003
*******************************************************************************/
	
	
document.writeln("<div id=\"jsWaitMessage\" style=\"font-family: Verdana; color: white; font-size: 15px; text-align: center; padding: 3px; position: absolute; left: 35%; top: 81%; width: 325px; z-index:3\"></div>");
document.writeln("<div id=\"jsWaitArea\" style=\"display: none; position: absolute; left: 35%; top: 81%; height: 20px; width: 325px; border: 1px black solid; background: #4F6F86; z-index: 2\">");
document.writeln("<div id=\"jsWaitBlock\" style=\"position: relative; left: 0px; height: 20px; width: 30px; background: #00d228; z-index: 2 \"></div>");
document.writeln("</div>");

jsWait_defaultInstance = null;

function showWait(message)
{
  jsWait_defaultInstance = new jsWait('jsWait_defaultInstance', message);
  jsWait_defaultInstance.show();
}

// -------------------------------------------
//        Définition du type jsWait
// -------------------------------------------

/**
 * Constructeur
 * @param name le nom du composant
 * @param message le message a afficher
 */
function jsWait(name, message)
{
  this.name = name;
  this.message = message;
  this.speed = 10;
  this.direction = 2;

  this.waiting = false;

  this.divMessage = document.getElementById("jsWaitMessage");
  this.divArea = document.getElementById("jsWaitArea");
  this.divBlock = document.getElementById("jsWaitBlock");
}


// -------------------------------------------
//        Méthodes publiques
// -------------------------------------------

jsWait.prototype.show = function()
{
  this.divMessage.innerHTML = this.message;
  this.divMessage.style.display = "block";
  this.divArea.style.display = "block";
  this.divBlock.style.display = "block";
  this.divBlock.style.left = "0px";
  this.waiting = true;
  
  this.loop();
}

jsWait.prototype.setMessage = function(message)
{
  this.message = message;
  this.divMessage.innerHTML = this.message;
}

jsWait.prototype.stop = function()
{
  this.waiting = false;
  this.divMessage.style.display = "none";
  this.divArea.style.display = "none";
  this.divBlock.style.display = "none";
}


// -------------------------------------------
//        Méthodes privées
// -------------------------------------------

jsWait.prototype.loop = function()
{
  myLeft = this.divBlock.style.left;
  myLeft = myLeft.substring(0, myLeft.length-2);
  intLeft = parseInt(myLeft);

  if(intLeft >= 285)
    this.direction = -2;
  if(intLeft <= 0)
    this.direction = 2;

  myLeft = "" + (intLeft+this.direction) + "px";
  this.divBlock.style.left = myLeft;

  if(this.waiting)
    setTimeout(this.name + ".loop()", this.speed);
}