﻿<!-- Begin
function formtest(language)
{
 var noname,nosurname,noemail,noadults,nonights,norooms,date_failure,date_failure_1,
     date_failure_car,date_failure_car_1,             
     email_failure,email_value,email_dot;  
 var emptyfields_header="";
 var emptyfields="";
 var error_date="";
 var error_message="";
 var error_email="";
 var error_car="";
 var nonumeric="";

 var name=document.forms['formulaire'].elements['nom'].value;
 var surname=document.forms['formulaire'].elements['prenom'].value;
 var city=document.forms['formulaire'].elements['ville'].value;
 var email=document.forms['formulaire'].elements['email'].value;
 var no=document.forms['formulaire'].elements['numero'].value;
 var postcode=document.forms['formulaire'].elements['codepostal'].value;
 var tel=document.forms['formulaire'].elements['tel'].value;
 var fax=document.forms['formulaire'].elements['fax'].value;
 var handy=document.forms['formulaire'].elements['portable'].value;
 var from=document.forms['formulaire'].elements['du'].selectedIndex;
 var month1=document.forms['formulaire'].elements['mois1'].selectedIndex;
 var year1=document.forms['formulaire'].elements['annee1'].selectedIndex;
 var to=document.forms['formulaire'].elements['au'].selectedIndex;
 var month2=document.forms['formulaire'].elements['mois2'].selectedIndex;
 var year2=document.forms['formulaire'].elements['annee2'].selectedIndex;
 var from_car=document.forms['formulaire'].elements['voiture_de_jour'].selectedIndex;
 var month1_car=document.forms['formulaire'].elements['voiture_de_mois'].selectedIndex;
 var year1_car=document.forms['formulaire'].elements['voiture_de_annee'].selectedIndex;
 var to_car=document.forms['formulaire'].elements['voiture_a_jour'].selectedIndex;
 var month2_car=document.forms['formulaire'].elements['voiture_a_mois'].selectedIndex;
 var year2_car=document.forms['formulaire'].elements['voiture_a_annee'].selectedIndex;
 var nights=document.forms['formulaire'].elements['nombre_nuits'].value;
 var adults=document.forms['formulaire'].elements['adultes'].value;
 var children=document.forms['formulaire'].elements['enfants'].value;
 var rooms=document.forms['formulaire'].elements['nombre_chambres'].value;
 var with_car=document.forms['formulaire'].elements['voiture'].value;
 var car_days=document.forms['formulaire'].elements['jours_voiture'].value;

 switch (language)
 {
  case ("fr"):
  {
   emptyfields_header="Erreur de saisie: les champs suivants sont vides ou erronés:\n";
   noname="-nom\n";
   nosurname="-prénom\n";
   noemail="-email\n";
   noadults="-le nombre de personnes\n";
   nonights="-le nombre de nuits\n";
   norooms="-le nombre de chambres\n";
   date_failure="Vous devez indiquer jour/mois/année des dates d'arrivée et de départ";
   date_failure_1="Les dates de départ et d'arrivée ou le nombre de nuits sont erronés";
   email_failure="Adresse email erronée";
   date_failure_car="Vous devez indiquer jour/mois/année des dates de location du véhicule et le nombre de jours";
   date_failure_car_1="Les dates pour la location de la voiture ou le nombre de jours sont erronés";
   car_failure="Voulez vous vraiment louer une voiture ?";
   break;
  }
  case ("uk"):
  {
   emptyfields_header="Input error: the following fields are empty or erroneous:\n";
   noname="-name\n";
   nosurname="-surname\n";
   noemail="-email\n";
   noadults="-number of persons\n";
   nonights="-number of nights\n";
   norooms="-number of rooms\n";
   date_failure="Please enter day/month/year for arrival and departure dates";
   date_failure_1="Arrival and departure dates or number of nights are invalid !";
   email_failure="Invalid email address !";
   date_failure_car="Please enter day/month/year and number of days for renting the car";
   date_failure_car_1="Dates of car renting or number of days are invalid !";
   car_failure="Do you really want to rent a car ?";
   break;
  }
  case ("de"):
  {
   emptyfields_header="Eingabefehler: die folgenden Felder sind entweder leer oder fehlerhaft:\n";
   noname="-Name\n";
   nosurname="-Vorname\n";
   noemail="-Email\n";
   noadults="-Anzahl Personen\n";
   nonights="-Anzahl Nächte\n";
   norooms="-Anzahl Zimmer\n";
   date_failure="Bitte geben Sie Tag/Monat/Jahr zum Ankunft- bzw. Abfahrtdatum ein !";
   date_failure_1="Fehlerhafte Ankunft/Abfahrtdaten bzw. Anzahl Nächte !";
   email_failure="Ungültige Email-Adresse !";
   date_failure_car="Bitte geben Sie Tag/Monat/Jahr zum Automieten sowie die Anzahl Tage ein !";
   date_failure_car_1="Fehlerhafte Daten zum Automieten bzw. falsche Anzahl Tage !";
   car_failure="Wollen Sie wirklich ein Auto mieten ?";
   break;
  }
  case ("nl"):
  {
   emptyfields_header="Invul fout: de volgende velden zijn leeg of foutief:\n";
   noname="-naam\n";
   nosurname="-voornaam\n";
   noemail="-email\n";
   noadults="-aantal personen\n";
   nonights="-aantal nachten\n";
   norooms="-aantal kamers\n";
   date_failure="Vul dag/maand/jaar voor aankomst en vertrek datum in";
   date_failure_1="Aankomst en vertrek datum of aantal nachten zijn ongeldig !";
   email_failure="Foutief email adres !";
   date_failure_car="Vul dag/maand/jaar en aantal dagen voor het huren van auto in";
   date_failure_car_1="Datum of aantal dagen voor het huren van auto is foutief !";
   car_failure="Wilt U inderdaad een auto huren ?";
   break;
  }
  case ("sp"):
  {
   emptyfields_header="Error: faltan los datos siguientes o son erroneos:\n";
   noname="-apellido\n";
   nosurname="-nombre\n";
   noemail="-e mail\n";
   noadults="-el nùmero de personas\n";
   nonights="-el nùmero de noches\n";
   norooms="-el nùmero de habitaciones\n";
   date_failure="Especifique las fechas de llegada y salida siguiendo este formato: dia/mes/ano";
   date_failure_1="Las fechas de llegada y/o salida o el nùmero total de noches no son correctas";
   email_failure="La direccion e mail no es correcta !";
   date_failure_car="Especifique las fechas para el alquiler del coche siguiendo este formato: dia/mes/ano";
   date_failure_car_1="Las fechas especificadas o el nùmero de dias no es correcto";
   car_failure="Quiere usted realmente alquilar un coche ?";
   break;
  }
  case ("it"):
  {
   emptyfields_header="Errore : Il campo seguente sono vuoti sbagliato:\n";
   noname="-nome\n";
   nosurname="-cognome\n";
   noemail="-email\n";
   noadults="-Il numero delle persone\n";
   nonights="-Il numero delle notti\n";
   norooms="-Il numero delle camere\n";
   date_failure="Lei deve indicare giorno/ mese/ anno/ della data da rivo e della partenza";
   date_failure_1="Le date di partenza e quelle da rivo o il numero delle notti sono sbagliati";
   email_failure="Indirizzo email sbagliato !";
   date_failure_car="Lei deve indicare giorno/ mese/ anno/ della data della locazione del veicolo e la quantità dei giorni";
   date_failure_car_1="Le date per la locazione del veicolo o la quantità dei giorni sono sbagliati";
   car_failure="Vuole davvero affittare un veicolo ?";
   break;
  }
  case ("ru"):
  {
   emptyfields_header="Ошибка ввода: следующие поля пустыми или ошибочные:\n";
   noname="-имя\n";
   nosurname="-фамилия\n";
   noemail="-электронная почта\n";
   noadults="-число лиц,\n";
   nonights="-количество ночей\n";
   norooms="-Количество номеров\n";
   date_failure="Пожалуйста, введите день / месяц / год  для  даты прибытия и выезда";
   date_failure_1="Даты прибытия и выезда или  количество ночей, являются недействительными !";
   email_failure="Неправильный адрес электронной почты !";
   date_failure_car="Пожалуйста, введите день  /  месяц  /  год  и  количество дней аренды автомобиля";
   date_failure_car_1="Даты аренды автомобиля или количество дней, являются недействительными !";
   car_failure="Вы действительно хотите  арендовать  автомобиль ?";
   break;
  }
 }
 // Test if empty fields
 if (!name) emptyfields+=noname;
 if (!surname) emptyfields+=nosurname;
 if (!email) emptyfields+=noemail;
 if (!nights) emptyfields+=nonights;
 if (!adults) emptyfields+=noadults;
 if (!rooms) emptyfields+=norooms;
 if (emptyfields) emptyfields=emptyfields_header+emptyfields;
 
 // Test numeric fields
 if ((no && !IsNumber(no)) || (postcode && !IsNumber(postcode)) || (tel && !IsNumber(tel)) || (fax && !IsNumber(fax)) || (handy && !IsNumber(handy)))
	nonumeric=emptyfields_header+noemail;
 if (adults && !IsNumber(adults)) nonumeric= (nonumeric?nonumeric+noadults:emptyfields_header+noadults);
 if (children && !IsNumber(children)) nonumeric= (nonumeric?nonumeric+noadults:emptyfields_header+noadults);
 if (nights && !IsNumber(nights)) nonumeric= (nonumeric?nonumeric+nonights:emptyfields_header+nonights);
 if (rooms &&  !IsNumber(rooms))  nonumeric= (nonumeric?nonumeric+norooms:emptyfields_header+norooms);

 // Test if arrival and departure dates has been correctly entered
 if (document.forms['formulaire'].elements['du'].options[from].value == '??' ||
    document.forms['formulaire'].elements['mois1'].options[month1].value == '??????' ||
    document.forms['formulaire'].elements['au'].options[to].value == '??' ||
    document.forms['formulaire'].elements['mois2'].options[month2].value == '??????' ||
    !nights)error_date=date_failure;
 if (NumberOfDays(from,month1,year1,to,month2,year2)!= nights)
       error_date=date_failure_1;

 // Test if email valid
 if (email)
 {
  email_value=new String(email);
  email_dot=email_value.lastIndexOf(".");
  if (email_value.indexOf("@") == -1 || email_dot == -1 || !(email_dot==email_value.length-3 || email_dot==email_value.length-4))
   error_email= email_failure; // missing "@" or "."  
 }

 // With car ?
 if (with_car=="oui")
 {
    // Verify dates and number of days
    if (document.forms['formulaire'].elements['voiture_de_jour'].options[from_car].value == '??' ||
    document.forms['formulaire'].elements['voiture_de_mois'].options[month1_car].value == '??????' ||
    document.forms['formulaire'].elements['voiture_a_jour'].options[to_car].value == '??' ||
    document.forms['formulaire'].elements['voiture_a_mois'].options[month2_car].value == '??????' ||
    !car_days) error_date=date_failure_car;
    if (NumberOfDays(from_car,month1_car,year1_car,to_car,month2_car,year2_car)!= car_days-1)
       error_date=date_failure_car_1;
 }
 else
 {
  if (from_car || month1_car || year1_car ||
    to_car || month2_car || year2_car || car_days)
    error_car=car_failure;
 }

 if (emptyfields) alert(emptyfields);
 else if (nonumeric) alert(nonumeric);
 else if (error_email) alert(error_email);
 else if (error_date) alert(error_date);
 else if (error_car) alert(error_car);
 else 
 {
	document.forms['formulaire'].submit();
	thanks(language);
 }
}

function thanks(language)
{
 wnd=window.open("thanks_"+language+".htm","","width=650,height=150 ,left=0,top=0");
 wnd.creator=self;
}

function NumberOfDays(from,month1,year1,to,month2,year2)
{
 var from_date= new Date(2011+year1, month1-1, from); // Month is 0-11 in javascript
 var to_date= new Date(2011+year2, month2-1, to);
 var one_day=1000*60*60*24; // Number of milliseconds in one day
 return(Math.round((to_date.getTime() - from_date.getTime()) / one_day));
}

function IsNumber(str)
{
 var validChars="0123456789";
 var char;
 for (i=0; i<str.length; i++)
 {
  char=str.charAt(i);
  if (validChars.indexOf(char) == -1) return false;
 }
 return true;
}

function checknumeric(e)
{
 var char=(e.keyCode) ? (e.keyCode) : (e.which); // Different ways for IE and FF
 if (char >= 0x30 && char <= 0x39 || char==8) return true; // Okay, numeric or backspace
 else
    return false; // Otherwise, do nothing
}
// End -->
