/**
 * Affectation d'un evenement onclick
 */
 function loadEventListeners () {
 
	if(document.getElementById('btn_connect'))
	{
		document.getElementById('btn_connect').onclick = checkLogin;
	}
	
	if(document.getElementById('searchBtn'))
	{
	document.getElementById('searchBtn').onclick = searchFile;
	}
	
 }
 
function createRequest() {
  try {
    request = new XMLHttpRequest();
  } catch (trymicrosoft) {
    try {
      request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (othermicrosoft) {
      try {
        request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (failed) {
        request = false;
      }
    }
  }

  if (!request)
    alert("Erreur d\'initialisation de XMLHttpRequest!");

 } 
 
function getInfo() {
createRequest();	

var	agence1 = document.getElementById('agence1').options[document.getElementById('agence1').selectedIndex].value;

var agence2 = document.getElementById('agence2').options[document.getElementById('agence2').selectedIndex].value;

var heure1 = document.getElementById('heure1').options[document.getElementById('heure1').selectedIndex].value;

var heure2 = document.getElementById('heure2').options[document.getElementById('heure2').selectedIndex].value;

var debut_j = document.getElementById('debut_j').value;
var debut_m = document.getElementById('debut_m').value;
var debut_a = document.getElementById('debut_a').value;

var fin_j = document.getElementById('fin_j').value;
var fin_m = document.getElementById('fin_m').value;
var fin_a = document.getElementById('fin_a').value;
	
var url = "http://www.budget-gp.com/verif.php"; 


	 request.open("POST", url, true);
	 request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	 
	 request.onreadystatechange = info_horaire;
	 data="agence1="+agence1+"&debut_j="+debut_j+"&debut_m="+debut_m+"&debut_a="+debut_a+"&heure1="+heure1+"&agence2="+agence2+"&fin_j="+fin_j+"&fin_m="+fin_m+"&fin_a="+fin_a+"&heure2="+heure2;
	 request.send(data);
	
   }
   
 function VisibleImg()
{
	document.getElementById('loading').style.visibility="visible";
}
 
function HiddenImg()
{
	document.getElementById('loading').style.visibility="hidden";
} 
   
function info_horaire() 
{
	VisibleImg();
    if (request.readyState == 4) 
	{
		if(request.status == 200)
		{
	        var response = request.responseText;
			response = response.replace(/%5cr/g, "\r");
			response = response.replace(/%5cn/g, "\n");
			response = unescape(response);
			if(response == "ouvert")
			{
			document.FormResa.submit();
			HiddenImg();
			}
			else
			{
			window.alert(response);	
			HiddenImg();
			}
	    } 
		else
		{
	        alert("status is " + request.status);
	    }
	}
}

function searchFile () {

	createRequest();	

	var	cmde = document.getElementById('searchBox').value;
		
	var url = "http://www.budget-gp.com/admin/searchfile.php";

	 request.open("POST", url, true);
	 request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	 
	 request.onreadystatechange = getFile;
	 data="cmde="+cmde;
	 request.send(data);
	
}

function getFile()
{
	if(request.readyState == 4)
	{
		if(request.status == 200)
		{
			if (window.XMLHttpRequest) {
				xmlDoc = request.responseXML;
			} else if (window.ActiveXObject) {
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.loadXML(request.responseText);
			}
			
			//var xmlDoc= request.responseXML;
			var status = xmlDoc.getElementsByTagName("status")[0].childNodes[0].nodeValue;
			var error = xmlDoc.getElementsByTagName("error")[0].childNodes[0].nodeValue;
			var cmde = xmlDoc.getElementsByTagName("cmde")[0].childNodes[0].nodeValue;
			var sysmsg = xmlDoc.getElementsByTagName("sysmsg")[0].childNodes[0].nodeValue;
				sysmsg = sysmsg.replace(/%5cn/g, "\n");
				sysmsg = sysmsg.replace(/%5cr/g, "\r");
				sysmsg = sysmsg.replace(/\+/g, " ");
				sysmsg = unescape(sysmsg);
			if(error == 0)
			{
				if(status > 0)
				{
				// Ce dossier existe, on redirige vers
				url = "http://www.budget-gp.com/admin/Dossiers/"+cmde;
				window.location.href = url;
				}
				else
				{
					AlertBox(sysmsg,"box");
				}
			}
			else
			{
				AlertBox(sysmsg,"box");
			}
			
		}
		else
		{
			texte = "erreur connexion au serveur";
			AlertBox(texte);
		}	
	}

}

function GoFilter()
{

	//recherche du premier noeud
	var first = document.body.firstChild;

	// création du noeud filter
	var div_filter = document.createElement('div');

	// paramétrage des nouveaux noeuds
	div_filter.setAttribute("id", "filter");

	// raccord des noeuds
	document.body.insertBefore(div_filter, first);
	
	document.getElementById('filter').style.display='block';

}

function AlertDisconnect()
{
		var first = document.body.firstChild;

	// création du noeud box
		var div_box = document.createElement('div');
	
	// paramétrage des nouveaux noeuds
		div_box.setAttribute("id", "logoutBox");

	// raccord des noeuds
		document.body.insertBefore(div_box, first);
		
		document.getElementById("logoutBox").innerHTML = '<input type="button" value="CONFIRMEZ LA DECONNEXION" onClick="logout();" /><br /> <input id="cancel" type="button" value="ANNULER" />';

	// /********************************************************************/
	// /********************************************************************/
	
	document.getElementById("logoutBox").style.display='block';
	cancel = document.getElementById('cancel');
	
		cancel.onclick = function()
		{
			div_filter = document.getElementById('filter');
			div_box = document.getElementById('logoutBox');
			
			div_box.style.display='none';
			div_filter.style.display='none';
		}
		

}

function AlertBox(error,name)
{

	GoFilter();
	
	// création du noeud box
	var div_box = document.createElement('div');

	// paramétrage des nouveaux noeuds
	div_box.setAttribute("id", name);

		div_filter = document.getElementById('filter');
	// raccord des noeuds
	document.body.insertBefore(div_box, div_filter.nextSibling);
	
	// /********************************************************************/
	// /********************************************************************/
	
	document.getElementById(name).innerHTML = error;
	document.getElementById(name).style.display='block';

	
	filter.onclick = function()
	{
		div_filter = document.getElementById('filter');
		cur_div = document.getElementById(name);
		cur_div.style.display='none';
		div_filter.style.display='none';
	}
	

}

function checkLogin () {

	createRequest();	

	var	login = document.getElementById('login').value;
	var	passwd = document.getElementById('passwd').value;
		
	var url = "http://www.budget-gp.com/login/checklogin.php";

	 request.open("POST", url, true);
	 request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	 
	 request.onreadystatechange = authenticate;
	 data="login="+login+"&passwd="+passwd;
	 request.send(data);
	
}

function authenticate()
{
	if(request.readyState == 4)
	{
		if(request.status == 200)
		{
			if (window.XMLHttpRequest) {
				xmlDoc = request.responseXML;
			} else if (window.ActiveXObject) {
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.loadXML(request.responseText);
			}
			
			var status = xmlDoc.getElementsByTagName("status")[0].childNodes[0].nodeValue;
			var error = xmlDoc.getElementsByTagName("error")[0].childNodes[0].nodeValue;
			var sysmsg = xmlDoc.getElementsByTagName("sysmsg")[0].childNodes[0].nodeValue;
				sysmsg = sysmsg.replace(/%5cn/g, "\n");
				sysmsg = sysmsg.replace(/%5cr/g, "\r");
				sysmsg = sysmsg.replace(/\+/g, " ");
				sysmsg = unescape(sysmsg);
				
			var home = xmlDoc.getElementsByTagName("home")[0].childNodes[0].nodeValue;
				home = home.replace(/%5cn/g, "\n");
				home = home.replace(/%5cr/g, "\r");
				home = home.replace(/\+/g, " ");
				home = unescape(home);
				
			if(error == 0)
			{
				if(status > 0)
				{
				// Les login & mot de passe sont correct et la session enregistrée
				url = home;
				window.location.href = url;
				}
				else
				{
					
					
				}
			}
			else
			{
				AlertBox(sysmsg,"box");
			}
			
			
		}
		else
		{
			texte = "erreur connexion au serveur";
			AlertBox(texte);
		}	
	}

}

/**
 *	Affichage du formulaire de confirmation
 *	de  deconnexion
 */
  function dispLogoutform() {
  
		GoFilter();		
		AlertDisconnect();
  }
  
 
/**
 *	Deconnexion de la sesion courante
 */
  function logout() {  

	createRequest();	
		
	var url = "http://www.budget-gp.com/admin/logout.php";

	 request.open("POST", url, true);
	 request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	 
	 request.onreadystatechange = confirmLogout;
	 data="action=logout";
	 request.send(data);  
  }
  
function confirmLogout()
{
	if(request.readyState == 4)
	{
		if(request.status == 200)
		{
			if (window.XMLHttpRequest) {
				xmlDoc = request.responseXML;
			} else if (window.ActiveXObject) {
				xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				xmlDoc.loadXML(request.responseText);
			}
			
			var status = xmlDoc.getElementsByTagName("status")[0].childNodes[0].nodeValue;
			var error = xmlDoc.getElementsByTagName("error")[0].childNodes[0].nodeValue;
			var sysmsg = xmlDoc.getElementsByTagName("sysmsg")[0].childNodes[0].nodeValue;
				sysmsg = sysmsg.replace(/%5cn/g, "\n");
				sysmsg = sysmsg.replace(/%5cr/g, "\r");
				sysmsg = sysmsg.replace(/\+/g, " ");
				sysmsg = unescape(sysmsg);
			if(error == 0)
			{
				if(status > 0)
				{
				/**
				 *	La déconnexion s'est bien effectuée
				 *	on redirige sur la page admin
				 */
				url = "http://www.budget-gp.com/admin";
				window.location.href = url;
				}
				else
				{
					window.alert(sysmsg);
				}
			}
			else
			{
					window.alert(sysmsg);
			}
			
			
		}
		else
		{
			window.alert('erreur de connexion');
		}	
	}

}
