// JavaScript Document

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(traduction['no_XMLHttpRequest']); 
		xhr = false; 
	} 
	return xhr;
}
			
/**
* Méthode qui sera appelée sur le click du bouton
*/
function go(test){
	
	switch (test) {

		case 1:
			var xhr = getXhr();
			// On défini ce qu'on va faire quand on aura la réponse
			xhr.onreadystatechange = function(){
				// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
				if(xhr.readyState == 4 && xhr.status == 200){
					leselect = xhr.responseText;
					//alert(leselect);
					//alert(document.getElementById('regionsdiv').innerHTML);
					// On se sert de innerHTML pour rajouter les options a la liste
					document.getElementById('regionsdiv').innerHTML = leselect;
				}
			}
		
			// Ici on va voir comment faire du post
			xhr.open('POST','/ajaxRegions_'+code_langue+'.php',true);
			// ne pas oublier ça pour le post
			xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			// ne pas oublier de poster les arguments
			// ici, l'id de l'auteur
			sel = document.getElementById('pays');
			idpays = sel.options[sel.selectedIndex].value;
			//alert(idpays);
			xhr.send('idPays='+idpays);
			
			var xhr2 = getXhr();
			// On défini ce qu'on va faire quand on aura la réponse
			xhr2.onreadystatechange = function(){
				// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
				if(xhr2.readyState == 4 && xhr2.status == 200){
					leselect = xhr2.responseText;
					//alert(leselect);
					//alert(document.getElementById('regionsdiv').innerHTML);
					// On se sert de innerHTML pour rajouter les options a la liste
					document.getElementById('villesdiv').innerHTML = leselect;
				}
			}
		
			// Ici on va voir comment faire du post
			xhr2.open('POST','/ajaxVilles_'+code_langue+'.php',true);
			// ne pas oublier ça pour le post
			xhr2.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			// ne pas oublier de poster les arguments
			// ici, l'id de l'auteur
			sel2 = document.getElementById('regions');
			idregion = sel2.options[sel2.selectedIndex].value;
			xhr2.send('idregion='+idregion);
		
			break;	
		case 2:
			var xhr2 = getXhr();
			// On défini ce qu'on va faire quand on aura la réponse
			xhr2.onreadystatechange = function(){
				// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
				if(xhr2.readyState == 4 && xhr2.status == 200){
					leselect = xhr2.responseText;
					//alert(leselect);
					//alert(document.getElementById('regionsdiv').innerHTML);
					// On se sert de innerHTML pour rajouter les options a la liste
					document.getElementById('villesdiv').innerHTML = leselect;
				}
			}
		
			// Ici on va voir comment faire du post
			xhr2.open('POST','/ajaxVilles_'+code_langue+'.php',true);
			// ne pas oublier ça pour le post
			xhr2.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			// ne pas oublier de poster les arguments
			// ici, l'id de l'auteur
			sel2 = document.getElementById('regions');
			idregion = sel2.options[sel2.selectedIndex].value;
			xhr2.send('idregion='+idregion);
			break;
	}
}
			
			


jQuery().ready(
	function () {
		// FEUILLE DE STYLE IE7 
		// ajoutée pour les vieilles versions de Firefox
		jQuery.each(jQuery.browser, function(i, val) {
			if(i=='mozilla' && jQuery.browser.version.substr(0,3)< 1.9) {
				$('head').append ('<link rel="stylesheet" type="text/css" href="/styles/ie7-fix.css"></link>');
			}
		});
			
		// ACCES DIRECT
		//$("#acces-direct select").selectBox ();
		
		// ZONE RECHERCHE
		$('.zone-recherche .type-loisirs').hide ();
		$('.zone-recherche .bloc5 a').click (function(){
			$('.zone-recherche .type-loisirs').slideToggle ('fast', function() {
				//$(".zone-recherche .scroll").jScrollPane ({scrollbarWidth:11, showArrows:true});
			});
		});
		$('.zone-recherche .type-loisirs a').click (function(){
			$('.zone-recherche .type-loisirs').slideUp ("fast");
		});
		$(".zone-recherche input").checkBox ();
		
		// Liste options sur http://docs.jquery.com/UI/Datepicker#options
		var objOptions = {
				beforeShowDay: function (date) {
					var jour = date.getDay ();
					
					// TODO : récupérer les vraies dates de la haute saison 2010
					var debutHauteSaison = new Date (2010, 6, 3);
					var finHauteSaison = new Date (2010, 7, 28);
					
					var hauteSaison = (date.getTime () >= debutHauteSaison.getTime ()) && (date.getTime () <= finHauteSaison.getTime ());
					
					var selectable = hauteSaison ? false : true;
					
					switch (jour) {
						case 0 :
							// dimanche
							break;
						case 1 :
							// lundi
							break;
						case 2 :
							// mardi : non sélectionnable en basse saison
							if (!hauteSaison) selectable = false;
							break;
						case 3 :
							// mercredi : sélectionnable en haute saison
							if (hauteSaison) selectable = true;
							break;
						case 4 :
							// jeudi
							break;
						case 5 :
							// vendredi
							break;
						case 6 :
							// samedi : sélectionnable en haute saison
							if (hauteSaison) selectable = true;
							break;
						default :
							break;
					}
					
					var tooltip = selectable ? null : traduction['jour_arrivee_impossible'];
					return [selectable, '', tooltip];
				},
				changeMonth:true,
				//changeYear:true,
				maxDate:'+1y',
				minDate:'-0d',
				showMonthAfterYear:false,
				showOn:'both',
				buttonImage:'/media/calendrier/miniature.png',
				buttonImageOnly:true,
				buttonText:traduction['ouvrir_calendrier']
		};
		$.datepicker.setDefaults($.extend(objOptions, $.datepicker.regional['fr']));
		$("#date_arrivee").datepicker();

		$('.zone-recherche form').submit (function(){
			var tabErrors = [];
			var nbChecked = $(".zone-recherche .type-loisirs input:checkbox:checked").length;
			
			if ($('#nb_nuits').val()<1) {
				tabErrors.push (traduction['no_nb_nuits']);
			}

			if (nbChecked >2) {
				tabErrors.push (traduction['nb_selection_max_loisirs']);
			}
			
			if (tabErrors.length>0) {
				// erreurs, on empêche la validation du formulaire
				alert(tabErrors.join ('\n'));
				return false;
			} else {
				// pas d'erreur on valide le formulaire
				return true;
			}
		});
	}
)

