/*-------------------------------------------------
* Function : getLoc()
* Desc : Make ajax request using Prototype framwork
* Last Updated : 12.06.2009
* Dependencies : FrameWork Prototype 1.6.0.3
-------------------------------------------------*/
function getLoc(pNPA, pLocalite) {
	if(pNPA.value.length==4){
	
		var dateYear = new Date();
		var year = dateYear.getFullYear();
		
		var url="/web/gestionlistes.nsf/getajaxtown?openagent&npa="+pNPA.value+"&year="+year;
		var myAjax = new Ajax.Request(url, {
  			method: 'get',
			onSuccess: function(transport){
				handleHttpResponse(transport.responseText.evalJSON(), pLocalite);
			}
		});
	}
	
	else {
		pLocalite.innerHTML = null;
		pLocalite.disabled = true;
		pLocalite.style.width = "170";
	}
}
/*-------------------------------------------------
* Function : handleHttpResponse()
* Desc : Traitement de l'ajax
* Last Updated : 12.06.2009
* Dependencies : FrameWork Prototype 1.6.0.3
-------------------------------------------------*/
function handleHttpResponse(jsonResponse, pLocalite){
	var loc = pLocalite;
	var result = jsonResponse;
	var resJSON = new Array();
	var data;
	
	if (!result.isError) {
		resJSON = result.data;
		for (var j = 0; j < resJSON.length; j++){
			if (data != null)
				data += "," + resJSON[j].ville;
			else
				data = resJSON[j].ville;
		}
		var ville = data.split(",");
		addValueIntoSelect(loc, ville.sort());
	}
	else {
		// Message quand aucunes localités ne correspond au npa
		var language = document.getElementsByName("dLanguage")[0].value;
		var msgErreur;
	switch (language.toUpperCase()) {
		case "D":
			msgErreur= "diese Postleitzahl existiert nicht";
			break;
		case "I":
			msgErreur= "questo numero postale è inesistente"
			break;
		default:
			msgErreur = "ce numéro postal est inexistant";
			break;
	}		
		// vide un select
		loc.innerHTML = null;
		
		var op = new Option(msgErreur, "", false, false);
		loc.style.width = "210";
		loc.options.add(op);
		loc.disabled = true;
	}
}
/*-------------------------------------------------
* Function : addValueIntoSelect()
* Desc : Ajout des valeurs dans le select de la ville
* Last Updated : 12.06.2009
-------------------------------------------------*/
function addValueIntoSelect(elSel, values){
	var op;
	var language = document.getElementsByName("dLanguage")[0].value;
	var text;
	
	switch (language.toUpperCase()) {
		case "D":
			text = "Wählen Sie Ihre Ortschaft";
			break;
		case "I":
			text = "Scegliete la vostra località";
			break;
		default:
			text = "Choisissez votre localité";
			break;
	}
	// Vide le select
	elSel.innerHTML = null;
	
	// Ajout des villes	
	if (values.length > 1) {
		for (var i = -1; i < values.length; i++) {
			if (i != -1)
			{
				op = new Option(values[i], values[i], false, false);
				elSel.options.add(op);
			}
			else {
					op = new Option(text, "", false, false);
					elSel.options.add(op);
					elSel.disabled = false;
			 	}
		}
	}
	else {
		elSel.innerHTML = null;
		op = new Option(values[0], values[0], false, false);
		elSel.options.add(op);
		elSel.disabled = true;
	}
}
function callAgent()
{
	if(window.document.forms["_WFormular"].cPrime)
	{
		var srcVal ='/web/animalia/offres/animalia.nsf/CalculPrime?OpenAgent&'  + escape(window.document.forms["_WFormular"].AnimalCategory.value) + escape("$$") + escape(getSelectedButton(window.document.forms["_WFormular"].Payment)) + escape("$$") + escape(window.document.forms["_WFormular"].Franchise.value) + escape("$$") + 
escape(getSelectedButton(window.document.forms["_WFormular"].Couverture)) + escape("$$") + 
escape(window.document.forms["_WFormular"].cKind.value) + 
escape("¬divPrime¬divRabais¬divNet");
		
var myAjax = new Ajax.Request(srcVal, {
method: 'get',
onSuccess: function(transport){
calcPrime(transport.responseText.evalJSON());
}
});
	}
}
	function calcPrime(json){
  
  	$('divPrime').style.display = 'inline';
	$('divPrime').innerHTML = json.data.prime1;
	$('divRabais').style.display = 'inline';
	$('divRabais').innerHTML = json.data.st1;
	$('divNet').style.display = 'inline';
	$('divNet').innerHTML = json.data.st2;
	//Primes
	$('primeBrute').value = json.data.prime1;
	$('primeRabais').value = json.data.st1;
	$('primeNet').value = json.data.st2;
  }
// gestion du Cookie (Laekerli) partenaire 
function checkProvenance() {
	if (document.getElementsByName("Provenance")[0]!= null){
		 var sProv = document.getElementsByName("Provenance")[0].value;
		 // if champ non vide je créé le cookie
		 if (sProv != "") {
		 		 setLaekerli("Provenance", sProv)
		 } else {
		 		 // champ pas renseigné, je vais chercher si cookie existe
		 		 sProv = getLaekerli("Provenance")

		 		 // si valeur cookie trouvé, assigne valeur au champ
		 		 if(typeof(sProv) == 'undefined') {
		 		 		 // on ne fait rien, la personne n'a pas de code partenaire
		 		 } else {
		 		 		 document.getElementsByName("Provenance")[0].value=sProv
		 		 }
		 }
	}
}

function setLaekerli(nom, sProv) {
		 document.cookie=nom+"="+escape(sProv)+ ";path=/";
}

function getLaekerli(nom) {
		 var arg=nom+"=";
		 var alen=arg.length;
		 var clen=document.cookie.length;
		 var i=0;
		 while (i<clen) {
		 		 var j=i+alen;
		 		 if (document.cookie.substring(i, j)==arg)
            		 return GetCookieVal (j);
            i=document.cookie.indexOf(" ",i)+1;
            if (i==0) break;
		 		 return null;
		 }
}

function GetCookieVal(offset) {
		 var endstr=document.cookie.indexOf (";", offset);
		 if (endstr==-1)
      		 endstr=document.cookie.length;
		 return unescape(document.cookie.substring(offset, endstr));
}
