function showRegistrationForm() {
	$("#registrationFormId")
		.removeClass("displayNone")
		.addClass("displayBlock");
	/* DIGITAS - 08/2008 : Ajout */
	$("#comptePushLine").addClass("activeFormCompte");	
	/* DIGITAS - 08/2008 : Fin Ajout */
}

function resetHiddenCity() {
	var country = document.getElementById("country");
	if(country.value=='FR'){
		var city = document.getElementById("city");
	 	var cityTmp= '-';
		city.value= cityTmp;						 
	}
}
function onZipCodeChange(zipCode, idZipCodePrecedent) {			
	var zipCodePrecedent = document.getElementById(idZipCodePrecedent);					
	zipCodePrecedent.value= zipCode;
}

function getCitiesByZipCode(zipcode, idListBox, idZipCodePrecedent, prefix, countrySelected) {
	var zipCodePrecedent = document.getElementById(idZipCodePrecedent);	
	if(zipcode != null && zipcode != '' && zipCodePrecedent.value != zipcode) {
		// prefix = 'livr' || prefix = 'fact' || prefix = ''
		var errorNumId = prefix + 'ZipCodeErrorNum';
		var errorInvalidId = prefix + 'ZipCodeErrorInvalid';
		var errorImgId = prefix + 'ZipCodeErrorImg';
			
		var exp = new RegExp("\\d{5}"); // 5 chiffres
		if(exp.test(zipcode)) {
			// display error msg
			$('span#' + errorNumId + ',img#' + errorImgId).removeClass("displayBlock").addClass("displayNone");
			// load city list
			if(countrySelected == 'FR') {
				loadCities(zipcode, idListBox, prefix);
			} else {
			 	$("select#" + idListBox).empty();
			}
			
		} else { // autre chose que 5 chiffres
			// pas de message d'erreurs pour les pays != 'FR'
			if(countrySelected == 'FR')
				$('span#' + errorNumId + ',img#' + errorImgId).removeClass("displayNone").addClass("displayBlock");
			$('span#' + errorInvalidId).removeClass("displayBlock").addClass("displayNone"); // un seul message d'erreur
			// empty city list
			$("select#" + idListBox).empty();
		}	
	} else if(zipcode == null) {
	  	return false;
	}
}
	
function isExistingNPA(inputFieldId) {
	codeNPA = $("#"+inputFieldId).val();
	$.ajax({
		type: "POST",
		url: "ListCitiesByZipCodeView",
		data: "zipCode=" + codeNPA,
		success: function (msg) {
			var content = msg.responseText;
			switch (content) {
				case '1':
					$("#"+inputFieldId).removeClass('nonExistingNPA');
				break;
				case '0':
					$("#"+inputFieldId).addClass('nonExistingNPA');
				break;
				default: // dans le doute on bloque pas
					$("#"+inputFieldId).removeClass('nonExistingNPA');
				break;
			}
		},
		error: function () {
			// dans le doute on bloque pas
			$("#"+inputFieldId).removeClass('nonExistingNPA');
		}
	});
}

function loadCities(zipcode, idListBox, prefix) {
 	$("select#" + idListBox).empty();
	
	$.ajax( { 
      	type: "POST", 
	    url: "ListCitiesByZipCodeView", 
      	data: "zipCode=" + zipcode, 
      	success: 
          function(msg) { 
	          var content = msg.responseText;
	          
			  var start = 0;
			  var end = content.indexOf('|', start);
			  var nbRead = 0;	         	
			  while(end != -1) {
			     var ligne = content.substring(start,end);
			     var mid = ligne.indexOf(',');
			     var codeINSEE = ligne.substring(0,mid);
			     var label = ligne.substring(mid+1,ligne.length);
			     addOption(codeINSEE, label, idListBox);
			     start = end + 1;
			     end = content.indexOf('|', start);
			     ++nbRead;
			  }
			  var errorInvalidId = prefix + 'ZipCodeErrorInvalid';
			  var errorImgId = prefix + 'ZipCodeErrorImg';
			  if(nbRead <= 1) {
			  	// la première ligne n'est pas un résultat
			  	$('span#' + errorInvalidId + ',img#' + errorImgId).removeClass("displayNone").addClass("displayBlock");
			  } else {
			  	$('span#' + errorInvalidId + ',img#' + errorImgId).removeClass("displayBlock").addClass("displayNone");			  	
			  }
          },

      	error: 
          function() { 
              $("select#" + idListBox).empty();
          } 
  	});
}

function addOption(codeINSEE, label, idListBox) {
	listBox = document.getElementById(idListBox);
	opt = document.createElement('option');
	optTxt = document.createTextNode(label);
	att = document.createAttribute("value");
	att.nodeValue = codeINSEE;
	opt.appendChild(optTxt);
	opt.setAttributeNode(att);
	listBox.appendChild(opt);					
}

function putNPAFieldInError(inputFieldId) {
	$("#"+inputFieldId).addClass('nonExistingNPA');
}


//AEG: interdire les backslash dans les adresses client
function backslash(e){
    	if (!e) var e = window.event;
        if (e.keyCode==92) e.returnValue = false;
        if (e.which==92) return false;
}

