var obj;

function getXhr(){
	var xhr = null; 
	if(window.XMLHttpRequest) // Firefox et autres
	   xhr = new XMLHttpRequest(); 
	else if(window.ActiveXObject){ // Internet Explorer 
	   try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
	}
	else { // XMLHttpRequest non supporté par le navigateur 
	   //alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
	   xhr = false; 
	}
	return xhr;
}



function infos(inter){
	var http = getXhr();
	var zone_i = document.getElementById("zone_infos");
	//zone_i.innerHTML = "-- Mise a jour --";
	//if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		//zone_i.innerHTML='MAJ';
		http.open("GET",path+"a_refresh.php",true);
		http.onreadystatechange = function (){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(http.readyState == 4 && http.status == 200){
				//if(xhr.responseText!=zone_i.innerHTML){
					//zone_i.stop();
					if(inter!=false && zone_i){
						zone_i.innerHTML = http.responseText;
					}
					//zone_i.start();
				//}
				setTimeout("infos()",20*1000);
			}else if(http.readyState == 4){
				if(inter!=false && zone_i){
					zone_i.innerHTML = 'AJAX error';
				}
			}
			
		}
		http.send(null);
		
	//}
	
}

function power_ext(zone, table, plan_id, option){
	
	var http = getXhr();
	//var zone=document.getElementById(zone);
	var z_table=document.getElementById(table);
	//var new_power=zone.options[zone.selectedIndex].value;
	show_wait_zone('zone_loading');
	if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		http.open("POST",path+"production.php",true);
		http.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(http.readyState == 4 && http.status == 200){
				z_table.innerHTML=http.responseText;
				update_res('zone_res');
				//hide_wait_zone('zone_loading');
			}else if(http.readyState == 4 && http.status != 200){
				//zone_t.innerHTML='<br />pb de communication AJAX';
				alert('AJAX error');
				hide_wait_zone('zone_loading');
			}
			
		}
		
		//http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.send('action=update&option='+option+'&plan_id='+plan_id);
	}
}

function update_power(zone, table, bat_id){
	
	var http = getXhr();
	var zone=document.getElementById(zone);
	var z_table=document.getElementById(table);
	var new_power=zone.options[zone.selectedIndex].value;
	show_wait_zone('zone_loading');
	if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		http.open("POST",path+"production.php",true);
		http.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(http.readyState == 4 && http.status == 200){
				z_table.innerHTML=http.responseText;
				update_res('zone_res');
			}else if(http.readyState == 4 && http.status != 200){
				alert('AJAX error');
				//zone_t.innerHTML='<br />pb de communication AJAX';
			}
			
		}
		
		//http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.send('action=update&bat_id='+bat_id+'&power='+new_power);
	}
}
function update_res(zone){
	ajax_fill(zone, 'minibar.php', 'ajax=TRUE');
}
/*
function update_res(zone){
	var txt;
	var http = getXhr();
	var zone=document.getElementById(zone);
	//zone.innerHTML="Mise a jour...";
	
	if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		http.open("GET",path+"minibar.php",true);
		http.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			
			
			if(http.readyState == 4 && http.status == 200){
				//if(http.responseText=='ok'){
					zone.innerHTML=http.responseText;
					//compte();
					/*
					setTimeout("newMSG('"+zone+"')",60*1000);
					setTimeout("decount_t('60')", 1000);
					
			}else if(http.readyState == 4 && http.status != 200){
				zone_t.innerHTML='<br />pb de communication AJAX';
			}
		}
		
		//http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.send('ajax=TRUE');
	}
}
*/
function sendNews(zone){
	var txt;
	var http = getXhr();
	var zone_tt = document.getElementById(zone+'_txt');
	var zone_t = document.getElementById(zone);
	obj = zone_t.innerHTML;
	txt = zone_tt.value;
	zone_tt.value ='';
	zone_t.innerHTML="<br />Envoi en cours...";
	
	if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		http.open("POST",path+"a_post_gm.php",true);
		http.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			
			
			if(http.readyState == 4 && http.status == 200){
				if(http.responseText=='ok'){
					zone_t.innerHTML='<br />Message envoye !<br>merci d\'attendre <font id="zone_tleft">60</font> secondes avant votre prochain message.';//<a onclick="newMSG(\''+zone+'\')">Nvx message</a>
					setTimeout("newMSG('"+zone+"')",60*1000);
					setTimeout("decount_t('60')", 1000);
				}else{
					zone_t.innerHTML='<br />'+http.responseText;
				}
			}else if(http.readyState == 4 && http.status != 200){
				zone_t.innerHTML='<br />pb de communication AJAX';
			}
		}
		
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.send('txt='+txt);
	}
}

function ajax_fill(zone, page, args){
	var txt;
	var http = getXhr();
	var zone=document.getElementById(zone);
	//zone.innerHTML="Mise a jour...";
	
	show_wait_zone('zone_loading');
	
	if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		http.open("POST",path+page,true);
		http.onreadystatechange = function(){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			
			
			if(http.status == 200){
				//if(http.responseText=='ok'){
					zone.innerHTML=http.responseText;
					//compte();
					/*
					setTimeout("newMSG('"+zone+"')",60*1000);
					setTimeout("decount_t('60')", 1000);
					*/
					hide_wait_zone('zone_loading');
			}else if(http.readyState == 4 && http.status != 200){
				zone.innerHTML='<br />pb de communication AJAX';
				alert('AJAX error');
				hide_wait_zone('zone_loading');
			}else{
				var zi = document.getElementById('zone_loading');
				zi.style.display = 'block';
				zi.innerHTML='Une erreur est survenue (code 0x'+http.status+' & stat :'+http.readyState+')';
				
			}
		}
		http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		http.send(args);
	}
}
function test_ajax(zone){
	var http = getXhr();
	zone=document.getElementById(zone);
	http.open("GET",path+"a_refresh.php",true);
	http.onreadystatechange = function (){
		// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		if(http.readyState == 4 && http.status == 200){
			//if(xhr.responseText!=zone_i.innerHTML){
				//zone_i.stop();
				zone.innerHTML = 'OUI';
				zone.style.color='green';
				//zone_i.start();
			//}
			setTimeout("infos()",20*1000);
		}else if(http.readyState == 4){
			if(inter!=false){
				zone.innerHTML = 'ERREUR';
				zone.style.color='red';
			}
		}
		
	}
	http.send(null);
}

var max=64;
				
function count_min(str){
	zone_left_chars.innerHTML=max-str.length;
}
function decount_t(cnt_t){
	var zone_tleft=document.getElementById("zone_tleft");
	cnt_t--;
	zone_tleft.innerHTML=cnt_t;
	setTimeout("decount_t('"+cnt_t+"')", 1000);
}
//zone_send
var zone_left_chars;
function newMSG(zone){
	var zone_t = document.getElementById(zone);
	zone_t.innerHTML=obj;
	obj='';
	zone_left_chars = document.getElementById("leftchar");
}



function serv_com(inter){
	var http = getXhr();
	//zone_i.innerHTML = "-- Mise a jour --";
	//if(http!=false){
		// On défini ce qu'on va faire quand on aura la réponse
		//zone_i.innerHTML='MAJ';
		http.open("GET",path+"commerce_serv.php",true);
		http.onreadystatechange = function (){
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(http.readyState == 4 && http.status == 200){
				//if(xhr.responseText!=zone_i.innerHTML){
					//zone_i.stop();
					if(inter!=false && zone_i){
						zone_i.innerHTML = http.responseText;
					}
					//zone_i.start();
				//}
				setTimeout("serv_com()",60*1000);
			}else if(http.readyState == 4){
				if(inter!=false && zone_i){
					zone_i.innerHTML = 'AJAX error';
				}
			}
			
		}
		http.send(null);
		
	//}
	
}

		