//////////////////////////////////////
/////
//Rollover Menu Image Functions
////
//////////////////////////////////////

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


////////////////////////////////////////////////////
////
// JavaScript functions to hide/display menus items
///
////////////////////////////////////////////////////

function change(id) {
var d = document.getElementById(id);
	if (d.style.display=='') {
			d.style.display='none';
	} else {
		if (d.style.display=='none') {d.style.display='';}
	}
}

function changeOnglet(num_champ,nom_tr) {
	
	var d4 = document.getElementById(nom_tr);
	var nbOnglets = d4.cells.length/3;
	var Onglet = num_champ*3;
	
	var EtatOnglet = d4.cells[Onglet].className;
	if(EtatOnglet == 'OngletGaucheBlanc'){
		var classGauche1 = 'OngletGaucheOrange';
		var classGauche2 = 'OngletGaucheBlanc';
		var classDroite1 = 'OngletDroiteOrange';
		var classDroite2 = 'OngletDroiteBlanc';
		var classTitre1  = 'OngletTitreOrange';
		var classTitre2  = 'OngletTitreBlanc';
	}else{
		if(EtatOnglet == 'OngletGaucheMauve'){
			var classGauche1 = 'OngletGaucheBleu';
			var classGauche2 = 'OngletGaucheMauve';
			var classDroite1 = 'OngletDroiteBleu';
			var classDroite2 = 'OngletDroiteMauve';
			var classTitre1  = 'OngletTitreBleu';
			var classTitre2  = 'OngletTitreMauve';
		}else{
			var classGauche1 = EtatOnglet;
		}
	}
	if(EtatOnglet != classGauche1){
		for (var c = 0; c < d4.cells.length; c++){
			if(c == Onglet){
				if(d4.cells[c].className == classGauche1){
					CloseDiv(nom_tr+c/3);
					d4.cells[c].className = classGauche2;
					d4.cells[++c].className = classTitre2;
					d4.cells[++c].className = classDroite2;
				}
				else{
					OpenDiv(nom_tr+c/3);
					d4.cells[c].className = classGauche1;
					d4.cells[++c].className = classTitre1;
					d4.cells[++c].className = classDroite1;
				}
			}
			else{
				if(EtatOnglet == classGauche1){
					OpenDiv(nom_tr+c/3);
					d4.cells[c].className = classGauche1;
					d4.cells[++c].className = classTitre1;
					d4.cells[++c].className = classDroite1;
				}
				else{
					CloseDiv(nom_tr+c/3);
					d4.cells[c].className = classGauche2;
					d4.cells[++c].className = classTitre2;
					d4.cells[++c].className = classDroite2;
				}
			}
		}
	}
}

function changeSelect(id_form,id_champ) {
	var d = document.getElementById(id_form);
	alert(id_form);
	var d2;
	for(i=0;i<d.options.length;i++){
		d2 = document.getElementById(window.document.forms["form1"].elements["name"].options[i].value);
		d2.style.display='none';
	}
	d = document.getElementById(id_champ);
	d.style.display='';
}

function changeDouble(id_open,id_close) {
	var d_open = document.getElementById(id_open);
	var d_close = document.getElementById(id_close);
	d_open.style.display='';
	d_close.style.display='none';
}

function CloseDiv(id) {
	var obj_close = document.getElementById(id);
	obj_close.style.display='none';
}

function OpenDiv(id) {
	var obj_open = document.getElementById(id);
	obj_open.style.display='';
}

/////////////////////////////////////////
///
/// Js functions coloring cells (change css class) on mouse events
////
////////////////////////////////////////

function cellOver(cell,css)
{
        d = document.getElementById(cell);
		d.className = '' + css + '' ;
		//alert(cell+' - css - '+css);
		//alert(d.className);
        return true;
}

function cellOut(cell,css)
{
        d = document.getElementById(cell);
		d.className = '' + css + '';
		//alert(cell+' - css - '+css);
		//alert(d.className);
        return true;
}

//////////////////////////////////////
///
/// Js functions for Layer display on mouse over
///
//////////////////////////////////////


// http://bontragerconnection.com/ and http://www.willmaster.com/
//http://www.willmaster.com/blog/css/floating-layer-at-cursor-position.php
// Version: July 28, 2007
var cX = 0; var cY = 0; var rX = 0; var rY = 0;

function UpdateCursorPosition(e){ cX = e.pageX; cY = e.pageY;}

function UpdateCursorPositionDocAll(e){ cX = event.clientX; cY = event.clientY;}
if(document.all) { document.onmousemove = UpdateCursorPositionDocAll; }
else { document.onmousemove = UpdateCursorPosition; }

function AssignPosition(d) {
if(self.pageYOffset) {
	rX = self.pageXOffset;
	rY = self.pageYOffset;
	}
else if(document.documentElement && document.documentElement.scrollTop) {
	rX = document.documentElement.scrollLeft;
	rY = document.documentElement.scrollTop;
	}
else if(document.body) {
	rX = document.body.scrollLeft;
	rY = document.body.scrollTop;
	}
if(document.all) {
	cX += rX; 
	cY += rY;
	}
d.style.left = (cX+10) + "px";
d.style.top = (cY+10) + "px";
}

function HideContent(d) {
if(d.length < 1) { return; }
document.getElementById(d).style.display = "none";
}

function ShowContent(d) {
if(d.length < 1) { return; }
var dd = document.getElementById(d);
AssignPosition(dd);
dd.style.display = "block";
}

function ReverseContentDisplay(d) {
if(d.length < 1) { return; }
var dd = document.getElementById(d);
AssignPosition(dd);
if(dd.style.display == "none") { dd.style.display = "block"; }
else { dd.style.display = "none"; }
}

//////////////////////////////////////
///
/// Js functions for POPUPS
///
//////////////////////////////////////

function openUrlInNewWindow(url) 
{
	win1 = window.open(url, 'newwindow', config='height=480, width=480, left=10, top=60, toolbar=no, scrollbars=yes, resizable=yes, location=no')
	win1.focus();
}

function openUrlInNewWindowParams(url,width,height) 
{
    win1 = window.open(url, 'newwindowx', config='height='+height+', width='+width+', left=10, top=60, toolbar=no, scrollbars=yes, resizable=yes, location=no')
	win1.focus();
}

//////////////////////////////////////
///
/// Js functions for AJAX CALLS
///
//////////////////////////////////////

function ajaxCall(objectId,objType,p)
{
	var url = 'ajax_call.php';
	var data = '?id='+objectId+'&t='+objType+'&idp='+p;
	//alert(url+data);
	//alert(url);
	sendData('GET',url,data);
}


function getHTTPObject()
{
  var xmlhttp = false;

  /* Compilation conditionnelle d'IE */
  /*@cc_on
  @if (@_jscript_version >= 5)
     try
     {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     }
     catch (e)
     {
        try
        {
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E)
        {
           xmlhttp = false;
        }
     }
  @else
     xmlhttp = false;
  @end @*/

  /* on essaie de créer l'objet si ce n'est pas déjà fait */
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
  {
     try
     {
        xmlhttp = new XMLHttpRequest();
     }
     catch (e)
     {
        xmlhttp = false;
     }
  }

  if (xmlhttp)
  {
     /* on définit ce qui doit se passer quand la page répondra */
     xmlhttp.onreadystatechange=function()
     {
        if (xmlhttp.readyState == 4) /* 4 : état "complete" */
        {
           if (xmlhttp.status == 200) /* 200 : code HTTP pour OK */
           {
              /*
              Traitement de la réponse.
              Ici on affiche la réponse dans une boîte de dialogue.
              */
              //alert(xmlhttp.responseText);
           }
        }
     }
  }
  return xmlhttp;
}

function sendData(method, url, data)
 {
    var xmlhttp = getHTTPObject();

    if (!xmlhttp)
    {
        return false;
    }

    if(method == "GET")
     {
     if(data == 'null')
     {
            xmlhttp.open("GET", url, true); //ouverture asynchrone
     }
     else
     {
            xmlhttp.open("GET", url+"?"+data, true);
     }
        xmlhttp.send(null);
     }
     else if(method == "POST")
     {
        xmlhttp.open("POST", url, true); //ouverture asynchrone
        xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
     	xmlhttp.send(data);
     }
    return true;
 }