
  var siteName = 'seat24_de';
  var progressToTransition = false;
  var transitionURL = '/transition.action';
  var WebConstants = {
    ALLOW_LETTERS_IN_ZIPCODE: true,
    RE_JS_WORD_CHARACTERS:'\wÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĴĵĶķĹĺĻļĽľĿŀŁłŃńŅņŇňŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲŴŵŶŷŸŹźŻżŽžΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρςστυφχψω',
    REGEXP_JS_ALPHABETIC_STRING:/^[\wÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĴĵĶķĹĺĻļĽľĿŀŁłŃńŅņŇňŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲŴŵŶŷŸŹźŻżŽžΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρςστυφχψω\s-]+$/,
    REGEXP_JS_ALPHANUMERIC_STRING:/^[\wÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĴĵĶķĹĺĻļĽľĿŀŁłŃńŅņŇňŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲŴŵŶŷŸŹźŻżŽžΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρςστυφχψω\d\s]+$/
  };

  var IBE = {
    siteName:'seat24_de',
    CarrierPromoWidth: 530,
    CarrierPromoHeight: 600,
    CalendarNames:{
      MONTHS_SHORT:['Jan','Feb','Mrz','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'],
MONTHS_LONG:['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],
WEEKDAYS_1CHAR:['S','M','D','M','D','F','S'],
WEEKDAYS_SHORT:['So','Mo','Di','Mi','Do','Fr','Sa'],
WEEKDAYS_MEDIUM:['So','Mo','Di','Mi','Do','Fr','Sa'],
WEEKDAYS_LONG:['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag']
    },
    debug: false,
    environment:'prod'
  };

  var UiText = (function () {
    return {

      textMap:{
               'Air.Search.EarlyReturnTripDate' : 'Sie haben ein zu frühes Rückreisedatum gewählt. Das früheste Rückreisedatum ist',
       'Air.Search.EarlyTripToDate' : 'Sie haben ein zu frühes Abreisedatum gewählt. Das früheste Abreisedatum ist {0}.',
       'Air.Search.EnterDestination' : 'Geben Sie den Zielort ein! ',
       'Air.Search.InvalidReturnTripDate' : 'Das Rückreisedatum ist ungültig',
       'Air.Search.InvalidTripToDate' : 'Das Abreisedatum ist ungültig',
       'Air.Search.ReturnTripDateBeforeTripToDate' : 'Ihr Rückreisedatum liegt vor dem Abreisedatum ',
       'Air.Search.StillSearching' : 'Ihre vorhergehende Suche läuft noch ',
       'Air.SelectCons.ChooseBoth' : 'Sie müssen Hin- und Rückreise auswählen',
       'Air.SelectCons.ChooseOne' : 'Sie müssen Hin- und Rückreise auswählen',
       'Car.PickupStation.NotSelected' : 'Anmietstation wählen.',
       'Car.Search.InvalidPickupDate' : 'Sie haben ein ungültiges Abholdatum angegeben.',
       'Car.Search.InvalidReturnDate' : 'Sie haben ein ungültiges Rückgabedatum angegeben.',
       'Car.Search.EarlyPickupToDate' : 'Sie haben ein zu frühes Abholdatum gewählt.   Das früheste Rückgabedatum ist {0}.',
       'Car.Search.ReturnDateBeforePickupDate' : 'Das Rückgabedatum liegt vor dem Abholdatum.',
       'Car.FlightNo.IsEmpty' : 'Bitte geben Sie die Flugnummer an.',
       'Car.FlightArrivalTime.IsEmpty' : 'Bitte geben Sie die Flugankunftszeit im folgenden Format an: hh:mm.',
       'Car.FlightArrivalTime.OnlyDigits' : 'Flugzeiten dürfen nur Zahlen enthalten.',
       'Car.BookableExtraProduct.OnlyDigits' : 'Amount of extra products can only contain digits.',
       'Car.PickupStation.Closed' : 'Die Rückgabestation ist geschlossen. Bitte wählen Sie eine anderen Rückgabeort oder ein anderes datum/einen anderen Rückgabezeitpunkt.'+'\n'+'',
       'Car.ReturnStation.Closed' : 'Return station is closed. Please select another station or another date and time.',
       'Car.MustReadAndAgreeToConditions' : 'Sie müssen gelesen und akzeptiere die Mietbedingungen.',
       'Combo.Search.CheckInDateBeforeDepartureDate' : 'Ihr Check-in-Datum liegt vor dem Abreisedatum ',
       'Combo.Search.CheckOutDateAfterReturnDate' : 'Ihr Check-out-Datum liegt nach Ihrem Rückreisedatum ',
       'Combo.Search.CheckOutDateBeforeCheckInDate' : 'Ihr Check-out-Datum liegt vor Ihrem Check-in-Datum',
       'Combo.Search.ChooseDepartureCity' : 'Sie müssen einen Abreiseort angeben ',
       'Combo.Search.EarlyCheckInDate' : 'Sie haben ein zu frühes Check-in-Datum gewählt. Das früheste Check-in-Datum ist ',
       'Combo.Search.EarlyCheckOutDate' : 'Sie haben ein zu frühes Check-out-Datum gewählt. Das früheste Check-Out-Datum ist ',
       'Combo.Search.EarlyReturnTripDate' : 'Sie haben ein zu frühes Rückreisedatum gewählt. Das früheste Rückreisedatum ist ',
       'Combo.Search.EarlyTripToDate' : 'Sie haben ein zu frühes Abreisedatum gewählt. Das früheste Abreisedatum ist ',
       'Combo.Search.EnterDestination' : 'Geben Sie den Zielort ein! ',
       'Combo.Search.InvalidDepCheckInDate' : 'Ihr Abreise- oder Eincheckdatum ist ungültig ',
       'Combo.Search.InvalidRetCheckOutDate' : 'Ihr Rückreise- oder Auscheckdatum ist ungültig ',
       'Combo.Search.ReturnTripDateBeforeTripToDate' : 'Ihr Rückreisedatum liegt vor dem Abreisedatum ',
       'Combo.Search.SameHotelDate' : 'Check-in- und Check-out-Datum dürfen nicht übereinstimmen ',
       'Combo.Search.StillSearching' : 'Ihre vorhergehende Suche läuft noch ',
       'Confirmation.EnterInfo.Email' : 'E-Mail-Adresse, an die die Bestellbestätigung geschickt wurde',
       'Confirmation.EnterInfo.OrderNumber' : 'Bestellnummer ',
       'ContactForm.Message' : 'Mitteilung/Frage an Seat24',
       'General.Currency.Symbol' : '€',
       'General.Currency.Format' : '{0}€',
       'Hotel.Search.EarlyReturnTripDate' : 'Sie haben ein zu frühes Rückreisedatum gewählt. Das früheste Rückreisedatum ist ',
       'Hotel.Search.EarlyTripToDate' : 'Sie haben ein zu frühes Abreisedatum gewählt. Das früheste Abreisedatum ist ',
       'Hotel.Search.InvalidCheckInDate' : 'Das Check-in-Datum ist ungültig ',
       'Hotel.Search.InvalidCheckOutDate' : 'Das Check-out-Datum ist ungültig ',
       'Hotel.Search.EarlyCheckInDate' : 'Sie haben ein zu spätes Datum für das Check-in gewählt. Das späteste Check-in ist {0}. ',
       'Hotel.Search.LateCheckOutDate' : 'Sie haben ein zu spätes Datum für das Check-out gewählt. Das späteste Checkout ist {0}. ',
       'Hotel.Search.ReturnTripDateBeforeTripToDate' : 'Ihr Rückreisedatum liegt vor dem Abreisedatum ',
       'Hotel.Search.SameHotelDate' : 'Check-in- und Check-out-Datum dürfen nicht übereinstimmen ',
       'Hotel.Search.StillSearching' : 'Ihre vorhergehende Suche läuft noch ',
       'Hotel.Search.TooManyNights' : 'Es können nur 30 Nächte gebucht werden.',
       'Input.Validation.ChildAgesRequired' : 'Um Ihnen die besten Preise für Ihre Familie anzeigen zu können, bitten wir Sie, das Geburtsdatum der Kinder anzugeben.',
       'JavaScript.ProductType.AddSales.AllNotSelected' : 'Bitte wählen Sie die gewünschten Zusatzprodukte!',
       'Javascript.CC.InvalidCardNum' : 'Ungültige Kreditkartennummer.',
       'Javascript.CC.InvalidExpiryDate' : 'Ungültiges Ablaufdatum der Kreditkarte',
       'Javascript.Util.BonusCard' : 'Sie müssen eine gültige Bonuskarte angeben. ',
       'Javascript.Util.Emai2' : 'Die angegebenen E-Mail-Adressen weichen voneinander ab. ',
       'Javascript.Util.Email' : 'Sie müssen eine gültige E-Mail-Adresse angeben. Zulässige Zeichen sind A bis Z, 0 bis 9, @, _ und .. ',
       'Javascript.Util.EmailList' : '',
       'Javascript.Util.EuroBonusCard' : 'Eine EuroBonusnummer muss 3 Buchstaben und 9 Ziffern enthalten.',
       'Javascript.Util.FirstName' : 'Der Vorname darf nur die Buchstaben A bis Z enthalten. ',
       'Javascript.Util.LastName' : 'Der Nachname darf nur die Buchstaben A bis Z enthalten. ',
       'Javascript.Util.PaxNameTooLong' : 'Der Name des Passagiers ist zu lang, er darf nur 24 Zeichen beeinhalten. Tipp: Den Nachnamen so eingeben wie er im Pass steht und dann nur den ersten Vornamen.',
       'Javascript.Util.Phone' : 'Die Telefonnummer darf nur Ziffern und Bindestriche enthalten. ',
       'Javascript.Validation.AdultDateOfBirthRequired' : 'Sie müssen ein Geburtsdatum angeben',
       'Javascript.Validation.AdultAgeMismatchTooYoung' : 'Sie haben ein Alter angegeben {0}, das zu jung für Erwachsene ist. Spätestes Geburtsdatum: {2}',
       'Javascript.Validation.ChildAgeMismatchTooOld' : 'Mit dem angegebenen Geburtsdatum {0} ist das Kind am Ende der Reise zu alt (nicht {1} Jahre). Das erste mögliche Geburtsdatum wäre {2}.',
       'Javascript.Validation.ChildAgeMismatchTooYoung' : 'Mit dem angegebenen Geburtsdatum {0} ist das Kind am Ende der Reise nicht {1} Jahre. Das erste mögliche Geburtsdatum wäre {2}.',
       'Javascript.Validation.ChooseCity' : 'Bitte wählen Sie für Ihre Suche eine Stadt aus.',
       'Javascript.Validation.CannotPaste' : 'Aus Sicherheitsgründen kann man in dieses Feld nicht hineinkopieren.',
       'Javascript.Validation.InvalidAddress' : 'Bitte geben Sie eine Adresse an.',
       'Javascript.Validation.InvalidBank' : 'Bank wählen',
       'Javascript.Validation.InvalidCVVCode' : 'Bitte geben Sie einen gültigen CVV-Kode an.',
       'Javascript.Validation.InvalidCardType' : 'Es wurde keine oder eine ungültige Kreditkartenart angegeben',
       'Javascript.Validation.InvalidChildAge' : 'Bitte geben Sie das Alter der Kinder an.',
       'Javascript.Validation.InvalidCity' : 'Der Ortsname darf nur Buchstaben enthalten. ',
       'Javascript.Validation.InvalidCountry' : 'Geben Sie das Land in das Feld Land ein. ',
       'Javascript.Validation.InvalidDestination' : 'Geben Sie einen Ort in das Feld Reiseziel ein. ',
       'Javascript.Validation.InvalidMobile' : 'Die Handynummer muss angegeben werden und darf nur Ziffern und Bindestreck enthalten.',
       'Javascript.Validation.InvalidNumGuests' : 'Anzahl Personen stimmt nicht mit der Bettenzahl überein. Für Kinder unter 2 Jahren ist kein eigenes Bett notwendig. ',
       'Javascript.Validation.InvalidOrigin' : 'laut ',
       'Javascript.Validation.InvalidPaytype' : 'Bitte geben Sie eine Internetbank an.',
       'Javascript.Validation.InvalidPersonalId' : 'Bitte Nummer des Reisepasses/Personalausweises angeben'+'\n'+'',
       'Javascript.Validation.InvalidProvince' : 'Bitte Provinz angeben'+'\n'+'',
       'Javascript.Validation.InvalidTitle' : 'Bitte Titel angeben.',
       'Javascript.Validation.InvalidTravelConditions' : 'Sie müssen die Reisebedingungen zur Kenntnis nehmen und bestätigen.',
       'Javascript.Validation.InvalidZipCode' : 'Die PLZ darf nur Ziffern enthalten. ',
       'Javascript.Validation.MaxNumInfantsAdult' : 'Maximale Anzahl buchbarer Kleinkinder pro Erwachsener ist 1. ',
       'Javascript.Validation.MaxNumSeats' : 'Maximale Anzahl Sitzplätze pro Buchung bis zu: ',
       'Javascript.Validation.Pieces' : 'St ',
       'Javascript.Validation.SameNameRestriction' : 'Sie müssen für jeden ersten Gast eines Zimmers einen Gästenamen angeben',
       'Javascript.Validation.AnySameNameRestriction' : 'Sie müssen für alle Reisenden einen Namen angeben',
       'Javascript.ValidationHeader' : 'Bitte machen Sie folgende Angaben',
       'Javascript.Validation.InvalidPaymentMethod' : 'Sie haben keine Zahlungsart gewählt',
       'Javascript.Validation.TravellerSelectionRequired' : 'Bitte wählen Sie einen Reisenden aus den Drop-Down-Listen oder registrieren Sie einen neuen Reisenden.',
       'Javascript.Validation.TravellerNamesConfirmation' : 'Sie müssen bestätigen, dass sämtliche Angaben zu allen Reisenden mit den Daten im jeweiligen Reisepass der betreffenden Personen übereinstimmen.',
       'JavaScript.ValidationMessage.CustomerRequestMessage.Required' : 'You must type in a message.',
       'Javascript.Validation.YearlySalaryRequired' : 'Yearly salary is required.',
       'Javascript.Validation.InstalmentChoiceRequired' : 'Instalment option is required.',
       'Javascript.Validation.BirthDateInFormat' : 'Please enter your social security number',
       'Javascript.Validation.ClickGetAddressButton' : 'Please type in your birth date and click on \'Get address\' to prefill the form.',
       'Combined.Car.ReturnStation.NotSelected' : 'Wählen Sie den Rückgabeort',
       'Combined.Car.Search.InvalidReturnDate' : 'Sie haben eine ungültiges Rückgabedatum angegeben.',
       'Combined.Traveller.NoDriverSelected' : 'Sie haben keinen Fahrer angegeben.',
       'OrderNumber' : 'Bestellnummer ',
       'PassengerType.ChildAge.Missmatch' : 'Um korrekte Preise angeben zu können, müssen wir für die angebenenen Geburtsdaten die Suche neu starten.',
       'Payment.P.Mobile' : 'Handy',
       'ProgressMessage.Air.Booking' : '<span class=\'AltTextBody\'>Ihre Angaben werden an das Buchungssystem zur Kontrolle und Platzreservierung für den gewählten Flug übermittelt. Erhöhte Sicherheitsanforderungen im Buchungsprozess verlängern die Bearbeitungszeit auf maximal 45 Sekunden. Bitte bewegen Sie in dieser Zeit nicht Ihre Maus und drücken Sie keine Tasten.<br>Vielen Dank für Ihre Geduld.</span> ',
       'ProgressMessage.Air.Search' : 'Seat24 sucht in großen Datenmengen nach den niedrigsten Preisen und besten Verbindungen. ',
       'ProgressMessage.Combo.Booking' : '<span class=\'AltTextBody\'>Ihre Angaben werden an das Buchungssystem zur Kontrolle und Platzreservierung für den gewählten Flug übermittelt. Erhöhte Sicherheitsanforderungen im Buchungsprozess verlängern die Bearbeitungszeit auf maximal 45 Sekunden. Bitte bewegen Sie in dieser Zeit nicht Ihre Maus und drücken Sie keine Tasten.<br>Vielen Dank für Ihre Geduld.</span> ',
       'ProgressMessage.Combo.Search' : '<br>Seat24 sucht in großen Datenmengen nach den niedrigsten Preisen und besten Verbindungen. ',
       'ProgressMessage.Combined.Search' : '<br>Seat24 sucht in großen Datenmengen nach den niedrigsten Preisen und besten Verbindungen. ',
       'ProgressMessage.Combined.Result' : '<br>Seat24 sucht in großen Datenmengen nach den niedrigsten Preisen und besten Verbindungen. ',
       'ProgressMessage.Combined.Booking' : '<span class=\'AltTextBody\'>Ihre Angaben werden an das Buchungssystem zur Kontrolle und Platzreservierung für den gewählten Flug übermittelt. Erhöhte Sicherheitsanforderungen im Buchungsprozess verlängern die Bearbeitungszeit auf maximal 45 Sekunden. Bitte bewegen Sie in dieser Zeit nicht Ihre Maus und drücken Sie keine Tasten.<br>Vielen Dank für Ihre Geduld.</span> ',
       'ProgressMessage.Header' : 'Ihre Auswahl wird bearbeitet. ',
       'ProgressMessage.Hotel.Booking' : 'Ihre Auswahl wird bearbeitet. ',
       'ProgressMessage.Hotel.Search' : 'Seat24 sucht in großen Datenmengen nach dem niedrigsten Preis. ',
       'ProgressMessage.Car.Search' : 'Bitte warten. Wir suchen nach den günstigsten Mietwagen.',
       'ProgressMessage.Payment' : '<p><br>Das System erstellt die Zahlungsunterlagen.<br />Das kann bis zu zwei Minuten dauern. Drücken Sie bitte keine Tasten und bewegen Sie Ihre Maus nicht, während das System arbeitet.<br /><br />In wenigen Minuten erhalten Sie eine E-Mail von uns mit mehr Informationen.<br />Seat24 dankt Ihnen für Ihre Geduld.</p>',
       'ProgressMessage.SmallSearch' : 'Ihre Auswahl wird bearbeitet. ',
       'ProgressMessage.GoingToPayment' : 'Validating...',
       'Receipt.R.OrderNum' : 'Bestellnummer ',
       'Site.Email.Info' : 'booking.eu@seat24.com',
       'Site.Email.Reservation' : 'customerservice@support.seat24.de',
       'Site.Email.Sales' : 'booking.eu@seat24.com',
       'Site.HostName' : 'www.seat24.de',
       'Site.Name' : 'Seat24',
       'User.General.Loading' : 'Wird geladen...',
       'User.Alert.FillOutFormCorrectly' : 'Bitte füllen Sie dieses Formular korrekt aus.',
       'User.Alert.CaptchaFailed' : 'Die Buchstaben im Bild wurden nicht korrekt eingegeben. Bitte versuchen Sie es noch einmal.',
       'User.Alert.SystemError' : 'Der Vorgang wurde aufgrund eines Systemfehlers unterbrochen. Bitte versuchen Sie es noch einmal oder wenden Sie sich an den Administrator.',
       'User.Alert.CodeSent' : 'Ein Kode wurde an Ihre E-Mail-Adresse geschickt.',
       'User.Alert.InvalidCode' : 'Der angegebene Kode ist ungültig. Bitte kontrollieren Sie, dass er nicht falsch eingegeben wurde.',
       'User.Alert.InvalidEmail' : 'Die angegebene E-Mail konnte nicht gefunden werden. Bitte kontrollieren Sie, dass sie nicht falsch eingegeben wurde.',
       'User.Alert.InvalidModel' : 'Mindestens ein Feld ist nicht korrekt ausgefüllt. Bitte kontrollieren Sie, dass alles korrekt eingegeben wurde.',
       'User.Alert.InvalidPassword' : 'Das angegebene Passwort ist nicht dem Profil zugeordnet.',
       'User.Alert.NotVerified' : 'Sie müssen vor dem Anmelden Ihre E-Mail-Adresse bestätigen.',
       'User.Alert.NotLoggedIn' : 'Um diesen Vorgang durchzuführen, müssen Sie angemeldet sein.',
       'User.Alert.Unknown' : 'Unerwartetes Ergebnis: [{0}]',
       'User.Alert.InvalidEmail.VerifyNewEmail' : 'Die angegebene E-Mail-Adresse ist nicht verfügbar.',
       'User.Alert.InvalidCode.SetNewPassword' : 'Der angegebene Kode ist ungültig. Entweder wurde das Passwort schon geändert oder der Kode falsch eingegeben.',
       'User.Alert.NotVerified.EmailSent' : 'Ihre E-Mail-Adresse wurde noch nicht bestätigt! Eine E-Mail mit einem neuen Bestätigungskode wurde an Sie gesendet.',
       'Hotel.Result.NoHotelsMatchFilters' : 'Es gibt kein Hotel, das Ihren Auswahlkriterien entspricht. Bitte nehmen Sie eins Ihrer Auswahlkriterien zurück.',
       'Hotel.Result.Filter.Stars.PricePrefix' : 'ab',
       'Hotel.Result.Menu.Map.Label' : 'AUF KARTE ANZEIGEN',
       'Hotel.Result.Menu.List.Label' : 'ALS LISTE ANZEIGEN',
       'Hotel.Result.List.Tabs.Overview.Label' : 'Übersicht',
       'Hotel.Result.List.Tabs.Description.Label' : 'Beschreibung',
       'Hotel.Result.List.Tabs.Photos.Label' : 'Bilder',
       'Hotel.Result.List.Tabs.Reviews.Label' : 'Rezensionen',
       'Hotel.Result.List.Tabs.Map.Label' : 'Karte',
       'Hotel.Result.List.Tabs.Air.Label' : 'Fluginformationen',
       'Hotel.Result.List.ShowMoreButton.Label' : 'Weitere Hotels anzeigen',
       'Hotel.Result.List.HotelsListedHeader' : 'Showing $0 of $1 hotels',
       'User.Details.MenuButton.Travellers' : 'Ihre Angaben',
       'User.Details.MenuButton.Login' : 'ANMELDEN',
       'User.Details.MenuButton.Register' : 'KONTO EINRICHTEN',
       'User.Registration.PageHeader' : 'Neuen Kunden registrieren',
       'User.Registration.Content' : 'Registrieren Sie sich als Kunde, und eine neue Welt wird sich Ihnen eröffnen.',
       'User.LogoutUser.SuccessContent' : 'Sie sind abgemeldet',
       'User.LoginUser.SuccessContent' : 'Sie werden nun angemeldet',
       'User.VerifyNewEmail.SuccessContent' : 'Ihre neue E-Mail-Adresse wurde bestätigt, die alte ist nun nicht mehr länger gültig! Sie werden gleich auf Meine Seiten umgeleitet.',
       'User.ForgotPassword.ValidationMessage.EmailNotInUse' : 'Die E-Mail-Adresse ist unbekannt.',
       'User.ForgotPassword.ResultMessage.Success' : 'Eine E-Mail mit Anweisungen wurde an die angegebene Adresse gesendet.',
       'User.VerifyEmail.ValidationMessage.NotValidEmail' : 'Ungültige E-Mail-Adresse.',
       'User.VerifyEmail.ValidationMessage.NoSuchEmail' : 'Es gibt kein Konto mit dieser E-Mail-Adresse.',
       'User.VerifyEmail.ValidationMessage.NoCodeEntered' : 'Bitte geben Sie den Kode an.',
       'User.VerifyEmail.ValidationMessage.NoEmailEntered' : 'Bitte wiederholen Sie Ihre E-Mail-Adresse.',
       'User.VerifyEmail.ValidationMessage.InvalidLengthEntered' : 'Der Kode muss aus 32 Zeichen bestehen.',
       'User.VerifyEmail.ResultMessage.Failed' : 'Bestätigung missglückt. Haben Sie den Kode und die E-Mail-Adresse korrekt eingegeben?',
       'User.VerifyEmail.ResultMessage.NoSuchEmail' : 'Es gibt kein Konto mit dieser E-Mail-Adresse.',
       'User.VerifyEmail.ResultMessage.AlreadyVerified' : 'Ihre E-Mail-Adresse wurde bereits bestätigt! Sie werden gleich auf die Login-Seite umgeleitet.',
       'User.VerifyEmail.ResultMessage.Success' : 'Ihre E-Mail-Adresse wurde bestätigt. Sie sind nun angemeldet! Sie werden gleich auf Meine Seiten umgeleitet.',
       'User.SetNewPassword.ResultMessage.Success' : 'Ihr Passwort wurde aktualisiert!',
       'User.SetNewPassword.ResultMessage.NoSuchAccount' : 'Die E-Mail-Adresse und der Kode gehören nicht zusammen. Bitte korrigieren Sie die Angaben und versuchen Sie es noch einmal.',
       'User.SetNewPassword.ResultMessage.Failed' : 'Ihr Passwort konnte nicht aktualisiert werden, bitte versuchen Sie es noch einmal.',
       'User.SetNewPassword.ValidationMessage.NoPasswordEntered' : 'Bitte geben Sie das Passwort ein.',
       'User.SetNewPassword.ValidationMessage.PasswordTooWeak' : 'Das Passwort muss mindestens 6 Zeichen enthalten.',
       'User.SetNewPassword.ValidationMessage.NoPasswordRepeatEntered' : 'Bitte wiederholen Sie das Passwort.',
       'User.SetNewPassword.ValidationMessage.PasswordsDoNotMatch' : 'Sie haben nicht dasselbe Passwort eingegeben.',
       'User.Registration.ResultMessage.Success' : 'Sie sind jetzt angemeldet. Es wurde eine E-Mail mit Informationen darüber geschickt, wie Sie Ihre E-Mail-Adresse bestätigen und Ihr Konto aktivieren. Dies müssen Sie tun, bevor Sie sich das nächste Mal anmelden können.',
       'User.Registration.ResultMessage.Failed.CaptchaFailed' : 'Der von Ihnen eingegebene Text entspricht nicht dem Text im Bild. Bitte versuchen Sie es noch einmal mit dem soeben geladenen Bild.',
       'User.Registration.ResultMessage.Failed.TooYoung' : 'Sie müssen mindestens 18 Jahre alt sein, um sich registrieren zu können.',
       'User.Registration.ResultMessage.Failed.InvalidParameters' : 'Sie haben nicht alle Felder korrekt ausgefüllt. Bitte füllen Sie die Felder aus und versuchen Sie es noch einmal.',
       'User.DisabledMessage' : 'Die Login-Funktion ist deaktiviert und kann daher nicht benutzt werden.',
       'User.Profile.Texts.UserConditions' : 'Lorem Ipsum',
       'User.Profile.FormLabel.Private' : 'Privat',
       'User.Profile.FormLabel.Company' : 'Firma',
       'User.Profile.FormLabel.Email' : 'E-Mail',
       'User.Profile.FormLabel.EmailAgain' : 'E-Mail wiederholen',
       'User.Profile.FormLabel.Username' : 'Benutzername',
       'User.Profile.FormLabel.Password' : 'Passwort',
       'User.Profile.FormLabel.PasswordAgain' : 'Passwort wiederholen',
       'User.Profile.FormLabel.FirstName' : 'Vornamen',
       'User.Profile.FormLabel.LastName' : 'Nachname',
       'User.Profile.FormLabel.CompanyName' : 'Firma',
       'User.Profile.FormLabel.OrgNumber' : 'Handelsregister-Nr.',
       'User.Profile.FormLabel.BirthDate' : 'Geburtsdatum',
       'User.Profile.FormLabel.Gender' : 'Geschlecht',
       'User.Profile.FormLabel.Gender.Male' : 'Männlich',
       'User.Profile.FormLabel.Gender.Female' : 'Weiblich',
       'User.Profile.FormLabel.Address' : 'Adresse',
       'User.Profile.FormLabel.Co' : 'C/O',
       'User.Profile.FormLabel.Zipcode' : 'PLZ',
       'User.Profile.FormLabel.City' : 'Ort',
       'User.Profile.FormLabel.Phone' : 'Telefon',
       'User.Profile.FormLabel.CellPhone' : 'Handy',
       'User.Profile.TabMenu.Overview.Label' : 'Übersicht',
       'User.Profile.TabMenu.Orders.Label' : 'Meine Bestellungen',
       'User.Profile.TabMenu.Account.Label' : 'Mein Profil',
       'User.Profile.TabMenu.Settings.Label' : 'Meine Einstellungen',
       'User.ProfileForm.ValidationMessage.NoEmailEntered' : 'Bitte geben Sie Ihre E-Mail-Adresse ein.',
       'User.ProfileForm.ValidationMessage.InvalidEmailEntered' : 'Die E-Mail-Adresse ist ungültig.',
       'User.ProfileForm.ValidationMessage.EmailAlreadyTaken' : 'Die E-Mail-Adresse ist bereits vergeben.',
       'User.ProfileForm.ValidationMessage.NoEmailRepeatEntered' : 'Bitte wiederholen Sie die E-Mail-Adresse.',
       'User.ProfileForm.ValidationMessage.EmailRepeatDoNotMatch' : 'Die E-Mail-Adressen stimmen nicht überein.',
       'User.ProfileForm.ValidationMessage.NoPasswordEntered' : 'Bitte geben Sie ein Passwort an.',
       'User.ProfileForm.ValidationMessage.PasswordTooWeak' : 'Das Passwort muss mindestens {0} Zeichen enthalten.',
       'User.ProfileForm.ValidationMessage.NoPasswordRepeatEntered' : 'Bitte wiederholen Sie das Passwort. ',
       'User.ProfileForm.ValidationMessage.PasswordRepeatDoNotMatch' : 'Die Passwörter stimmen nicht überein',
       'User.ProfileForm.ValidationMessage.NoFirstNameEntered' : 'Bitte geben Sie Ihren Vornamen an.',
       'User.ProfileForm.ValidationMessage.NoLastNameEntered' : 'Bitte geben Sie Ihren Nachnamen an.',
       'User.ProfileForm.ValidationMessage.NoBirthDateSelected' : 'Bitte wählen Sie das Geburtsdatum.',
       'User.ProfileForm.ValidationMessage.NoBirthYearSelected' : 'Bitte wählen Sie das Geburtsjahr.',
       'User.ProfileForm.ValidationMessage.NoBirthMonthSelected' : 'Bitte wählen Sie den Geburtsmonat.',
       'User.ProfileForm.ValidationMessage.NoBirthDaySelected' : 'Bitte wählen Sie den Tag der Geburt.',
       'User.ProfileForm.ValidationMessage.TooYoung' : 'Sie müssen mindestens 18 Jahre alt sein, um sich registrieren zu können.',
       'User.ProfileForm.ValidationMessage.NoGenderSelected' : 'Bitte wählen Sie das Geschlecht.',
       'User.ProfileForm.ValidationMessage.NoAddressEntered' : 'Bitte geben Sie Ihre Adresse an.',
       'User.ProfileForm.ValidationMessage.NoZipCodeEntered' : 'Bitte wählen Sie die Postleitzahl.',
       'User.ProfileForm.ValidationMessage.ZipCodeInvalid' : 'Die Postleitzahl darf nur Zahlen enthalten.',
       'User.ProfileForm.ValidationMessage.NoCityEntered' : 'Bitte geben Sie einen Ort an.',
       'User.ProfileForm.ValidationMessage.NoPhoneEntered' : 'Bitte geben Sie eine Telefonnummer an.',
       'User.ProfileForm.ValidationMessage.InvalidPhoneEntered' : 'Die Nummer ist ungültig.',
       'User.ProfileForm.ValidationMessage.NoMobilePhoneEntered' : 'Bitte geben Sie eine Handynummer an.',
       'User.ProfileForm.ValidationMessage.InvalidMobilePhoneEntered' : 'Die Nummer ist ungültig.',
       'User.ProfileForm.ValidationMessage.NoCaptchaResponseEntered' : 'Bitte geben Sie die im Bild zu erkennenden Zeichen ein.',
       'User.ProfileForm.ValidationMessage.AgreementNotAccepted' : 'Sie müssen die Geschäftsbedingungen akzeptieren.',
       'User.Profile.ValidationMessage.EnterEmail' : 'E-Mail-Adresse angeben.',
       'User.Profile.ValidationMessage.EnterPassword' : 'Bitte geben Sie ein Passwort an.',
       'User.Profile.ValidationMessage.EnterPasswordAgain' : 'Bitte wiederholen Sie das Passwort. ',
       'User.Profile.Travellers.Error.UnableToStoreTraveller' : 'Der Begleiter konnte nicht gespeichert werden. Sind Sie sicher, dass Sie das Formular korrekt ausgefüllt haben?',
       'User.Profile.Travellers.Error.UnableToDeleteTraveller' : 'Der Begleiter konnte nicht entfernt werden.',
       'User.Profile.Travellers.NoTravellers' : 'Sie haben noch keine Reisebegleiter hinzugefügt.',
       'User.Profile.Travellers.ConfirmDelete' : 'Are you sure you want to delete the traveller?',
       'User.Profile.Discounts.Error.UnableToFetchDiscounts' : 'Es ist ein Fehler bei der Anzeige der Liste über die persönlichen Rabatte aufgetreten.',
       'User.Profile.Discounts.NoDiscounts' : 'Sie haben keine Boni.',
       'User.Profile.Discounts.NoActiveDiscounts' : 'Sie haben keine ungenutzten, noch gültigen Boni.',
       'User.Profile.Orders.NoOrders' : 'Sie haben keine Bestellungen.',
       'User.Profile.Orders.OrderHasNoProducts' : 'Diese Bestellung enthält keine Produkte.',
       'User.Profile.Orders.NoActiveOrders' : 'Sie haben keine aktiven Bestellungen.',
       'User.Profile.Orders.NoArchivedOrders' : 'Sie haben keine archivierten Bestellungen.',
       'User.Profile.ChangePassword.ResultMessage.Success' : 'Ihr Passwort wurde geändert!',
       'User.Profile.ChangePassword.ValidationMessage.NoPasswordEntered' : 'Bitte geben Sie Ihr derzeitiges Passwort an.',
       'User.Profile.ChangePassword.ValidationMessage.WrongPasswordEntered' : 'Falsches Passwort.',
       'User.Profile.ChangePassword.ValidationMessage.NoNewPasswordEntered' : 'Bitte geben Sie Ihr neues Passwort an.',
       'User.Profile.ChangePassword.ValidationMessage.NewPasswordTooWeak' : 'Das Passwort muss mindestens {0} Zeichen enthalten.',
       'User.Profile.ChangePassword.ValidationMessage.NoNewPasswordRepeatEntered' : 'Bitte wiederholen Sie Ihr neues Passwort.',
       'User.Profile.ChangePassword.ValidationMessage.NewPasswordRepeatNoMatch' : 'Das neue Passwort muss in beiden Feldern identisch sein.',
       'User.Profile.ChangeEmail.ValidationMessage.NoPasswordEntered' : 'Bitte geben Sie Ihr Passwort an.',
       'User.Profile.ChangeEmail.ValidationMessage.WrongPasswordEntered' : 'Falsches Passwort.',
       'User.Profile.ChangeEmail.ValidationMessage.NoNewEmailEntered' : 'Bitte geben Sie Ihre neue E-Mail-Adresse an.',
       'User.Profile.ChangeEmail.ValidationMessage.NewEmailInvalid' : 'Die E-Mail-Adresse ist ungültig.',
       'User.Profile.ChangeEmail.ValidationMessage.NewEmailAlreadyInUse' : 'Die E-Mail-Adresse ist bereits vergeben.',
       'User.Profile.ChangeEmail.ValidationMessage.NoNewEmailRepeatEntered' : 'Bitte wiederholen Sie Ihre neue E-Mail-Adresse.',
       'User.Profile.ChangeEmail.ValidationMessage.NewEmailRepeatNoMatch' : 'Die neue E-Mail-Adresse muss in beiden Feldern identisch sein.',
       'Air.Result.List.ShowMoreButton.Label' : 'Weitere Flüge anzeigen',
       'Hotel.Result.List.ShowMoreButton.Label' : 'Weitere Hotels anzeigen',
       'Car.Result.List.ShowMoreButton.Label' : 'Weitere Autos anzeigen',
       'Combo.Result.List.ShowMoreButton.Label' : 'Weitere Reisen anzeigen',
       'Air.Result.NoDealsFound' : 'Es konnten keine Flugpreise gefunden werden. Bitte ändern Sie die obige Auswahl.',
       'Hotel.Result.NoDealsFound' : 'Es konnten keine Hotelpreise gefunden werden. Bitte ändern Sie die obige Auswahl.',
       'Car.Result.NoDealsFound' : 'Es konnten keine Mietwagenpreise gefunden werden. Bitte ändern Sie die obige Auswahl.',
       'Combo.Result.NoDealsFound' : 'Es konnten keine Paketpreise gefunden werden. Bitte ändern Sie die obige Auswahl.',
       'Result.List.ShowAllButton.Label' : 'Alle anzeigen',
       'General.Of' : 'von',
       'User.General.ResultMessage.UnableToSaveMessage' : 'Ihre Einstellungen können nicht gespeichert werden, bitte versuchen Sie es später noch einmal.',
       'Air.Result.Recommendation.price.Tooltip' : '',
       'Air.Result.Recommendation.weighted.Tooltip' : '',
       'Air.Result.Recommendation.speed.Tooltip' : '',
       'Air.Result.Recommendation.stay.Tooltip' : '',
       'Air.Result.Recommendation.combo.Tooltip' : ''
      },

      get:function (key, defaultText) {
        var r = UiText.textMap[key];
        if (!r) {
          if (defaultText !== undefined) r = ('' + defaultText + '');
          else {
            ibewarning("UiText.get(" + key + ") did not find any texts. Has not been added in js-ui-texts.conf?");
            r = key;
          }
        }
        
        var REPLACE_END = decodeURIComponent("%7D");
        var REPLACE_START_PLAIN = decodeURIComponent("%7B");
        var REPLACE_START = decodeURIComponent("%24%7B");

        if (r) {
          for (var i = 1; i < arguments.length; i++) {
            r = r.replace(REPLACE_START_PLAIN + (i - 1) + REPLACE_END, arguments[i]);
          }
          var nLoops = 0;
          var idxStart = r.indexOf(REPLACE_START);
          var idxEnd = r.indexOf(REPLACE_END);
          while (idxStart >= 0 && idxEnd > idxStart && (nLoops++ < 10)) {
            var innerKey = r.substring(idxStart + 2, idxEnd);
            var rInner = UiText.textMap[innerKey];
            if (!rInner) {
              rInner = '#' + innerKey + '#';
            }
            r = r.substring(0, idxStart) + rInner + r.substring(idxEnd + 1);

            idxStart = r.indexOf(REPLACE_START);
            idxEnd = r.indexOf(REPLACE_END);
          }
        }

        return r;
      }
    }
  })();

