var localizedStrings={
    chooseValidConnection:{
        'de':'Bitte wählen Sie eine gültige Verbindung!',
        'en':'Please choose a valid connection.',
        'pl':'Prosze wybrac poprawne polaczenie.',
        'dk':'Välg venligst forbindelse.',
        'se':'Välj en giltig anslutning!',
        'no':'Vennligst velg en gyldig rute!',

    },
    chooseConnection:{
        'de':'Bitte wählen Sie Ihre Verbindung!',
        'en':'Please choose your connections.',
        'pl':'Prosze wybrac polaczenie.',
        'dk':'Välg venligst din forbindelse.',
        'se':'Vänligen välj dina förbindelser!',
        'no':'Vennligst velg rute!',

    },
    chooseDifferentCountries:{
        'de':'Bitte wählen Sie zwei unterschiedliche Länder aus!',
        'en':'Please choose two different countries.',
        'pl':'Prosze wybrac dwa rózne kraje.',
        'dk':'Välg venligst to forskellige lande.',
        'se':'Vänligen välj från två olika länder!',
        'no':'Vennligst velg to forskjellige land!',

    },
    chooseDate:{
        'de':'Bitte wählen Sie ein gültiges Datum aus!',
        'en':'Please choose a valid date.',
        'pl':'Prosze wybrac poprawna date.',
        'dk':'Välg gyldig dato',
        'se':'Vänligen välj ett giltigt datum!',
        'no':'Vennligst velg en gyldig dato!',

    },
    chooseDepartureDate:{
        'de':'Bitte wählen Sie das Datum der Abfahrt aus!',
        'en':'Please choose daparture date.',
        'pl':'Prosze wybrac date wyjazdu.',
        'dk':'Välg venligst afgangs dato.',
        'se':'Vänligen välj avgångsdatum!',
        'no':'Vennligst velg avreisedato!',

    },
    chooseDepartureCity:{
        'de':'Bitte wählen Sie die Abfahrtstadt aus!',
        'en':'Please choose departure city.',
        'pl':'Prosze wybrac miejsce wyjazdu.',
        'dk':'Välg venligst afgangsby.',
        'se':'Vänligen välj avgångsstad!',
        'no':'Vennligst velg avreiseby!',

    },
    chooseDestinationCity:{
        'de':'Bitte wählen Sie die Zielstadt aus!',
        'en':'Please choose destination city.',
        'pl':'Prosze wybrac miasto docelowe.',
        'dk':'Välg venligst ankomstby.',
        'se':'Vänligen välj ankomststad!',
        'no':'Vennligst velg destinasjonsby!',

    },
    chooseDepCountry:{
        'de':'Bitte wählen Sie Abfahrtsland aus!',
        'en':'Please choose departure country.',
        'pl':'Prosze wybrac kraj wyjazdu.',
        'dk':'Välg venligst afgangsland.',
        'se':'Vänligen välj avgångsland!',
        'no':'Vennligst velg avreiseland!',

    },
    chooseDestCountry:{
        'de':'Bitte wählen Sie Zielland aus!',
        'en':'Please choose destination country.',
        'pl':'Prosze wybra panstwo docelowe.',        
        'dk':'Välg venligst ankomstby.',
        'se':'Vänligen välj ankomstland!',
        'no':'Vennligst velg destinasjonsland!',

    },
    enterNameOfPassenger:{
        'de':'Bitte den Namen eingeben für Passagier Nr.',
        'en':'Please enter name of passenger No. ',
        'pl':'Prosze wpisac nazwisko pasazera numer.',
        'dk':'Venligst oplys efternavn på passagerer.',
        'se':'Vänligen ange namnet på passagerare nr.',
        'no':'Vennligst legg inn navn for passasjernr.',
    },
    enterFirstNameOfPassenger:{
        'de':'Bitte den Vornamen eingeben für Passagier Nr.',
        'en':'Please enter first name of passenger No.',
        'pl':'prosze wpisac imie pasazera numer.',
        'dk':'Venligst oplys fornavn på passagerer.',
        'se':'Vänligen ange förnamnet på passagerare nr.',
        'no':'Vennligst legg inn fornavn for passasjernr.',
    },
    chooseDiscount:{
        'de':'Bitte die Preisstufe auswählen für Passagier Nr.',
        'en':'Please choose discount for passenger No.',
        'pl':'Prosze wybrac rodzaj znizki dla pasazera numer.',
        'dk':'Välg prisgruppe for passagerer.',
        'se':'Vänligen välj pris för passagerare nr.',
        'no':'Vennligst legg inn valgt pristrinn for passasjernr.',

    },
    infantWarning:{
        'de':'Kinder unter 16 Jahren müssen von einer 18-jährigen Person begleitet werden.',
        'en':'Children under the age of 16 are not permitted to travel unless accompanied by an adult of at least 18 years of age.',
        'pl':'Dzieci ponizej 16 roku zycia musza podrózowac w towarzystwie osoby pelnoletniej.',
        'dk':'Börn under 16 år skal rejse i selskab med en voksen over 18 år.',
        'se':'Barn under 16 år är inte tillåtna att resa utan en vuxen på minst 18 år.',
        'no':'Barn under 16 år må ledsages av en person over 18 år.',
    },
    enterFirstName:{
        'de':'Bitte geben Sie Ihren Vornamen ein.',
        'en':'Please enter your first name.',
        'pl':'prosze wpisac imie.',
        'dk':'Venligst oplys fornavn.',
        'se':'Vänligen ange ditt förnamn!',
        'no':'Vennligst skriv inn fornavnet ditt.',

    },
    enterSurname:{
        'de':'Bitte geben Sie Ihren Nachnamen ein.',
        'en':'Please enter your surname.',
        'pl':'Prosze wpisac nazwisko.',
        'dk':'Venligst oplys efternavn.',
        'se':'Vänligen ange ditt efternamn!',
        'no':'Vennligst skriv inn etternavnet ditt.',

    },
    enterStreet:{
        'de':'Bitte geben Sie Ihre Straße ein.',
        'en':'Please enter your street.',
        'pl':'Prosze wpisac nazwe ulicy.',
        'dk':'Gadenavn',
        'se':'Vänligen ange din gata!',
        'no':'Vennligst skriv inn gateadressen din.',
    },
    enterCity:{
        'de':'Bitte geben Sie Ihre Stadt ein.',
        'en':'Please enter your city.',
        'pl':'Prosze wpisac nazwe miasta.',
        'dk':'Bynavn',
        'se':'Vänligen ange din stad!',
        'no':'Vennligst skriv inn hvilken by du bor i.',

    },
    enterPostcode:{
        'de':'Bitte geben Sie Ihre Postleitzahl ein.',
        'en':'Please enter your postcode.',
        'pl':'Prosze wpisac kod pocztowy.',
        'dk':'Postnummer',
        'se':'Vänligen ange ditt postnummer!',
        'no':'Vennligst skriv inn postnummeret ditt.',

    },
    enterMail:{
        'de':'Bitte geben Sie Ihre E-Mail-Adresse ein.',
        'en':'Please enter your e-mail address.',
        'pl':'Prosze sprawdzic podany adres e-mail.',
        'dk':'tast venligst email igen.',
        'se':'Vänligen ange en korrekt e-postadress!',
        'no':'Vennligst skriv e-postadressen din.',

    },
    errorPhone:{
        'de':'Im Feld Telefon sind nur numerische Eingaben erlaubt.',
        'en':'Only numeric values are allowed for the phone number.',
        'pl':'W polu numer telefonu sa dozwolone tylko symbole numeryczne.',
        'dk':'Telefonnummer',
        'se':'Endast numeriska värden är tillåtna som telefonnummer!',
        'no':'I telefonfeltet er det kun tillatt med tallverdier.',

    },
    errorFirstName:{
        'de':'Im Feld Vorname sind keine numerischen Eingaben erlaubt.',
        'en':'No numeric values are allowed for the first name.',
        'pl':'W polu imie nie sa dozwolone symbole numeryczne.',
        'dk':'I feltet fornavn er tal ikke tilladt.',
        'se':'Inga numeriska värden är tillåtna som förnamn!',
        'no':'I feltet for fornavn er det ikke tillatt med tallverdier.',

    },
    errorSurName:{
        'de':'Im Feld Nachname sind keine numerischen Eingaben erlaubt.',
        'en':'No numeric values are allowed for the surname.',
        'pl':'W polu nazwisko nie sa dozwolone symbole numeryczne.',
        'dk':'I feltet efternavn er tal ikke tilladt.',
        'se':'Inga numeriska värden är tillåtna som efternamn!',
        'no':'I feltet for etternavn er det ikke tillatt med tallverdier.',

    },
    errorCity:{
        'de':'Im Feld Stadt sind keine numerischen Eingaben erlaubt.',
        'en':'No numeric values are allowed for the city.',
        'pl':'W polu miasto nie sa dozwolone symbole numeryczne.',
        'dk':'I feltet by er tal ikke tilladt.',
        'se':'Inga numeriska värden är tillåtna som stad!',
        'no':'I feltet for by er det ikke tillatt med tallverdier.',

    },
    confirmMail:{
        'de':'Bitte bestätigen Sie Ihre E-Mail-Adresse.',
        'en':'Please confirm your e-mail address.',
        'pl':'Prosze potwierdzic adres e-mail.',
        'dk':'Bekräft venligst email adresse.',
        'se':'Vänligen bekräfta din e-postadress!',
        'no':'Vennligst bekreft e-postadressen din.',

    },
    errorInMails:{
        'de':'Bitte überprüfen Sie Ihre E-Mail-Adresse.',
        'en':'Please check your e-mail address.',
        'pl':'Prosze sprawdzic podany adres e-mail.',
        'dk':'tast venligst email igen.',
        'se':'Vänligen ange en korrekt e-postadress!',
        'no':'Vennligst kontroller e-postadressen din.',
    },
    selectCardType:{
        'de':'Bitte wählen Sie Ihren Kartentyp aus.',
        'en':'Pleasechoose the credit card type.',
        'pl':'Prosze wybrac typ karty.',
        'dk':'välg korttype.',
        'se':'Vänligen välj korttyp!',
        'no':'Vennligst velg korttype.',

    },
    enterCreditcardNumber:{
        'de':'Bitte geben Sie Ihre Kreditkartennummer ein.',
        'en':'Please enter credit card number.',
        'pl':'Prosze podac numer karty kredytowej.',
        'dk':'oplys kreditkort nummer.',
        'se':'Vänligen ange ditt kreditkortsnummer!',
        'no':'Vennligst legg inn kredittkortnummer.',

    },
    enterCVN:{
        'de':'Bitte geben Sie die Sicherheitsnummer Ihrer Kreditkarte ein.',
        'en':'Please enter CVN.',
        'pl':'Prosze wpisac kod CVC karty kredytowej.',
        'dk':'Oplys kontrolcifre.',
        'se':'Vänligen ange dina kontrollsiffror!',
        'no':'Vennligst legg inn sikkerhetsnummeret på kredittkortet.',
    },
    selectExpiryMonth:{
        'de':'Bitte geben Sie die Gültigkeit Ihrer Kreditkarte ein (Monat).',
        'en':'Please choose validity month.',
        'pl':'Prosze wpisac waznosc karty kredytowej (miesiac).',
        'dk':'Oplys udlöbsdato ( måned ).',
        'se':'Vänligen ange kortets giltighetstid (månad)!',
        'no':'Vennligst angi kredittkortets gyldighet (måned).',

    },
    selectExpiryYear:{
        'de':'Bitte geben Sie die Gültigkeit Ihrer Kreditkarte ein (Jahr).',
        'en':'Please choose validity year.',
        'pl':'Prosze wpisac waznosc karty kredytowej (rok).',
        'dk':'Oplys udlöbsdato ( år).',
        'se':'Vänligen ange kortets giltighetstid (år)!',
        'no':'Vennligst angi kredittkortets gyldighet (år).',

    },
    confirmAGB:{
        'de':'Bitte akzeptieren Sie unsere Allgemeinen Geschäftsbedingungen.',
        'en':'Please confirm our terms of travel.',
        'pl':'Prosze zaakceptowac ogólne warunki Deutsche Touring.',
        'dk':'Jeg accepterer de generelle forretningsbetingelser.',
        'se':'Vänligen bekräfta att du accepterar våra resevillkor!',
        'no':'Vennligst aksepter våre generelle kjøpsbetingelser.',

    },
    confirmInsuranceAGB:{
        'de':'Bitte akzeptieren Sie die Allgemeinen Geschäftsbedingungen der Reiseversicherung.',
        'en':'Please accept the terms and conditions of the cancellation insurance!',
        'pl':'Please accept the terms and conditions of the cancellation insurance!',
        'dk':'Please accept the terms and conditions of the cancellation insurance!',
        'se':'Please accept the terms and conditions of the cancellation insurance!',
        'no':'Please accept the terms and conditions of the cancellation insurance!',

    }
}

function getLocale() {
        var locale = $('#lang').val();
        return locale;
}

function preSelect(fromCountry, fromCity, toCountry, toCity) {
        $('#bookingmask_abfahrtLand').val(fromCountry);
        $('#bookingmask_ankunftLand').val(toCountry);
        checkCountrySelects(fromCity, toCity);
}

function getTheTickets(orderGuid, sitelang, sellerguid) {
  $.ajax({
    type: "GET",
    url: "fileadmin/bookingV2/php/setOrderPayed.php",
    data: "orderGuid=" + orderGuid + "&sitelang=" + sitelang + "&sellerguid=" + sellerguid,
    success: function(msg){
      if(msg == 'OK') {
        $('#ticketWait').slideUp('slow', function(){
        $('#ticketDownload').slideDown('slow');
        });
      }
    }
  });
}

function getInsuranceInfos() {
  $.ajax({
    type: "GET",
    url: "fileadmin/bookingV2TEST/php/insurance_info.inc.php",
    data: "amount=" + $('#price_result_raw').val() + $('#paramsForInsurance').val(),
    success: function(msg){
        $('#insuranceTD').html(msg);
        var selectedInsurance = $('#selectedInsurance').val();
        if(selectedInsurance != '') {
                $('#' + selectedInsurance).attr('checked', true);
        }
        toggleInsurance();
    }
  });
}

function checkSearchMask() {
  var message ='';
  var abfahrt = $('#bookingmask_datumHinfahrt').val();
  var abfahrtTag = abfahrt.substring(0,2);
  var abfahrtMonat = abfahrt.substring(3,5);
  var abfahrtJahr = abfahrt.substring(6,10);
  var jetzt = new Date();
  var abfahrtDate = new Date(abfahrtJahr, abfahrtMonat-1, abfahrtTag, jetzt.getHours() + 1, jetzt.getMinutes() ,jetzt.getSeconds());
  var jetzt = new Date();
  var limit = new Date();
  limit.setDate(limit.getDate() + 3);
  if (abfahrtDate < limit) {
      message = message.concat(localizedStrings['chooseDate'][getLocale()] + '\n');
      var error = true;
  }


  // Abfahrtsland und Zielland gleich
  if ($('#bookingmask_abfahrtLand').val() != 'x' && $('#bookingmask_abfahrtLand').val() == $('#bookingmask_ankunftLand').val()) {
      message = message.concat(localizedStrings['chooseDifferentCountries'][getLocale()] + '\n');
      var error = true;
  }
  // Keine gültigen Verbindungen
  if ($('#bookingmask_abfahrtStadt').length == 0) {
      message = message.concat(localizedStrings['chooseValidConnection'][getLocale()] + '\n');
      var error = true;
  }
  // Abfahrtsland
  if ($('#bookingmask_abfahrtLand').val() == 'x') {
      message = message.concat(localizedStrings['chooseDepCountry'][getLocale()] + '\n');
      var error = true;
  }
  // Zielland
  if ($('#bookingmask_ankunftLand').val() == 'x') {
      message = message.concat(localizedStrings['chooseDestCountry'][getLocale()] + '\n');
      var error = true;
  }
  // Abfahrtsstadt
  if ($('#bookingmask_abfahrtStadt').val() == 'x') {
      message = message.concat(localizedStrings['chooseDepartureCity'][getLocale()] + '\n');
      var error = true;
  }
  // Zielstadt
  if ($('#bookingmask_ankunftStadt').val() == 'x') {
      message = message.concat(localizedStrings['chooseDestinationCity'][getLocale()] + '\n');
      var error = true;
  }
  // Abfahrt
  if ($('#bookingmask_datumHinfahrt').val() == '') {
      message = message.concat(localizedStrings['chooseDepartureDate'][getLocale()] + '\n');
      var error = true;
  }

  if (error != true) {
    showOverlay();
    document.formBuchungsmaske.submit();
  }
  else {
    alert(message);
  }
}

function step2() {
  if ($('input[name=hinfahrtID]:checked').val()) {
    var error = false;
  }
  else {
    var error = true;
  }
  var retval = $('#rueckfahrtID_2').size();
  if (!!retval == true)  {
    if ($('input[name=rueckfahrtID]:checked').val()) {
      var error = false;
    }
    else {
      var error = true;
    }
  }
  if (error == true) {
    alert(localizedStrings['chooseConnection'][getLocale()]);
  }
  else {
    showOverlay();
    document.theForm.submit();
  }
}

function step3() {
  var message ='';
  var messageChild ='';
  var onlyChilds = true;

 if($('#insurance_Cancel').is(":checked") && $('#insurance_agb').is(":checked") == false) {
      message = message.concat(localizedStrings['confirmInsuranceAGB'][getLocale()]  + '\n');
      var error = true;
  }
  for (var i = 1; i <= $('.priceRow').length; i++) {
    if($('#passenger_discount_' + i).val() != '23d5f2d2-0bc8-42b0-a83d-6e54da47db9e' && $('#passenger_discount_' + i).val() != '5236c366-cbf2-4bf0-8abf-419d1f4e31f5') {
        var onlyChilds = false;
    }
    if (onlyChilds == true) {
        messageChild = localizedStrings['infantWarning'][getLocale()];
        var error = true;
    }
    if ($('#passenger_name_' + i).val() == '') {
      message = message.concat(localizedStrings['enterNameOfPassenger'][getLocale()] + i + '!\n');
      var error = true;
    }
    if ($('#passenger_firstname_' + i).val() == '') {
      message = message.concat(localizedStrings['enterFirstNameOfPassenger'][getLocale()] + i + '!\n');
      var error = true;
    }
    if ($('#passenger_discount_' + i).val() == 'x') {
      message = message.concat(localizedStrings['chooseDiscount'][getLocale()] + i + '!\n');
      var error = true;
    }
  }
  if (error != true) {
    showOverlay();
    document.theForm.submit();
  }
  else {
    message = message.concat(messageChild);
    alert(message);
  }
}

function step4() {
  var message ='';
  var exp_txt = new RegExp('[0-9]+', 'i');
  if ($('#firstname').val() == '') {
    message = message.concat(localizedStrings['enterFirstName'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#familyname').val() == '') {
    message = message.concat(localizedStrings['enterSurname'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#street').val() == '') {
    message = message.concat(localizedStrings['enterStreet'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#city').val() == '') {
    message = message.concat(localizedStrings['enterCity'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#postcode').val() == '') {
    message = message.concat(localizedStrings['enterPostcode'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#emailconf').val() == '') {
    message = message.concat(localizedStrings['enterMail'][getLocale()] + '\n');
    var error = true;
  }
  if (checkEmail($('#emailconf').val()) == false) {
    message = message.concat(localizedStrings['confirmMail'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#emailconf').val() != $('#email').val()) {
    message = message.concat(localizedStrings['errorInMails'][getLocale()] + '\n');
    var error = true;
  }
//  if ($('#phone').val() != '' && isNaN($('#phone').val())) {
//    message = message.concat('Only numeric values are allowed for the phone number!\n');
//    var error = true;
//  }
  var exp_phone = new RegExp('^([0-9]*\-?\ ?\/?[0-9]*)$');
  phonenumber = $('#phone').val();
  phonenumber = phonenumber.replace('+', '');
  if (phonenumber != '' && exp_phone.test(phonenumber) === false) {
    message = message.concat(localizedStrings['errorPhone'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#firstname').val() != '' && exp_txt.test($('#firstname').val()) === true) {
    message = message.concat(localizedStrings['errorFirstName'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#familyname').val() != '' && exp_txt.test($('#familyname').val()) === true) {
    message = message.concat(localizedStrings['errorSurName'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#city').val() != '' && exp_txt.test($('#city').val()) === true) {
    message = message.concat(localizedStrings['errorCity'][getLocale()] + '\n');
    var error = true;
  }



//  if ($("#acceptagb").attr("checked") != true) {
//    message = message.concat('Please confirm that you accept our conditions of travel!\n');
//    var error = true;
//  }
  if (error != true) {
    showOverlay();
//    passengerDataRaw = $("#passengertitle").val() + '|' + $("#firstname").val() + '|' + $("#familyname").val() + '|' + $("#street").val() + '|' + $("#city").val() + '|' + $("#postcode").val() + '|' + $("#phone").val() + '|' + $("#email").val() + '|' + $("#country").val()
//    passengerData = encodeURI(passengerDataRaw);
//    newUrl = 'http://scandinavia.touring.de/index.php?id=1155&data=' + passengerData;
//    $("#Accept").val(newUrl);
    document.theForm.submit();
  }
  else {
    alert(message);
  }
}

function step5() {
  var message ='';
  if ($('#cardtype').val() == 'x') {
    message = message.concat(localizedStrings['selectCardType'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#cardnumber').val() == '') {
    message = message.concat(localizedStrings['enterCreditcardNumber'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#cvc').val() == '') {
    message = message.concat(localizedStrings['enterCVN'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#expmm').val() == 'x') {
    message = message.concat(localizedStrings['selectExpiryMonth'][getLocale()] + '\n');
    var error = true;
  }
  if ($('#expyy').val() == 'x') {
    message = message.concat(localizedStrings['selectExpiryYear'][getLocale()] + '\n');
    var error = true;
  }
  if ($("#acceptagb").attr("checked") != true) {
    message = message.concat(localizedStrings['confirmAGB'][getLocale()] + '\n');
    var error = true;
  }
//  if ($('#cardnumber').val() != '' && isNaN($('#cardnumber').val())) {
//    message = message.concat('Only numeric values are allowed for the card number!\n');
//    var error = true;
//  }
//  if ($('#cvc').val() != '' && isNaN($('#cvc').val())) {
//    message = message.concat('Only numeric values are allowed for the security number!\n');
//    var error = true;
//  }
  if (error != true) {
    showOverlay();
//    passengerDataRaw = $("#passengertitle").val() + '|' + $("#firstname").val() + '|' + $("#familyname").val() + '|' + $("#street").val() + '|' + $("#city").val() + '|' + $("#postcode").val() + '|' + $("#phone").val() + '|' + $("#email").val() + '|' + $("#country").val()
//    passengerData = encodeURI(passengerDataRaw);
//    newUrl = 'http://scandinavia.touring.de/index.php?id=1155&data=' + passengerData;
//    $("#Accept").val(newUrl);
    document.theForm.submit();
  }
  else {
    alert(message);
  }
}

// Overlay
function showOverlay() {
  $('#overlayWrapper').css('display', 'block');
}

// E-Mail-Adresse
function checkEmail(x) {
    var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
    return filter.test(x);
}

function updatePrice(passenger) {
  // Youth?
  if($('#passenger_discount_' + passenger).val() == '783e02b3-74bb-4889-af2d-20b34cd999e8') {
    $('#childText').show();
  }
  // Child?
  if($('#passenger_discount_' + passenger).val() == '23d5f2d2-0bc8-42b0-a83d-6e54da47db9e') {
    $('#passenger_title_' + passenger).val('Child');
    $('#childText').show();
  }
  //Baby?
  if($('#passenger_discount_' + passenger).val() == '5236c366-cbf2-4bf0-8abf-419d1f4e31f5') {
    $('#passenger_title_' + passenger).val('Baby');
    $('#childText').show();
  }
  if($('#passenger_discount_' + passenger).val() != '23d5f2d2-0bc8-42b0-a83d-6e54da47db9e' && $('#passenger_discount_' + passenger).val() != '5236c366-cbf2-4bf0-8abf-419d1f4e31f5' && $('#passenger_discount_' + passenger).val() != '783e02b3-74bb-4889-af2d-20b34cd999e8') {
    //$('#passenger_title_' + passenger).val('Baby');
    $('#childText').hide();
  }
  if ($('#passenger_discount_' + passenger).val() == 'x') {
    $('#passenger_price_' + passenger).html('&nbsp;');
    $('#passenger_price_hidden_' + passenger).val(0);
    updateCompletePrice();
    //getInsuranceInfos()
  }
  else {
    var pricetype = $('#passenger_discount_' + passenger).val();
    if ($('#passenger_promo_' + passenger).is(":checked")) {
      var price = $('#promoprice').val();
    }
    else {
      var price = $('#' + pricetype).val();
    }
    $('#passenger_price_' + passenger).html($('#currencySymbol').val() + '&nbsp;' + price);
    $('#passenger_price_hidden_' + passenger).val(price);
    updateCompletePrice();
    //getInsuranceInfos()
  }
}

function updateCompletePrice() {
  var thePrice = 0;
  for (var i = 1; i <= $('.priceRow').length; i++) {
    var b = parseFloat($('#passenger_price_hidden_' + i).val());
    thePrice = thePrice + b;
  }
  //var service_fee = parseFloat($('#service_fee').val());
  var insurance_price = parseFloat($('#price_Cancel').val());
  //thePrice = thePrice + service_fee;
  if ($('#insurance_Cancel').is(":checked")) {
        thePrice = thePrice + insurance_price;
        $('#insuranceSpan').show();
        $('#insuranceAgbTR').show();
  }
  else {
        $('#insuranceSpan').hide();
        $('#insuranceAgbTR').hide();
  }
  $('#price_result').html($('#currencySymbol').val() + '&nbsp;' + thePrice.toFixed(2));
}


function updateCities() {
  sel = document.getElementById('bookingmask_abfahrtStadt'); 
  selB = document.getElementById('bookingmask_ankunftStadt'); 
  if (/^[^\(]*\(([^\)]+)\)$/.test(sel.value)) {
 	  var cities = RegExp.$1;
    var cities = cities.split("|");
 		var selected = selB.options[selB.selectedIndex].value;
 		while (selB.options.length > 0)
 			selB.options[0] = null;
 		for (var i = 0; i < cities.length-1; i++) {
 			var o = selB.options[selB.options.length] = new Option(cities[i], cities[i]);
 			if (o.value == selected) o.selected = true;
 		}
	}
}

function updateCountries() {
//    var denmark = '<option value="x">Please choose</option><option value="Austria">Austria</option><option value="Belgium">Belgium</option><option value="Czech Republic">Czech Republic</option><option value="Estonia">Estonia</option><option value="France">France</option><option value="Germany">Germany</option><option value="Hungary">Hungary</option><option value="Latvia">Latvia</option><option value="Lithuania">Lithuania</option><option value="Netherlands">Netherlands</option><option value="Norway">Norway</option><option value="Poland">Poland</option><option value="Portugal">Portugal</option><option value="Spain">Spain</option><option value="Sweden">Sweden</option><option value="Ukraine">Ukraine</option><option value="United Kingdom">United Kingdom</option>';
//    var sweden = '<option value="x">Please choose</option><option value="Austria">Austria</option><option value="Belgium">Belgium</option><option value="Czech Republic">Czech Republic</option><option value="Denmark">Denmark</option><option value="Estonia">Estonia</option><option value="France">France</option><option value="Germany">Germany</option><option value="Hungary">Hungary</option><option value="Latvia">Latvia</option><option value="Lithuania">Lithuania</option><option value="Netherlands">Netherlands</option><option value="Norway">Norway</option><option value="Poland">Poland</option><option value="Portugal">Portugal</option><option value="Spain">Spain</option><option value="Ukraine">Ukraine</option><option value="United Kingdom">United Kingdom</option>';
//    var norway = '<option value="x">Please choose</option><option value="Austria">Austria</option><option value="Belgium">Belgium</option><option value="Czech Republic">Czech Republic</option><option value="Denmark">Denmark</option><option value="Estonia">Estonia</option><option value="France">France</option><option value="Germany">Germany</option><option value="Hungary">Hungary</option><option value="Latvia">Latvia</option><option value="Lithuania">Lithuania</option><option value="Netherlands">Netherlands</option><option value="Poland">Poland</option><option value="Portugal">Portugal</option><option value="Spain">Spain</option><option value="Sweden">Sweden</option><option value="Ukraine">Ukraine</option><option value="United Kingdom">United Kingdom</option>';
//    var normal = '<option value="x">Please choose</option><option value="Austria">Austria</option><option value="Belgium">Belgium</option><option value="Czech Republic">Czech Republic</option><option value="Denmark">Denmark</option><option value="Estonia">Estonia</option><option value="France">France</option><option value="Germany">Germany</option><option value="Hungary">Hungary</option><option value="Latvia">Latvia</option><option value="Lithuania">Lithuania</option><option value="Netherlands">Netherlands</option><option value="Norway">Norway</option><option value="Poland">Poland</option><option value="Portugal">Portugal</option><option value="Spain">Spain</option><option value="Sweden">Sweden</option><option value="Ukraine">Ukraine</option><option value="United Kingdom">United Kingdom</option>';
//    if ($('#bookingmask_abfahrtLand').val() == 'Denmark') { $('#bookingmask_ankunftLand').html(denmark); }
//    else if ($('#bookingmask_abfahrtLand').val() == 'Sweden') { $('#bookingmask_ankunftLand').html(sweden); }
//    else if ($('#bookingmask_abfahrtLand').val() == 'Norway') { $('#bookingmask_ankunftLand').html(norway); }
//    else { $('#bookingmask_ankunftLand').html(normal); }
}

function checkCountrySelects(fromCity, toCity) {
  if ($('#bookingmask_abfahrtLand').val() != 'x' && $('#bookingmask_ankunftLand').val() != 'x') {
    getCities($('#bookingmask_abfahrtLand').val(), $('#bookingmask_ankunftLand').val(), fromCity, toCity);
  }
}

/*******************************************************/
/*            AJAX-Call für Städte-Selects             */
/*******************************************************/

function getCities(startLand, zielLand, fromCity, toCity) {
  $.ajax({
    type: "GET",
    url: "fileadmin/bookingV2/php/getCities.php",
    data: "startland=" + startLand + "&zielland=" + zielLand + "&lang=" + $('#lang').val(),
    success: function(msg){
      $('#bookingmask_selectCountries').html(msg);
        $('#bookingmask_abfahrtStadt').val(fromCity);
        $('#bookingmask_ankunftStadt').val(toCity);
    }
  });
}

function showCheapestConnection(startLand, zielLand, startStadt, zielStadt, datum, anzahlPersonen, priceType) {
  $('#cheapestConnectionRow').html('<td colspan="7">Loading data...</td>');
  $.ajax({
    type: "GET",
    url: "fileadmin/bookingV2/php/findCheapestConnection.php",
    data: "fromcountry=" + startLand + "&tocountry=" + zielLand + "&fromcity=" + startStadt + "&tocity=" + zielStadt + "&departuredate=" + datum + "&count=" + anzahlPersonen + "&priceType=" + priceType + "&currencyGuid=" + $('#currencyGuid').val(),
    success: function(msg){
      $('#cheapestConnectionRow').html(msg);
    }
  });
}

function showPrices(departureDate, lineGuidFirst, busstopGuidFrom, busstopGuidTo, serviceNrFirst, count, departureDateReturn, lineGuidReturn, busstopGuidFromReturn, busstopGuidToReturn, serviceNrReturn, returnOpen, sellerGuid) {
  $.ajax({
    type: "GET",
    url: "fileadmin/bookingV2/php/findPrices.php",
    data: "departureDate=" + departureDate + "&lineGuidFirst=" + lineGuidFirst + "&busstopGuidFrom=" + busstopGuidFrom + "&busstopGuidTo=" + busstopGuidTo + "&serviceNrFirst=" + serviceNrFirst + "&count=" + count + "&departureDateReturn=" + departureDateReturn + "&busstopGuidFromReturn=" + busstopGuidFromReturn + "&busstopGuidToReturn=" + busstopGuidToReturn + "&serviceNrReturn=" + serviceNrReturn + "&lineGuidReturn=" + lineGuidReturn + "&returnOpen=" + returnOpen + "&sellerGuid=" + sellerGuid + "&currencyGuid=" + $('#currencyGuid').val() + "&currencySymbol=" + $('#currencySymbol').val() + "&lang=" + $('#lang').val(),
    success: function(msg){
      $('#pricesRow').html(msg);
    }
  });
}

$(document).ready(function() {
changeRueckfahrt($('#bookingmask_datumHinfahrt').val());
// AJAX-Loader anzeigen
$().ajaxSend(function(r,s){
  var retval = $('.connection').size();
  if (!!retval == false)  {
    $('#bookingmask_loading').show();
  }
});  
// AJAX-Loader ausblenden
$().ajaxStop(function(r,s){  
  var retval = $('.connection').size();
  if (!!retval == false)  {
    $('#bookingmask_loading').hide();
  }
});  
// Preise anzeigen, falls möglich
if ($('input[name=hinfahrtID]:checked').val()) {
    var selectedFirst = $('input[name=hinfahrtID]:checked').val()
    var selectedReturn = $('input[name=rueckfahrtID]:checked').val()
    var departureDate = $('#first_departureDate' + selectedFirst).val();
    var lineGuidFirst = $('#first_lineGuidFirst' + selectedFirst).val();
    var busstopGuidFromFirst = $('#first_busstopGuidFrom' + selectedFirst).val();
    var busstopGuidToFirst = $('#first_busstopGuidTo' + selectedFirst).val();
    var serviceNrFirst = $('#first_serviceNr' + selectedFirst).val();
    var count = $('#bookingmask_anzahlpersonen').val();
    var sellerGuid = $('#sellerGuid').val();
    var departureDateReturn = $('#return_departureDate' + selectedReturn).val();
    var lineGuidReturn = $('#return_lineGuidFirst' + selectedReturn).val();
    var busstopGuidFromReturn = $('#return_busstopGuidFrom' + selectedReturn).val();
    var busstopGuidToReturn = $('#return_busstopGuidTo' + selectedReturn).val();
    var serviceNrReturn = $('#return_serviceNr' + selectedReturn).val();
    var returnOpen = $('#returnOpen').val();
    //alert(serviceNrFirst);
    $('#pricesRow').html('<tr><td>Loading data...</td></tr>');
    showPrices(departureDate, lineGuidFirst, busstopGuidFromFirst, busstopGuidToFirst, serviceNrFirst, count, departureDateReturn, lineGuidReturn, busstopGuidFromReturn, busstopGuidToReturn, serviceNrReturn, returnOpen, sellerGuid);
}
// Listener für Connections
$('.radioConnection').bind("click", function() {
  if ($('input[name=hinfahrtID]:checked').val()) {
    var selectedFirst = $('input[name=hinfahrtID]:checked').val()
    var selectedReturn = $('input[name=rueckfahrtID]:checked').val()
    var departureDate = $('#first_departureDate' + selectedFirst).val();
    var lineGuidFirst = $('#first_lineGuidFirst' + selectedFirst).val();
    var busstopGuidFromFirst = $('#first_busstopGuidFrom' + selectedFirst).val();
    var busstopGuidToFirst = $('#first_busstopGuidTo' + selectedFirst).val();
    var serviceNrFirst = $('#first_serviceNr' + selectedFirst).val();
    var count = $('#bookingmask_anzahlpersonen').val();
    var sellerGuid = $('#sellerGuid').val();
    var departureDateReturn = $('#return_departureDate' + selectedReturn).val();
    var lineGuidReturn = $('#return_lineGuidFirst' + selectedReturn).val();
    var busstopGuidFromReturn = $('#return_busstopGuidFrom' + selectedReturn).val();
    var busstopGuidToReturn = $('#return_busstopGuidTo' + selectedReturn).val();
    var serviceNrReturn = $('#return_serviceNr' + selectedReturn).val();
    var returnOpen = $('#returnOpen').val();
    //alert(serviceNrFirst);
    $('#pricesRow').html('<tr><td>Loading data...</td></tr>');
    showPrices(departureDate, lineGuidFirst, busstopGuidFromFirst, busstopGuidToFirst, serviceNrFirst, count, departureDateReturn, lineGuidReturn, busstopGuidFromReturn, busstopGuidToReturn, serviceNrReturn, returnOpen, sellerGuid);
  }
});
// Listener für Versicherung/Insurance
$('.insuranceSelector').live("click", function() {
  var selectedInsurance = $(this).attr("id");
  $('#selectedInsurance').val(selectedInsurance);
});
// Listener für Submit-Button
$('#bookingmask_submitBuchungsmaske').bind("click", function() {
  checkSearchMask();
  //document.formBuchungsmaske.submit();
});
// Listener für Fragezeichen
$('.questionmark').bind("click", function() {
  //window.open('http://www.bei.cz/pages/promotarify/okno.asp?english=&refr={FCB4D9D6-2D8B-442B-9AC9-4A4E5D0B1D06}', 'promo', 'toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=480,height=385');
  alert('Promotional Ticket - can not be changed or refunded!');
});
// Listener für Fragezeichen (card verification number)
$('.questionmark_cvn').bind("click", function() {
  window.open('fileadmin/bookingV2/php/cvn_help.php', 'help', 'toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,width=640,height=520');
});
// Listener für "Nur Hinfahrt"
$('#bookingmask_nurHinfahrt').bind("click", function() {
  toggleRueckfahrt();
  $('#bookingmask_Oneway').attr('checked', false);
});
// Listener für "Offene Rückfahrt"
$('#bookingmask_Oneway').bind("click", function() {
  toggleRueckfahrt();
  $('#bookingmask_nurHinfahrt').attr('checked', false);
});
// Listener für Select-Felder
$('#bookingmask_abfahrtLand').bind("change", function() {
  updateCountries();
  checkCountrySelects();
});
$('#bookingmask_ankunftLand').bind("change", function() {
  checkCountrySelects();
});
// Listener für Reiseversicherung
$( "input[name='insurance']" ).live( "click", toggleInsurance )
// Datepicker
$('#bookingmask_datumHinfahrt').datepick({dateFormat: 'dd-mm-yy', minDate: +3, showOn: 'both', buttonImageOnly: true, buttonImage: '../fileadmin/php/formulare/images/icon_calendar.gif', onSelect: function(date) {changeRueckfahrt(date)}});
$('#bookingmask_datumRueckfahrt').datepick({dateFormat: 'dd-mm-yy', minDate: +3, showOn: 'both', buttonImageOnly: true, buttonImage: '../fileadmin/php/formulare/images/icon_calendar.gif'});
toggleRueckfahrt()
$('.showchangingroutes').mouseenter(function() {$(this).next().fadeIn();})
                        .mouseleave(function() {$(this).next().fadeOut();});

});

function changeRueckfahrt(date) {
  var tag = date.substring(0, 2);
  var monat = date.substring(3, 5);
  var jahr = date.substring(6, 10);
  $('#bookingmask_datumRueckfahrt').val(''). 
        datepick('option', {minDate: new Date(jahr, monat - 1, tag)}); 
}

function toggleRueckfahrt() {
  if ($("#bookingmask_nurHinfahrt").is(":checked") || $("#bookingmask_Oneway").is(":checked")) {
    $('#bookingmask_datumRueckfahrt').val('');
    $('#bookingmask_datumRueckfahrt').datepick('disable');
  }
  else {
    $('#bookingmask_datumRueckfahrt').datepick('enable');
  }    
}

function toggleInsurance() {
    var selectedPackage = $("input[name='insurance']:checked", "#theForm").val();
    var currencyForInsurance = $('#currencyForInsurance').val();
    var priceForSelectedInsurance = $('#price_' + selectedPackage).val();
    var nameOfSelectedInsurance = $('#name_' + selectedPackage).val();
    if(selectedPackage) {
        $('#priceInsurance').html(currencyForInsurance + ' ' + priceForSelectedInsurance);
    }
    $('#priceInsuranceRaw').val(priceForSelectedInsurance);
    $('#nameOfInsurance').val(nameOfSelectedInsurance);
//    if(selectedPackage == 'package1') {
//        var currencyForInsurance = $('#currencyForInsurance').val();
//        var priceForInsurance = $('#priceForInsurance1').val();
//        $('#priceInsurance').html(currencyForInsurance + ' ' + priceForInsurance);
//    }
//    if(selectedPackage == 'package2') {
//        var currencyForInsurance = $('#currencyForInsurance').val();
//        var priceForInsurance = $('#priceForInsurance2').val();
//        $('#priceInsurance').html(currencyForInsurance + ' ' + priceForInsurance);
//    }
//    if(selectedPackage == 'none') {
//        $('#priceInsurance').html('&nbsp;');
//    }
    updateCompletePrice();
}

function showChangingRoutes(el) {
        $(el).hide();
}                   

