ie=(window.attachEvent!=null);
gecko=(window.addEventListener!=null);
oldX=0;
oldY=0;
offsetX=0;
offsetY=0;

// preload
img=new Image();
img.src="/fibd/images/maxi.gif";
img2=new Image();
img2.src="/fibd/images/mini.gif";


/****************************************************************
/
****************************************************************/
function mouseMove(e) {

evt=e?e:window.event;
offsetX=evt.clientX-oldX;
offsetY=evt.clientY-oldY;

oldX=evt.clientX;
oldY=evt.clientY;

var bar=document.getElementById('dragBar').parentNode;
var newX=parseInt(bar.style.left)+offsetX;
if (newX<140) newX=140;
if (newX+parseInt(bar.style.width)>window.innerWidth) newX=window.innerWidth-parseInt(bar.style.width);
var newY=parseInt(bar.style.top)+offsetY;
if (newY<0) newY=0;
bar.style.left=newX+"px";
bar.style.top=newY +"px";
/*
   document.getElementById('inn').innerHTML= "<hr>X=" + nX +"<br>Y=" +  nY+"<hr>dragBar.left="+msgx+"<br>dragBar.top="+msgy
   +"<hr>evt.x="+oldX+"<br>evt.y="+oldY
   ;
   */
}

/****************************************************************
/
****************************************************************/
function setMouseDown(e) {
evt=e?e:window.event;
oldX=evt.clientX;
oldY=evt.clientY;

if (ie) window.document.attachEvent("onmousemove", mouseMove );
else if (gecko) window.document.addEventListener( "mousemove", mouseMove, true );

target=evt.target || evt.srcElement;
if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;


}

/****************************************************************
/
****************************************************************/
function clearMouseDown() {
if (ie) {
   window.document.detachEvent("onmousemove", mouseMove );
} else if (gecko) {
   window.document.removeEventListener( "mousemove", mouseMove, true );  }
}



/****************************************************************
/
****************************************************************/
function closeWidget(e) {
//hideparent('dragBar');
moveElement('outerBox', -parseInt(document.getElementById('outerBox').style.width), -parseInt(document.getElementById('outerBox').style.height));
evt=e?e:window.event;
target=evt.target || evt.srcElement;

clearMouseDown();
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;
if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
} // function


/****************************************************************
/
****************************************************************/
function setStatusBox(e) {
window.status="Déplacez la fenêtre en tirant sur la barre de titre.";
evt=e?e:window.event;
target=evt.target || evt.srcElement;
if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;
}

/****************************************************************
/
****************************************************************/
function clearStatusBox(e) {
window.status="";
}

/****************************************************************
/
****************************************************************/
function setStatusClose(e) {
window.status="Cliquez sur ce bouton pour fermer la fenêtre.";
evt=e?e:window.event;
target=evt.target || evt.srcElement;
if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;
}

/****************************************************************
/
****************************************************************/
function clearStatusClose(e) {
window.status="";
}

/****************************************************************
/
****************************************************************/
function clearSelect(e) {
evt=e?e:window.event;
target=evt.target || evt.srcElement;
if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;
}

/****************************************************************
/
****************************************************************/
function toggleInnerBox(e) {
if (document.getElementById('innerBox').style.display=="") {
document.getElementById('innerBox').style.display="none";
document.getElementById('imgMini').src=img.src;
} else {
document.getElementById('innerBox').style.display="";
document.getElementById('imgMini').src=img2.src;
}

evt=e?e:window.event;
target=evt.target || evt.srcElement;
if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;

}

/****************************************************************
/
****************************************************************/
function cancelEvent(e) {
 evt=e?e:window.event;
target=evt.target || evt.srcElement;
//if (evt.stopPropagation) evt.stopPropagation(); else evt.cancelBubble=true;
if (evt.preventDefault) evt.preventDefault(); else evt.returnValue=false;
// return false;
}
/****************************************************************
/
****************************************************************/
function init() {
if (ie) {
  document.getElementById('dragBar').attachEvent("onmousedown", setMouseDown );
  document.getElementById('dragBar').attachEvent("onmouseover", setStatusBox );
  document.getElementById('dragBar').attachEvent("onmouseout", clearStatusBox );
//  document.getElementById('btMinimize').attachEvent("onmousedown", toggleInnerBox );
  window.document.attachEvent("onmouseup", clearMouseDown );
  document.getElementById('btClose').attachEvent("onmousedown", closeWidget );
  document.getElementById('btClose').attachEvent("onmouseover", setStatusClose );
  document.getElementById('btClose').attachEvent("onmouseout", clearStatusClose );
  window.document.attachEvent("onselectstart",cancelEvent);
} else if (gecko) {
  document.getElementById('dragBar').addEventListener( "mousedown", setMouseDown, false );
  document.getElementById('dragBar').addEventListener( "mouseover", setStatusBox, false );
  document.getElementById('dragBar').addEventListener( "mouseout", clearStatusBox, false );
//  document.getElementById('btMinimize').addEventListener( "mousedown", toggleInnerBox, false );
  window.document.addEventListener( "mouseup", clearMouseDown, true );
  document.getElementById('btClose').addEventListener( "mousedown", closeWidget, true );
  document.getElementById('btClose').addEventListener( "mouseover", setStatusClose, true );
  document.getElementById('btClose').addEventListener( "mouseout", clearStatusClose, true );
  window.document.addEventListener( "selectstart", cancelEvent, true );
}
}

/****************************************************************
/
****************************************************************/
function hideparent(aDiv) {
document.getElementById(aDiv).parentNode.style.display='none';
return false;
}


if (ie) {
   window.attachEvent("onload", init );
} else if (gecko) {
   window.addEventListener( "load", init, true );
}
