function checkMail(cadena) {
//var plant=/^([a-z0-9][\w\+\-\.%!#&=]*)?[a-z0-9]@([a-z0-9](([a-z0-9\-])*[a-z0-9])?\.)*[a-z0-9][a-z0-9\-]*[a-z0-9]\.[a-z]{2,3}$/i
var plant=/^([a-z0-9][\w\+\-\.%!#&=]*)?[a-z0-9]@([a-z0-9](([a-z0-9\-])*[a-z0-9])?\.)*[a-z0-9][a-z0-9\-]*[a-z0-9]\.[a-z]{2,4}$/i

if (!plant.test(cadena))
     alert('Your mail address does not seem to be valid');

}

function recalcule() {
var form=document.forms[0]
taille=form.elements.length;
total=0;
for (i=0;i<taille;i++) {
	if (form.elements[i].name.substring(0,4)=="room") {
		total+=form.elements[i].value*1;
	}
}
maxi=form.elements['nbperson'].value;

dispo=maxi-total;

// on réduit où on agrandit le nombre de cases des éléments
for (i=0;i<taille;i++) {
	if (form.elements[i].name.substring(0,4)=="room") {
		nb=form.elements[i].value*1;
		nt=dispo>0? nb+dispo : nb;
		//alert(nt);
		for (j=0;j<nt+1;j++) {
			form.elements[i].options[j]=new Option(j,j);
		}
		form.elements[i].selectedIndex=nb;
		form.elements[i].length=nt+1;
	}
}

}

function recalculedispo(truc) {
var form=document.forms[0]
taille=form.elements.length;
if(truc<taille){taille=truc;}
total=0;
for (i=0;i<taille;i++) {
        if (form.elements[i].name.substring(0,4)=="room") {
                total+=form.elements[i].value*1;
        }
}
maxi=form.elements['nbperson'].value;
dispo=maxi-total;
if(truc<dispo){dispo=truc;}
 
// on réduit où on agrandit le nombre de cases des éléments
for (i=0;i<taille;i++) {
        if (form.elements[i].name.substring(0,4)=="room") {
                nb=form.elements[i].value*1;
                nt=dispo>0? nb+dispo : nb;
                //alert(nt);
                for (j=0;j<nt+1;j++) {
                        form.elements[i].options[j]=new Option(j,j);

                }
                form.elements[i].selectedIndex=nb;
                form.elements[i].length=nt+1;
        }
}
 
}



function change_mois(ele) {
	var form=document.forms[0];
	var annee=form.elements[ele+'[an]'].value;
	var mois=form.elements[ele+'[mois]'].value;
	var jour=form.elements[ele+'[jour]'].value;
	var tab=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	tab[1]+=(annee%4==0) ? 1 : 0;
	nt=tab[mois-1];
	for (j=1;j<nt+1;j++) {
		form.elements[ele+'[jour]'].options[j-1]=new Option(j,j);
	}
	form.elements[ele+'[jour]'].selectedIndex=jour <= nt ? jour-1 : nt-1;
	form.elements[ele+'[jour]'].length=nt;
	
}

function verifdates() {

	if((document.forms.form1.arrive.value=='')||(document.forms.form1.depart.value=='')){
		alert('Please specify your dates.');
		return(false);
	}
	else{
		document.forms.form1.submit();
	}

}

function verifdatesregion(idregion) {
                
        if((document.forms.form1.arrive.value=='')||(document.forms.form1.depart.value=='')){ 
                alert('Please specify your dates.');
                return(false);
        }
        else{   
		document.forms.form1.provselect.value=idregion;
                document.forms.form1.submit();
        }
         
}

function verifdatespopup() {
        
        if((document.forms.form1.arrive.value=='')||(document.forms.form1.depart.value=='')){
                alert('Please specify your dates.');
                return(false);
        }
        else{   
		window.opener.document.mois.depart.value=document.form1.depart.value;
		window.opener.document.mois.arrive.value=document.form1.arrive.value;
		window.opener.document.mois.submit();
		window.close();
        }
                
}

function recalcule_date(locktime) {
	var form=document.forms[0];
	var day_name = new Array('sunday','monday','tuesday','wednesday','thursday','friday','saturday');
	var debut=new Date(form.elements['deb[an]'].value,form.elements['deb[mois]'].value-1,form.elements['deb[jour]'].value);

	// vérification de la date de fin
	var fin=new Date(form.elements['fin[an]'].value,form.elements['fin[mois]'].value-1,form.elements['fin[jour]'].value);
	if ((fin<=debut)||(locktime)) {
		if (!locktime) locktime=1;
		fin=new Date(debut.getFullYear(), debut.getMonth(), debut.getDate()+locktime);
		anfin=fin.getYear()-form.elements['fin[an]'].options[0].value;
		// la fin justifie les moyens
		if (anfin>=form.elements['fin[an]'].length) {
			fin=new Date(debut.getFullYear(), 11, 31);
			debut=new Date(debut.getFullYear(), 11, fin.getDate()-locktime);
			anfin=form.elements['fin[an]'].length-1;

			form.elements['deb[jour]'].selectedIndex=debut.getDate()-1;
			form.elements['deb[mois]'].selectedIndex=debut.getMonth();
			form.elements['deb[an]'].selectedIndex=anfin;
		}
		form.elements['fin[jour]'].selectedIndex=fin.getDate()-1;
		form.elements['fin[mois]'].selectedIndex=fin.getMonth();
		form.elements['fin[an]'].selectedIndex=anfin;
	}
}
