// JavaScript Document
var sendReq = getXmlHttpRequestObject();
var sendReq_ = getXmlHttpRequestObject();
//var receiveReq = getXmlHttpRequestObject();
		
//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		document.getElementById('p_status').innerHTML = 'Status: Cound not create XmlHttpRequest Object.  Consider upgrading your browser.';
	}
}

//submit data of crossed search 
function submitsearchcross(url){	
	//open connection to server
	var nom     = document.getElementById('keyword').value;
	var searchoption   = document.searchfrm.searchoption;
	for (var i=0; i<searchoption.length; i++)
	    if (searchoption[i].checked) {
			var searchoptionvalue = searchoption[i].value;
			break;
		}
	var periode = document.getElementById('periode').value;
	var regne   = document.getElementById('regne').value;
	var century = document.getElementById('century').value;
	var civil   = document.getElementById('civilisation').value;
	var form    = document.getElementById('formsite').value;
	var type    = document.getElementById('typesite').value;
	var noinv   = document.getElementById('nosite').value;
	var noik    = document.getElementById('noik').value;
	var noins   = document.getElementById('noins').value;
	var pays    = document.getElementById('pays').value;
	var province = document.getElementById('province').value;
	var district = document.getElementById('district').value;
	var commune  = document.getElementById('commune').value;
	var village  = document.getElementById('village').value;
	//test the value of the three no
	if (   !IsPureNumeric(noinv) && noinv != "*"
		|| !IsPureNumeric(noik) && noik != "*"
		|| !IsPureNumeric(noins) && noins != "*")
		alert("Le Nº d'inventaire, Nº IK et Nº d'inscription (K.) doivent être numérique or *");
	else{
		var param = 'searchcross&';
			param += (nom != "")? 'nomdusite='+nom+'&' : "";
			param += (searchoption != "")? 'searchoption='+searchoptionvalue+'&' : "";
			param += (periode != "")? 'periode='+periode+'&' : "";
			param += (regne != "")? 'regne='+regne+'&' : "";
			param += (century != "")? 'century='+century+'&' : "";
			param += (civil != "")? 'century='+civil+'&' : "";
			param += (form != "")? 'form='+form+'&' : "";
			param += (type != "")? 'type='+type+'&' : "";
			param += (noinv != "")? 'noinv='+noinv+'&' : "";
			param += (noik != "")? 'noik='+noik+'&' : "";
			param += (noins != "")? 'noins='+noins+'&' : "";
			param += (pays != "")? 'pays='+pays+'&' : "";
			param += (province != "")? 'province='+province+'&' : "";
			param += (district != "")? 'district='+district+'&' : "";
			param += (commune != "")? 'commune='+commune+'&' : "";
			param += (village != "")? 'village='+village+'&' : "";
		//alert(url+"?"+param);
		window.location.href = url+"?"+param;
	}
}

//function to sumit the status of site to server
function submitStatus(checkbox, url){
	var value = 0;
	if (checkbox.id=='niveau1')
		value = (checkbox.checked)? 1 : 0;
	else if (checkbox.id=='niveau2')
		value = (checkbox.checked)? 2 : 1;	
	doSubmitStatus(value, url)
}

//funciton to submit value of site if it 's the ref. in its group
function submitRefduGroupe(checkbox, url){
	var value = (checkbox.checked)? 1 : "";
	doSubmitStatus(value, url)
}
//submit data on status of site in two level 1 and 2
function doSubmitStatus(value, url){
	//document.getElementById("divalert").appendChild(workingimg);
	
	if (sendReq.readyState == 4 || sendReq.readyState == 0) {
		var workingimg = new Image();
		workingimg.src = './../images/working.gif';
		workingimg.style.padding= '1px 1px 1px 1px';
		document.getElementById("divalert").style.display='block';
		document.getElementById("divalert").style.background = "url(./../images/working.gif)";
		document.getElementById("divalert").innerHTML = "";
		
		var param = 'status=' + value;
		sendReq.open("POST", url, true);
		sendReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		sendReq.onreadystatechange = handleCallBackStatus; 
		sendReq.send(param);
	}
}

//function to check if the check box is checked to not and do something else if need in case
//it is attached with an even onchange
function doCheckbox(checkbox, url){

	if (checkbox.checked){
		document.getElementById('niveau1').checked=true;
		document.getElementById('niveau1').disabled=true;
	}
	else
		document.getElementById('niveau1').disabled=false;
		
	//submit its value
	submitStatus(checkbox, url);
}

//function to clear content if divalert
function clearAlert(){
	document.getElementById("divalert").style.display = 'none';
	document.getElementById("divalert").innerHTML = "";
}

//call back for submit status
function handleCallBackStatus(){
	if (sendReq.readyState == 4) {
		var txtResponse = sendReq.responseText;
		document.getElementById("divalert").innerHTML = "";
		document.getElementById("divalert").style.border = '1px solid #009966';
		document.getElementById("divalert").style.padding = '0px 10px 3px 10px';
		document.getElementById("divalert").style.background = 'none';
		document.getElementById("divalert").innerHTML = txtResponse;
		setTimeout(clearAlert, 10000);
	}
}

//send no site to server to be checked for exist
function checkNoSite(nosite, siteid){
	if (sendReq_.readyState == 4 || sendReq_.readyState == 0) {
		var param = 'nosite=' + nosite + '&siteid=' + siteid;
		sendReq_.open("POST", './admin/ctrl_as_checknosite.php', true);
		sendReq_.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		sendReq_.onreadystatechange = alertCheckNoSite; 
		sendReq_.send(param);
	}
}
//alert the result of checking of no site
function alertCheckNoSite(){
	if (sendReq_.readyState == 4) {
		var txtResponse = sendReq_.responseText;
		if (txtResponse != ""){
			document.getElementById("divalertchecking").innerHTML = "";
			document.getElementById("divalertchecking").style.border = "1px solid red";
			document.getElementById("divalertchecking").style.padding = "0px 10px 0px 10px";
			document.getElementById("divalertchecking").style.margin = "0px 10px 0px 10px";
			document.getElementById("divalertchecking").innerHTML = txtResponse;
		}else{
			document.getElementById("divalertchecking").innerHTML = "";
			document.getElementById("divalertchecking").style.border = "0px";
		}
	}
}
