var nouvelleRecherche=false;
var nouveauxEchos=false;

var isChrome=navigator.userAgent.lastIndexOf('Chrome')!=-1;

var reponseEnquete;

function searchProduct() {
	var selectedZone = document.getElementById('codeZone');
	if (selectedZone != null && selectedZone.value != '' && !nouvelleRecherche) {
		return true;
	}
	
	searchZone(document.getElementById('zoneSearchField').value);
	return false;
}

function setNouvelleRecherche(){
		if(nouveauxEchos&&navigator.appName=='Opera'){
			nouvelleRecherche=false;
			nouveauxEchos=false;
		}else{
			nouvelleRecherche=true;
		}
}

function selectZone() {
	var selectedZone = document.getElementById('codeZone');
	if (selectedZone != null && selectedZone.value != ''){
		document.getElementById('noResultSelected').style.display = 'none';
		document.getElementById('resultSelected').style.display = 'block';
		var libelleZoneSelected = document.getElementById('codeZone').options[document
				.getElementById('codeZone').selectedIndex].text;
		document.getElementById('libelleResultSelected').innerHTML = libelleZoneSelected;
		document.getElementById('titleSearchBox').innerHTML = 'Effectuer une nouvelle recherche';
	}
}

function modifyZone() {
	document.getElementById('noResultSelected').style.display = 'block';
	document.getElementById('resultSelected').style.display = 'none';
	document.getElementById('codeZone').value = '';
	document.getElementById('zoneSearchField').focus();
}

function selectZoneWithKey(e) {
	var characterCode = e.keyCode;

	if (characterCode == 13) {
		selectZone();
	}

}

function getXMLHttpRequest(){
	var xhr = null;
	if (window.XMLHttpRequest) {
		// Firefox ou IE >= 7.0
		xhr = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		try { // essaie de charger l'objet pour IE
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try { // essaie de charger l'objet pour une autre version IE
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				window
						.alert("Votre navigateur ne prend pas en charge l'objet XMLHTTPRequest.");
			}
		}
	}
	return xhr;
}

function openEnquete(url){
	var popup=window.open(url,"EnqueteWebRP","width=820, height=610");
	if(popup!=null&&popup.location!=undefined&&!isChrome){
		createCookie();
		$('#enquete').remove();
	}else{
		document.getElementById('enqueteLink').style.display='block';
		if(isChrome){
			createCookie();
			document.getElementById('cliquezIci').href=url;
			document.getElementById('cliquezIci').target='_blank';
		}
	}
}

function closeEnquete(){
	if(isChrome){
		$('#enquete').remove();
	}
}

function createCookie(){
	var expDate = new Date();
    expDate.setTime(expDate.getTime() + (60 * 24 * 3600 * 1000));
	document.cookie="inseeEnquete="+escape(reponseEnquete[0]+";"+reponseEnquete[2]+";"+reponseEnquete[3])+ ";expires=" + expDate.toGMTString();
}

function answerPoll(answerType){
	var xhr = getXMLHttpRequest();
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4) {
			if (xhr.status == 200) {
				reponseEnquete=xhr.responseText.split(";");
				
				if(reponseEnquete[0]==0){
					openEnquete(reponseEnquete[1]);
				}else{
					createCookie();
					$('#enquete').remove();
				}
			}
		}
	}
	
	var url = 'reponseEnquete.action?type=' + answerType+'&token='+new Date().getTime();
	xhr.open('GET', url, true);
	xhr.send(null);
}

function getEnquete(){
	if(navigator.cookieEnabled){
		var xhr = getXMLHttpRequest();
		xhr.onreadystatechange = function() {
			if (xhr.readyState == 4) {
				if (xhr.status == 200&&xhr.responseText!=0) {
					document.getElementById('enquete').innerHTML=xhr.responseText;
					
					$(document).ready(function() {
						$('#enquete').dialog({ modal: true,position: ['center','center'],width: 460 });
					});
					$(window).bind('resize', function() {
						$('#enquete').dialog( 'option', 'position', ['center','center'] );
					});
				}
			}
		}
		
		var url = 'enquete.action?token='+new Date().getTime();
		xhr.open('GET', url, true);
		xhr.send(null);
	}
}

function searchZone(searchString) {
	var xhr = getXMLHttpRequest();
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4) {
			if (xhr.status == 200) {
				document.getElementById('rechercheZone').innerHTML = xhr.responseText;
				var code = document.getElementById('codeMessage').value;
				var plusieursReponses = document.getElementById('plusieursReponses').value;
				nouvelleRecherche=false;
				nouveauxEchos=true;
				
				if (code == 6 && plusieursReponses == 'false') {
					document.getElementById('codeZone').selectedIndex = 0;
					selectZone();
				} else {

				}
			} else {
				document.getElementById('rechercheZone').innerHTML = 'Erreur : ' + xhr.status;
			}

		}
	}

	var url = 'zoneSearch.action?search=' + encodeURIComponent(searchString
			.toLowerCase());
	xhr.open('GET', url, true);
	xhr.send(null);

	return false;
}

function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|s*)" + className + "(s*|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i ];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}
