https://www.my-bookings.cc/guest/booking-1346808-56575VAED.info

ID de exploración:
c66cab00-b730-4047-a3f7-402b92f702cbFinalizado
URL enviada:
https://agcd.at/YjJhYWIzMTMrcGJDZytOZEliaz0-v2Redireccionado
Informe finalizado:

Enlaces: 0 encontrados

Variables JavaScript: 8 encontradas

NombreTipo
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject
$function
jQueryfunction
bootstrapobject
Vuefunction
axiosfunction

Mensajes de registro de la consola: 0 encontrados

HTML

<!DOCTYPE html><html lang="en"><head>
		<!-- Required meta tags -->
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
		<meta name="robots" content="noindex"> 
		<meta name="robots" content="nofollow">
		<!-- Bootstrap CSS --> 
		<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">

		<title>Booking information</title>
		<link href="/everest/font-awesome/css/font-awesome.min.css" rel="stylesheet">

		<style>
			[v-cloak] {
				display: none;
			}

			.bookingInfoLabel {
				font-weight: bold;
			}
			.custom-file-label::after {
				content: "Search";
			}

			.table-covidtestfiles { font-size: 0.8em;}

			.cc-icon {width:auto;height: 30px;}
            .attributes-container { font-size: 0.8em;}
		</style>
	</head>
	<body class="bg-light">
		<div id="app-inpage" class="container"><div><ul class="nav justify-content-end"><li class="nav-item"><a href="#" class="nav-link">Deutsch</a></li></ul></div> <div class="pt-2"><div class="row"><div class="col-12"><h3>Zeus Meiselstrasse Top 24</h3></div></div></div> <div class="pt-3"><div class="row"><div class="col-12"><div class="row"></div> <div class="row"><div class="col-12"><div class="row"><div class="col-sm-4"><a href="#detailInfo-795" class="btn btn-secondary btn-sm d-block mt-1">guest registration</a></div></div></div></div></div></div></div> <!----> <div><div class="my-3 p-3 bg-white rounded shadow-sm"><h6 class="border-bottom border-gray pb-2 mb-0">reservation 1346808<span style="display: none;"> - <span class="text-success">confirmed</span></span></h6> <div class="text-muted pt-3"><div class="row"><div class="col-12"><div class="row"><div class="col-4 col-md-4 col-lg-2"><label class="bookingInfoLabel">Name</label></div> <div class="col-8 col-lg-10">
										Maria Afonina									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Company</label></div> <div class="col-8"></div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">People</label></div> <div class="col-8">
										1									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Arrival</label></div> <div class="col-8">
										22.11.2024									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Departure</label></div> <div class="col-8">
										25.11.2024									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Check-in</label></div> <div class="col-8">
										14:00									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Check-out</label></div> <div class="col-8">
										10:00									</div></div></div> <div class="col-12 "><div class="row"><div class="col-4 col-md-4 col-lg-2"><label class="bookingInfoLabel">nights</label></div> <div class="col-8 col-lg-10">
										3									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Total amount</label></div> <div class="col-8">
										€ 314,54									</div></div></div> <div class="col-12 col-lg-6"><div class="row"><div class="col-4"><label class="bookingInfoLabel">Deposit</label></div> <div class="col-8">
                                            € 150,00                                        </div></div></div></div></div></div> <div class="my-3 p-3 bg-white rounded shadow-sm"><h6 class="border-bottom border-gray pb-2 mb-0">Please fill in</h6> <div class="text-muted pt-3"><div><div class="row"><div class="col-sm-6"><div class="form-group row"><label class="col-sm-4 col-form-label">Arrival time</label> <div class="col-sm-8"><div class="input-group"><select class="custom-select"><option value="">hour</option> <option value="01">01</option> <option value="02">02</option> <option value="03">03</option> <option value="04">04</option> <option value="05">05</option> <option value="06">06</option> <option value="07">07</option> <option value="08">08</option> <option value="09">09</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option></select> <div class="input-group-prepend"><span class="input-group-text">:</span></div> <select class="custom-select"><option value="">minute</option> <option value="00">00</option> <option value="01">01</option> <option value="02">02</option> <option value="03">03</option> <option value="04">04</option> <option value="05">05</option> <option value="06">06</option> <option value="07">07</option> <option value="08">08</option> <option value="09">09</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> <option value="32">32</option> <option value="33">33</option> <option value="34">34</option> <option value="35">35</option> <option value="36">36</option> <option value="37">37</option> <option value="38">38</option> <option value="39">39</option> <option value="40">40</option> <option value="41">41</option> <option value="42">42</option> <option value="43">43</option> <option value="44">44</option> <option value="45">45</option> <option value="46">46</option> <option value="47">47</option> <option value="48">48</option> <option value="49">49</option> <option value="50">50</option> <option value="51">51</option> <option value="52">52</option> <option value="53">53</option> <option value="54">54</option> <option value="55">55</option> <option value="56">56</option> <option value="57">57</option> <option value="58">58</option> <option value="59">59</option></select></div></div></div></div></div> <div class="row"><div class="col-sm-6"><div class="form-group row"><label class="col-sm-4 col-form-label">Phone</label> <div class="col-sm-8"><input type="text" placeholder="+43123456789" class="form-control"></div></div></div> <div class="col-sm-6"><div class="form-group row"><label class="col-sm-4 col-form-label">Email</label> <div class="col-sm-8"><input type="text" class="form-control"></div></div></div></div> <div class="text-right"><button type="button" class="btn btn-primary btn-sm">Save</button></div></div></div></div> <div class="my-3 p-3 bg-white rounded shadow-sm"><h6 class="border-bottom border-gray pb-2 mb-0">please upload IDs of all fellow travellers</h6> <div class="text-muted pt-3"><div><div class="row"><div class="col"><form><div class="custom-file"><input type="file" id="passportFiles" multiple="multiple" accept="image/*,application/pdf" class="custom-file-input"> <label for="passportFiles" class="custom-file-label">Choose files</label></div></form></div></div> <div class="row"><div class="col pt-4"><!----> <table class="table table-sm table-covidtestfiles"><tbody></tbody></table></div></div></div></div></div></div> <div id="detailInfo-795" class="my-3 p-3 bg-white rounded shadow-sm"><h6 class="border-bottom border-gray pb-2 mb-0">guest registration</h6> <div class="text-muted pt-3"><div><p style="margin: 0px; padding: 0px;">Please use the following link for the legally required registration:<br> <br> <a href="https://www.my-bookings.cc/guest-registration/ktehnD04989daddc6409e31df3ee4bfca02b29ph9aqBW9CNS2.mb" target="_blank">https://www.my-bookings.cc/guest-registration/ktehnD04989daddc6409e31df3ee4bfca02b29ph9aqBW9CNS2.mb</a></p></div></div></div> <div id="modalCreditcardVerify" tabindex="-1" role="dialog" aria-labelledby="modalCreditcardVerifyLabel" aria-hidden="true" class="modal fade"><div role="document" class="modal-dialog"><div class="modal-content"><div class="modal-header"><h5 id="modalCreditcardVerifyLabel" class="modal-title">credit card details</h5> <button type="button" data-dismiss="modal" aria-label="Close" class="close"><span aria-hidden="true">×</span></button></div> <div class="modal-body"><form role="form"><div class="form-group"><label for="username">card holder</label> <input type="text" name="username" placeholder="name shown on your credit card" class="form-control"></div> <div class="form-group"><label for="cardNumber">credit card number</label> <div class="input-group"><input type="text" name="cardNumber" placeholder="your credit card number" class="form-control"> <div class="input-group-append"><span class="input-group-text text-muted"><i class="fa fa-cc-visa mx-1"></i> <i class="fa fa-cc-amex mx-1"></i> <i class="fa fa-cc-mastercard mx-1"></i></span> <!----></div></div></div> <div class="row"><div class="col-sm-8"><div class="form-group"><label><span class="hidden-xs">valid thru</span></label> <div class="input-group"><select class="form-control"><option value=""></option> <option value="01">01</option><option value="02">02</option><option value="03">03</option><option value="04">04</option><option value="05">05</option><option value="06">06</option><option value="07">07</option><option value="08">08</option><option value="09">09</option><option value="10">10</option><option value="11">11</option><option value="12">12</option></select> <select class="form-control"><option value=""></option> <option value="24">2024</option><option value="25">2025</option><option value="26">2026</option><option value="27">2027</option><option value="28">2028</option><option value="29">2029</option><option value="30">2030</option><option value="31">2031</option><option value="32">2032</option><option value="33">2033</option><option value="34">2034</option><option value="35">2035</option><option value="36">2036</option><option value="37">2037</option><option value="38">2038</option><option value="39">2039</option></select></div></div></div> <div class="col-sm-4"><div class="form-group mb-4"><label data-toggle="tooltip" title="3-digit CVC on the back of your credit card">CVC
																		<i class="fa fa-question-circle"></i></label> <input type="text" class="form-control"></div></div></div></form> <!----></div> <div class="modal-footer"><!----> <button type="button" class="btn btn-info btn-sm">Save</button> <button type="button" class="btn btn-secondary btn-sm">cancel</button></div></div></div></div></div>

		<div class="modal" id="modalSaved" tabindex="-1">
			<div class="modal-dialog modal-dialog-centered">
				<div class="modal-content">				
					<div class="modal-body">
						<p>saved successfully.</p>
					</div>
					<div class="modal-footer">
						<button type="button" class="btn btn-primary" data-dismiss="modal">OK</button>
					</div>
				</div>
			</div>
		</div>

		<div class="modal" id="modalCheckFields" tabindex="-1">
			<div class="modal-dialog modal-dialog-centered">
				<div class="modal-content">				
					<div class="modal-body">
						<p>Please check your input.</p>
					</div>
					<div class="modal-footer">
						<button type="button" class="btn btn-primary" data-dismiss="modal">OK</button>
					</div>
				</div>
			</div>
		</div>

	
		<!-- Optional JavaScript -->
		<!-- jQuery first, then Popper.js, then Bootstrap JS -->
		<script src="assets/jquery-3.4.1.min.js"></script>
		<script src="assets/bootstrap/js/bootstrap.min.js"></script>
		<script src="assets/vue.min.js"></script>
		<script src="assets/axios.min.js"></script>

		<script>


			$(function() {
				var AppInPage = new Vue({

					el: "#app-inpage",
					data: {
						booking_id: "1346808",
						url_return: "",
						url_ccid: "",
						url_error: "",
                        url_payautomatic: "",
                        url_success: "",
						isFromHomepage: "0",
						lang: "en",
						pin: "56575VAED",
						creditcards: [],
						allCardsVerified: false,
						showErrors: {
							verify: false,
							newCardFillAllFields: false
						},
						pageIsLoading: false,
						newCardLoading:	false,
						ccCheckInterval: null,
						newCreditcard: {
							name: "",
							number: "",
							validMonth: "",
							validYear: "",
							cvc: "",
							brand: null
						},
						additionalFields: [],
						customContactFields: {
							email: "",
							phone: "+37378474479",
							arrivalTimeHour: "",
							arrivalTimeMinute: ""
						},
						covidTestFiles: {
							currCount: 0,
							countDone: 0,
							list: [],
							uploadinProgress: false
						},
						passportFiles: {
							currCount: 0,
							countDone: 0,
							list: [],
							uploadinProgress: false
						},
                        payautomatic: {
                          list: []
                        },
						peopleCount: 1,
						loadFeratelData: false,
						feratelGuestlist: [],
						feratelCountries: [],
						showPayment: false,
						showCovid: false,
						showPassport: true,
						showArrivaltime: true,
                        showPaymentsPA: false,
						paymentCCIcons: [""],
                        attributesGroups: [{"group_id":1,"group_name":"Topattribute","group_name_de":"Topattribute","group_name_en":"Topattribute","group_name_es":"Mejores atributos","attributes":[]},{"group_id":2,"group_name":"Bad","group_name_de":"Bad","group_name_en":"Bath","group_name_es":"Ba\u00f1o","attributes":[]},{"group_id":3,"group_name":"K\u00fcche","group_name_de":"K\u00fcche","group_name_en":"Kitchen","group_name_es":"Cocina","attributes":[]},{"group_id":4,"group_name":"Schlafzimmer","group_name_de":"Schlafzimmer","group_name_en":"Sleeping Room","group_name_es":"Dormitorio","attributes":[]},{"group_id":5,"group_name":"Wohnbereich","group_name_de":"Wohnbereich","group_name_en":"Living Room","group_name_es":"Sal\u00f3n","attributes":[]},{"group_id":6,"group_name":"Sonstiges","group_name_de":"Sonstiges","group_name_en":"Others","group_name_es":"Cualquiera","attributes":[]},{"group_id":7,"group_name":"Gemeinschaftsk\u00fcche","group_name_de":"Gemeinschaftsk\u00fcche","group_name_en":"Community Kitchen","group_name_es":"Cocina compartida","attributes":[]},{"group_id":8,"group_name":"Hotel Ausstattung","group_name_de":"Hotel Ausstattung","group_name_en":"Hotel Amenities","group_name_es":"Instalaciones del hotel","attributes":[]},{"group_id":9,"group_name":"Allgemeinbereich","group_name_de":"Allgemeinbereich","group_name_en":"General Area","group_name_es":"\u00c1rea general","attributes":[]},{"group_id":10,"group_name":"Au\u00dfenbereich","group_name_de":"Au\u00dfenbereich","group_name_en":"Outdoor Area","group_name_es":"\u00c1rea exterior","attributes":[]},{"group_id":20,"group_name":"Bad 1","group_name_de":"Bad 1","group_name_en":"Bath 1","group_name_es":"Ba\u00f1o 1","attributes":[]},{"group_id":21,"group_name":"Bad 2","group_name_de":"Bad 2","group_name_en":"Bath 2","group_name_es":"Ba\u00f1o 2","attributes":[]},{"group_id":22,"group_name":"Bad 3","group_name_de":"Bad 3","group_name_en":"Bath 3","group_name_es":"Ba\u00f1o 3","attributes":[]},{"group_id":23,"group_name":"Bad 4","group_name_de":"Bad 4","group_name_en":"Bath 4","group_name_es":"Ba\u00f1o 4","attributes":[]},{"group_id":24,"group_name":"Bad 5","group_name_de":"Bad 5","group_name_en":"Bath 5","group_name_es":"Ba\u00f1o 5","attributes":[]},{"group_id":25,"group_name":"Bad 6","group_name_de":"Bad 6","group_name_en":"Bath 6","group_name_es":"Ba\u00f1o 6","attributes":[]},{"group_id":26,"group_name":"Bad 7","group_name_de":"Bad 7","group_name_en":"Bath 7","group_name_es":"Ba\u00f1o 7","attributes":[]},{"group_id":27,"group_name":"Bad 8","group_name_de":"Bad 8","group_name_en":"Bath 8","group_name_es":"Ba\u00f1o 8","attributes":[]},{"group_id":28,"group_name":"Bad 9","group_name_de":"Bad 9","group_name_en":"Bath 9","group_name_es":"Ba\u00f1o 9","attributes":[]},{"group_id":29,"group_name":"Bad 10","group_name_de":"Bad 10","group_name_en":"Bath 10","group_name_es":"Ba\u00f1o 10","attributes":[]},{"group_id":30,"group_name":"K\u00fcche 1","group_name_de":"K\u00fcche 1","group_name_en":"Kitchen 1","group_name_es":"Cocina 1","attributes":[]},{"group_id":31,"group_name":"K\u00fcche 2","group_name_de":"K\u00fcche 2","group_name_en":"Kitchen 2","group_name_es":"Cocina 2","attributes":[]},{"group_id":32,"group_name":"K\u00fcche 3","group_name_de":"K\u00fcche 3","group_name_en":"Kitchen 3","group_name_es":"Cocina 3","attributes":[]},{"group_id":33,"group_name":"K\u00fcche 4","group_name_de":"K\u00fcche 4","group_name_en":"Kitchen 4","group_name_es":"Cocina 4","attributes":[]},{"group_id":34,"group_name":"K\u00fcche 5","group_name_de":"K\u00fcche 5","group_name_en":"Kitchen 5","group_name_es":"Cocina 5","attributes":[]},{"group_id":35,"group_name":"K\u00fcche 6","group_name_de":"K\u00fcche 6","group_name_en":"Kitchen 6","group_name_es":"Cocina 6","attributes":[]},{"group_id":36,"group_name":"K\u00fcche 7","group_name_de":"K\u00fcche 7","group_name_en":"Kitchen 7","group_name_es":"Cocina 7","attributes":[]},{"group_id":37,"group_name":"K\u00fcche 8","group_name_de":"K\u00fcche 8","group_name_en":"Kitchen 8","group_name_es":"Cocina 8","attributes":[]},{"group_id":38,"group_name":"K\u00fcche 9","group_name_de":"K\u00fcche 9","group_name_en":"Kitchen 9","group_name_es":"Cocina 9","attributes":[]},{"group_id":39,"group_name":"K\u00fcche 10","group_name_de":"K\u00fcche 10","group_name_en":"Kitchen 10","group_name_es":"Cocina 10","attributes":[]},{"group_id":40,"group_name":"Schlafzimmer 1","group_name_de":"Schlafzimmer 1","group_name_en":"Sleeping Room 1","group_name_es":"Dormitorio 1","attributes":[]},{"group_id":41,"group_name":"Schlafzimmer 2","group_name_de":"Schlafzimmer 2","group_name_en":"Sleeping Room 2","group_name_es":"Dormitorio 2","attributes":[]},{"group_id":42,"group_name":"Schlafzimmer 3","group_name_de":"Schlafzimmer 3","group_name_en":"Sleeping Room 3","group_name_es":"Dormitorio 3","attributes":[]},{"group_id":43,"group_name":"Schlafzimmer 4","group_name_de":"Schlafzimmer 4","group_name_en":"Sleeping Room 4","group_name_es":"Dormitorio 4","attributes":[]},{"group_id":44,"group_name":"Schlafzimmer 5","group_name_de":"Schlafzimmer 5","group_name_en":"Sleeping Room 5","group_name_es":"Dormitorio 5","attributes":[]},{"group_id":45,"group_name":"Schlafzimmer 6","group_name_de":"Schlafzimmer 6","group_name_en":"Sleeping Room 6","group_name_es":"Dormitorio 6","attributes":[]},{"group_id":46,"group_name":"Schlafzimmer 7","group_name_de":"Schlafzimmer 7","group_name_en":"Sleeping Room 7","group_name_es":"Dormitorio 7","attributes":[]},{"group_id":47,"group_name":"Schlafzimmer 8","group_name_de":"Schlafzimmer 8","group_name_en":"Sleeping Room 8","group_name_es":"Dormitorio 8","attributes":[]},{"group_id":48,"group_name":"Schlafzimmer 9","group_name_de":"Schlafzimmer 9","group_name_en":"Sleeping Room 9","group_name_es":"Dormitorio 9","attributes":[]},{"group_id":49,"group_name":"Schlafzimmer 10","group_name_de":"Schlafzimmer 10","group_name_en":"Sleeping Room 10","group_name_es":"Dormitorio 10","attributes":[]},{"group_id":50,"group_name":"Wohnbereich 1","group_name_de":"Wohnbereich 1","group_name_en":"Living Room 1","group_name_es":"Sal\u00f3n 1","attributes":[]},{"group_id":51,"group_name":"Wohnbereich 2","group_name_de":"Wohnbereich 2","group_name_en":"Living Room 2","group_name_es":"Sal\u00f3n 2","attributes":[]},{"group_id":52,"group_name":"Wohnbereich 3","group_name_de":"Wohnbereich 3","group_name_en":"Living Room 3","group_name_es":"Sal\u00f3n 3","attributes":[]},{"group_id":53,"group_name":"Wohnbereich 4","group_name_de":"Wohnbereich 4","group_name_en":"Living Room 4","group_name_es":"Sal\u00f3n 4","attributes":[]},{"group_id":54,"group_name":"Wohnbereich 5","group_name_de":"Wohnbereich 5","group_name_en":"Living Room 5","group_name_es":"Sal\u00f3n 5","attributes":[]},{"group_id":55,"group_name":"Wohnbereich 6","group_name_de":"Wohnbereich 6","group_name_en":"Living Room 6","group_name_es":"Sal\u00f3n 6","attributes":[]},{"group_id":56,"group_name":"Wohnbereich 7","group_name_de":"Wohnbereich 7","group_name_en":"Living Room 7","group_name_es":"Sal\u00f3n 7","attributes":[]},{"group_id":57,"group_name":"Wohnbereich 8","group_name_de":"Wohnbereich 8","group_name_en":"Living Room 8","group_name_es":"Sal\u00f3n 8","attributes":[]},{"group_id":58,"group_name":"Wohnbereich 9","group_name_de":"Wohnbereich 9","group_name_en":"Living Room 9","group_name_es":"Sal\u00f3n 9","attributes":[]},{"group_id":59,"group_name":"Wohnbereich 10","group_name_de":"Wohnbereich 10","group_name_en":"Living Room 10","group_name_es":"Sal\u00f3n 10","attributes":[]}],
                        attributesForCategory: [{"group_id":1,"group_name":"Topattribute","group_name_de":"Topattribute","group_name_en":"Topattribute","group_name_es":"Mejores atributos","attributes":[]},{"group_id":2,"group_name":"Bad","group_name_de":"Bad","group_name_en":"Bath","group_name_es":"Ba\u00f1o","attributes":[]},{"group_id":3,"group_name":"K\u00fcche","group_name_de":"K\u00fcche","group_name_en":"Kitchen","group_name_es":"Cocina","attributes":[]},{"group_id":4,"group_name":"Schlafzimmer","group_name_de":"Schlafzimmer","group_name_en":"Sleeping Room","group_name_es":"Dormitorio","attributes":[]},{"group_id":5,"group_name":"Wohnbereich","group_name_de":"Wohnbereich","group_name_en":"Living Room","group_name_es":"Sal\u00f3n","attributes":[]},{"group_id":6,"group_name":"Sonstiges","group_name_de":"Sonstiges","group_name_en":"Others","group_name_es":"Cualquiera","attributes":[]},{"group_id":7,"group_name":"Gemeinschaftsk\u00fcche","group_name_de":"Gemeinschaftsk\u00fcche","group_name_en":"Community Kitchen","group_name_es":"Cocina compartida","attributes":[]},{"group_id":8,"group_name":"Hotel Ausstattung","group_name_de":"Hotel Ausstattung","group_name_en":"Hotel Amenities","group_name_es":"Instalaciones del hotel","attributes":[]},{"group_id":9,"group_name":"Allgemeinbereich","group_name_de":"Allgemeinbereich","group_name_en":"General Area","group_name_es":"\u00c1rea general","attributes":[]},{"group_id":10,"group_name":"Au\u00dfenbereich","group_name_de":"Au\u00dfenbereich","group_name_en":"Outdoor Area","group_name_es":"\u00c1rea exterior","attributes":[]},{"group_id":20,"group_name":"Bad 1","group_name_de":"Bad 1","group_name_en":"Bath 1","group_name_es":"Ba\u00f1o 1","attributes":[]},{"group_id":21,"group_name":"Bad 2","group_name_de":"Bad 2","group_name_en":"Bath 2","group_name_es":"Ba\u00f1o 2","attributes":[]},{"group_id":22,"group_name":"Bad 3","group_name_de":"Bad 3","group_name_en":"Bath 3","group_name_es":"Ba\u00f1o 3","attributes":[]},{"group_id":23,"group_name":"Bad 4","group_name_de":"Bad 4","group_name_en":"Bath 4","group_name_es":"Ba\u00f1o 4","attributes":[]},{"group_id":24,"group_name":"Bad 5","group_name_de":"Bad 5","group_name_en":"Bath 5","group_name_es":"Ba\u00f1o 5","attributes":[]},{"group_id":25,"group_name":"Bad 6","group_name_de":"Bad 6","group_name_en":"Bath 6","group_name_es":"Ba\u00f1o 6","attributes":[]},{"group_id":26,"group_name":"Bad 7","group_name_de":"Bad 7","group_name_en":"Bath 7","group_name_es":"Ba\u00f1o 7","attributes":[]},{"group_id":27,"group_name":"Bad 8","group_name_de":"Bad 8","group_name_en":"Bath 8","group_name_es":"Ba\u00f1o 8","attributes":[]},{"group_id":28,"group_name":"Bad 9","group_name_de":"Bad 9","group_name_en":"Bath 9","group_name_es":"Ba\u00f1o 9","attributes":[]},{"group_id":29,"group_name":"Bad 10","group_name_de":"Bad 10","group_name_en":"Bath 10","group_name_es":"Ba\u00f1o 10","attributes":[]},{"group_id":30,"group_name":"K\u00fcche 1","group_name_de":"K\u00fcche 1","group_name_en":"Kitchen 1","group_name_es":"Cocina 1","attributes":[]},{"group_id":31,"group_name":"K\u00fcche 2","group_name_de":"K\u00fcche 2","group_name_en":"Kitchen 2","group_name_es":"Cocina 2","attributes":[]},{"group_id":32,"group_name":"K\u00fcche 3","group_name_de":"K\u00fcche 3","group_name_en":"Kitchen 3","group_name_es":"Cocina 3","attributes":[]},{"group_id":33,"group_name":"K\u00fcche 4","group_name_de":"K\u00fcche 4","group_name_en":"Kitchen 4","group_name_es":"Cocina 4","attributes":[]},{"group_id":34,"group_name":"K\u00fcche 5","group_name_de":"K\u00fcche 5","group_name_en":"Kitchen 5","group_name_es":"Cocina 5","attributes":[]},{"group_id":35,"group_name":"K\u00fcche 6","group_name_de":"K\u00fcche 6","group_name_en":"Kitchen 6","group_name_es":"Cocina 6","attributes":[]},{"group_id":36,"group_name":"K\u00fcche 7","group_name_de":"K\u00fcche 7","group_name_en":"Kitchen 7","group_name_es":"Cocina 7","attributes":[]},{"group_id":37,"group_name":"K\u00fcche 8","group_name_de":"K\u00fcche 8","group_name_en":"Kitchen 8","group_name_es":"Cocina 8","attributes":[]},{"group_id":38,"group_name":"K\u00fcche 9","group_name_de":"K\u00fcche 9","group_name_en":"Kitchen 9","group_name_es":"Cocina 9","attributes":[]},{"group_id":39,"group_name":"K\u00fcche 10","group_name_de":"K\u00fcche 10","group_name_en":"Kitchen 10","group_name_es":"Cocina 10","attributes":[]},{"group_id":40,"group_name":"Schlafzimmer 1","group_name_de":"Schlafzimmer 1","group_name_en":"Sleeping Room 1","group_name_es":"Dormitorio 1","attributes":[]},{"group_id":41,"group_name":"Schlafzimmer 2","group_name_de":"Schlafzimmer 2","group_name_en":"Sleeping Room 2","group_name_es":"Dormitorio 2","attributes":[]},{"group_id":42,"group_name":"Schlafzimmer 3","group_name_de":"Schlafzimmer 3","group_name_en":"Sleeping Room 3","group_name_es":"Dormitorio 3","attributes":[]},{"group_id":43,"group_name":"Schlafzimmer 4","group_name_de":"Schlafzimmer 4","group_name_en":"Sleeping Room 4","group_name_es":"Dormitorio 4","attributes":[]},{"group_id":44,"group_name":"Schlafzimmer 5","group_name_de":"Schlafzimmer 5","group_name_en":"Sleeping Room 5","group_name_es":"Dormitorio 5","attributes":[]},{"group_id":45,"group_name":"Schlafzimmer 6","group_name_de":"Schlafzimmer 6","group_name_en":"Sleeping Room 6","group_name_es":"Dormitorio 6","attributes":[]},{"group_id":46,"group_name":"Schlafzimmer 7","group_name_de":"Schlafzimmer 7","group_name_en":"Sleeping Room 7","group_name_es":"Dormitorio 7","attributes":[]},{"group_id":47,"group_name":"Schlafzimmer 8","group_name_de":"Schlafzimmer 8","group_name_en":"Sleeping Room 8","group_name_es":"Dormitorio 8","attributes":[]},{"group_id":48,"group_name":"Schlafzimmer 9","group_name_de":"Schlafzimmer 9","group_name_en":"Sleeping Room 9","group_name_es":"Dormitorio 9","attributes":[]},{"group_id":49,"group_name":"Schlafzimmer 10","group_name_de":"Schlafzimmer 10","group_name_en":"Sleeping Room 10","group_name_es":"Dormitorio 10","attributes":[]},{"group_id":50,"group_name":"Wohnbereich 1","group_name_de":"Wohnbereich 1","group_name_en":"Living Room 1","group_name_es":"Sal\u00f3n 1","attributes":[]},{"group_id":51,"group_name":"Wohnbereich 2","group_name_de":"Wohnbereich 2","group_name_en":"Living Room 2","group_name_es":"Sal\u00f3n 2","attributes":[]},{"group_id":52,"group_name":"Wohnbereich 3","group_name_de":"Wohnbereich 3","group_name_en":"Living Room 3","group_name_es":"Sal\u00f3n 3","attributes":[]},{"group_id":53,"group_name":"Wohnbereich 4","group_name_de":"Wohnbereich 4","group_name_en":"Living Room 4","group_name_es":"Sal\u00f3n 4","attributes":[]},{"group_id":54,"group_name":"Wohnbereich 5","group_name_de":"Wohnbereich 5","group_name_en":"Living Room 5","group_name_es":"Sal\u00f3n 5","attributes":[]},{"group_id":55,"group_name":"Wohnbereich 6","group_name_de":"Wohnbereich 6","group_name_en":"Living Room 6","group_name_es":"Sal\u00f3n 6","attributes":[]},{"group_id":56,"group_name":"Wohnbereich 7","group_name_de":"Wohnbereich 7","group_name_en":"Living Room 7","group_name_es":"Sal\u00f3n 7","attributes":[]},{"group_id":57,"group_name":"Wohnbereich 8","group_name_de":"Wohnbereich 8","group_name_en":"Living Room 8","group_name_es":"Sal\u00f3n 8","attributes":[]},{"group_id":58,"group_name":"Wohnbereich 9","group_name_de":"Wohnbereich 9","group_name_en":"Living Room 9","group_name_es":"Sal\u00f3n 9","attributes":[]},{"group_id":59,"group_name":"Wohnbereich 10","group_name_de":"Wohnbereich 10","group_name_en":"Living Room 10","group_name_es":"Sal\u00f3n 10","attributes":[]}],
						feratelGuestCard: 0
                    },
					methods: {
						init() {
							if (this.url_return == 1 && this.url_error == 0) {
								this.ccCheckInterval = window.setInterval(function() {
									var goahed = false;
									for(var i = 0; i < AppInPage.creditcards.length; i++) {
										if (AppInPage.creditcards[i].id == AppInPage.url_ccid && AppInPage.creditcards[i].verified_done == null) {
											goahed = true;
										}
									}

									if(!goahed && AppInPage.ccCheckInterval != null) {
										window.clearInterval(AppInPage.ccCheckInterval);										
									} 
									else 
									{
										AppInPage.loadCCData();
									}

								}, 3000);
							}

							axios.post(this.getServiceUrl("initPage"), { })
								.then(function (response) { 
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
										AppInPage.additionalFields = d.data.additionalFields;

                                        if (AppInPage.showPaymentsPA) {
                                            AppInPage.payautomaticInit();
                                        }
									}
									
								})
								.catch(function (error) {
									console.log(error);
								}); 
						},

                        payautomaticInit() {

                            axios.post(this.getServiceUrl("Payautomatic.Init"), { })
                                .then(function (response) {
                                    // get body data
                                    var d = response.data.data;

                                    d = d.map((p) => {
                                        return {
                                            ...p,
                                            isLoadingPaymentLink: false
                                        };
                                    });

                                    // anzahlung ausblenden restzahlung wenn überfällig und wenn az nicht bezahlt, wenn amount == null oder error

                                    const overdueRestPayment = d.filter((f) => f.ptype == 'R' && f.isOverDue);

                                    AppInPage.payautomatic.list = d.filter((e) => e.status != 'nothing_to_do' && !(e.ptype == 'A' && overdueRestPayment.length > 0 && e.doneDetails == null) && e.amount != null && e.amount != null);
                                })
                                .catch(function (error) {
                                    console.log(error);
                                });
                        },

                        payautomaticGetTitle(payautomatic) {
                            const title = this.lang == 'de' ? payautomatic.descr_de : payautomatic.descr_en;

                            if (title != null && title.length > 0) return title;

                            return payautomatic.descr;
                        },

                        payautomaticShowPaynowButton(pa) {

                            if(!pa.isPayableNow) {
                                return false;
                            }

                            if(pa.pwhat != '5' && (pa.status == 'waiting' || pa.status == 'error')) {
                                return true;
                            }

                            if(pa.id == this.url_payautomatic && this.url_success == "1") {
                                return false;
                            }
                            return false;
                        },

                        payautomaticPaynow(payautomatic) {

                            payautomatic.isLoadingPaymentLink = true;

                            axios.post(this.getServiceUrl("Payautomatic.Paynow"), { payautomatic: payautomatic.id })
                                .then(function (response) {
                                    // get body data
                                    var d = response.data;

                                    if (d.error == 0) {
                                        if (d.data.redirectUrl != null) {
                                            location.href = d.data.redirectUrl;
                                        }
                                    } else {
                                        payautomatic.isLoadingPaymentLink = false;
                                        AppInPage.payautomaticInit();
                                    }
                                })
                                .catch(function (error) {
                                    console.log(error);
                                });
                        },

						saveUserInput() {
							let nData = this.additionalFields.map(function(d) {
								return {
									id: d.id,
									currentValue: d.currentValue
								}
							});

							let payload = {
								additionalfields: nData,
								customContactFields: this.customContactFields
							};

							axios.post(this.getServiceUrl("additionalFields.save"), payload)
								.then(function (response) { 
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
										AppInPage.showDialog("modalSaved");
									}
									
								})
								.catch(function (error) {
									console.log(error);
								}); 
						},
						loadCCData() {
							axios.post(this.getServiceUrl("loadCCData"), { })
							.then(function (response) { 
								// get body data
								var d = response.data;
								
								if (d.error == 0) {
									AppInPage.creditcards = d.data;
									var allVerified = true;

									for(var i = 0; i < AppInPage.creditcards.length; i++) {
										if (AppInPage.creditcards[i].verified_done == null) {
											allVerified = false;
											break;											
										}
									}

									AppInPage.allCardsVerified = allVerified;
								}
								
							})
							.catch(function (error) {
								console.log(error);
							}); 
						},
						verifyCreditcard(ccid) {
							this.showErrors.verify = false;

							this.pageIsLoading = true;

							axios.post(this.getServiceUrl("verifyCreditcard"), { ccid: ccid })
							.then(function (response) { 
								// get body data
								var d = response.data;
								
								if (d.error == 0) {
									if (d.status == "REDIRECT") {
										top.location.href = d.location;
									}
								} else {
									AppInPage.showErrors.verify = true;
									AppInPage.pageIsLoading = false;
								}	
							})
							.catch(function (error) {
								console.log(error);
							}); 
						},
						getServiceUrl(cmd) {
                            return "bookinginfo-services.php?booking_id=" + this.booking_id + "&pin=" + this.pin + "&cmd=" + cmd + "&isFromHomepage=" + this.isFromHomepage + "&lang=" + this.lang;
                        },
                        getServiceUrlChangeBackend(cmd) {
                            return "/changeBackend/public/api/" + cmd + "?lang=" + this.lang;
                        },
						showDialog(dialogId) {
							$("#" + dialogId).modal('show');
						},
						addCard() {
							this.showErrors.newCardFillAllFields = false;
							this.newCardLoading = true;

							axios.post(this.getServiceUrl("addCard"), this.newCreditcard)
							.then(function (response) {
								AppInPage.newCardLoading = false; 
								// get body data
								var d = response.data;
								
								if (d.error == 0) {
									AppInPage.cancelAddCard();
									AppInPage.loadCCData();
									AppInPage.verifyCreditcard(d.data);
								} else {
									if(d.errcode == 8) {
										AppInPage.showErrors.newCardFillAllFields = true;
									}
								}	
							})
							.catch(function (error) {
								console.log(error);
							}); 
						},
						cancelAddCard() {
							this.newCreditcard = {
								name: "",
								number: "",
								validMonth: "",
								validYear: "",
								cvc: "",
								brand:null
							};
							$("#modalCreditcardVerify").modal('hide');
						},
						checkNumber() {
							this.newCreditcard.brand = this.getCardType(this.newCreditcard.number);
						},
						getCardType(number) {

							var cards = {
								visa: /^4[0-9]{12}(?:[0-9]{3})?$/,
								mastercard: /^5[1-5][0-9]{14}$/,
								amex: /^3[47][0-9]{13}$/,
								diners: /^3(?:0[0-5]|[68][0-9])[0-9]{11}$/,
								discover: /^6(?:011|5[0-9]{2})[0-9]{12}$/,
								jcb: /^(?:2131|1800|35\d{3})\d{11}$/
							};
							for (var card in cards) {
								if (cards[card].test(number)) {
									return card;
								}
							}

							return null;
						},
						changeLang(l) {
							this.lang = l;
                            console.log(location.href.split("?")[0]);
							window.location.href = (location.href.split("?")[0]).replace("#", "") + "?lang=" + this.lang;
						},

						selectCovidTestFiles(evt) {
							var dateien = evt.target.files; // FileList objekt
							
							this.covidTestFiles.currCount = dateien.length;
							this.covidTestFiles.countDone = 0;
							
							this.covidTestFiles.uploadinProgress = true;
							for(var i = 0; i < dateien.length; i++) {
								
								// erste Datei auswählen (wichtig, weil IMMER ein FileList Objekt generiert wird)
								var file = dateien[i];

								// Ein Objekt um Dateien einzulesen
								var reader = new FileReader();

								reader.onload = (function(theFile) {
									return function(e) {

										AppInPage.covidTestFiles.countDone++;

										var fileDataBase64 = e.target.result.split(",")[1];
										
										var payload = {
											mime_type: theFile.type, 
											data: fileDataBase64,
											filename: theFile.name,
											filesize: theFile.size
										}
										
										AppInPage.uploadCovidTestFiles(payload);

									};
								})(file);
								
								if (file) {
									// Die Datei einlesen und in eine Data-URL konvertieren
									reader.readAsDataURL(file);
								} else {
									AppInPage.covidTestFiles.countDone++; //fallback
								}
							}
						},

						uploadCovidTestFiles(data) {

							axios.post(this.getServiceUrl("COVIDTest.addFile"), data)
								.then(function (response) {
								
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
									
									}

									if(AppInPage.covidTestFiles.countDone >= AppInPage.covidTestFiles.currCount) {
										AppInPage.covidTestFiles.uploadinProgress = false;
										AppInPage.getCovidTestFiles();
									}

								})
								.catch(function (error) {
									console.log(error);
								}); 

							
						},

						getCovidTestFiles() {
							
							axios.post(this.getServiceUrl("COVIDTest.getFiles"), {})
								.then(function (response) {
								
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
										AppInPage.covidTestFiles.list = d.data;
									}
								})
								.catch(function (error) {
									console.log(error);
								}); 
						},

						downloadCovidTestFiles(id) {
							
							var url = this.getServiceUrl("COVIDTest.downloadFile") + "&covidtestfile=" + id;

							location.href = url;
						},



						selectPassportFiles(evt) {
							var dateien = evt.target.files; // FileList objekt
							
							this.passportFiles.currCount = dateien.length;
							this.passportFiles.countDone = 0;
							
							this.passportFiles.uploadinProgress = true;
							for(var i = 0; i < dateien.length; i++) {
								
								// erste Datei auswählen (wichtig, weil IMMER ein FileList Objekt generiert wird)
								var file = dateien[i];

								// Ein Objekt um Dateien einzulesen
								var reader = new FileReader();

								reader.onload = (function(theFile) {
									return function(e) {

										AppInPage.passportFiles.countDone++;

										var fileDataBase64 = e.target.result.split(",")[1];
										
										var payload = {
											mime_type: theFile.type, 
											data: fileDataBase64,
											filename: theFile.name,
											filesize: theFile.size
										}
										
										AppInPage.uploadPassportFiles(payload);

									};
								})(file);
								
								if (file) {
									// Die Datei einlesen und in eine Data-URL konvertieren
									reader.readAsDataURL(file);
								} else {
									AppInPage.passportFiles.countDone++; //fallback
								}
							}
						},

						uploadPassportFiles(data) {

							axios.post(this.getServiceUrl("Passports.addFile"), data)
								.then(function (response) {
								
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
									
									}

									if(AppInPage.passportFiles.countDone >= AppInPage.passportFiles.currCount) {
										AppInPage.passportFiles.uploadinProgress = false;
										AppInPage.getPassportFiles();
									}

								})
								.catch(function (error) {
									console.log(error);
								}); 
						},

						getPassportFiles() {
							
							axios.post(this.getServiceUrl("Passports.getFiles"), {})
								.then(function (response) {
								
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
										AppInPage.passportFiles.list = d.data;
									}
								})
								.catch(function (error) {
									console.log(error);
								}); 
						},

						downloadPassportFiles(id) {
							
							var url = this.getServiceUrl("Passports.downloadFile") + "&file=" + id;

							location.href = url;
						},


						getFeratelGuestlist() {
							axios.post(this.getServiceUrl("Feratel.getCountries"), { })
								.then(function (response) { 
									// get body data
									var d = response.data;
									
									if (d.error == 0) {
										AppInPage.feratelCountries = d.data;
									}
									
								})
								.catch(function (error) {
									console.log(error);
								}); 
							
							axios.post(this.getServiceUrl("Feratel.getGuestlist"), { })
							.then(function (response) { 
								// get body data
								var d = response.data;
								
								if (d.error == 0) {
									AppInPage.feratelGuestlist = d.data;
								}
								
							})
							.catch(function (error) {
								console.log(error);
							}); 
						},
						
						saveFeratelGuestlist() {
							axios.post(this.getServiceUrl("Feratel.saveGuestlist"), { people: this.feratelGuestlist.map(e => { 
								e.gaestekarte = this.feratelGuestCard
								return e;
							}) })
							.then(function (response) { 
								// get body data
								var d = response.data;
								
								if (d.error == 0) {
									AppInPage.showDialog("modalSaved");
								} else{
									AppInPage.showDialog("modalCheckFields");								
								}
								
							})
							.catch(function (error) {
								console.log(error);
							}); 
						},

						saveBonuscards() {
							axios.post(this.getServiceUrl("Bonsucards.save"), { cfg: $("#bonuscard_cfg").val(), variant: $('input[name="radioBonuscard"]:checked').val() })
							.then(function (response) { 
								// get body data
								var d = response.data;
								
								if (d.error == 0) {
									AppInPage.showDialog("modalSaved");
								}								
							})
							.catch(function (error) {
								console.log(error);
							}); 
						},

						paymentCheckCCIcon(card) {
							if(this.paymentCCIcons.indexOf(card) != -1) {
								return true;
							}
							return false;
						},

                        formatAmount(amount) {
                            return new Intl.NumberFormat('de-AT', { style: 'currency', currency: 'EUR' }).format(
                                amount,
                            )
                        },

					}
				});

				AppInPage.init();

                if (AppInPage.showPayment) {
                    AppInPage.loadCCData();
                }

                if (AppInPage.showCovid) {
                    AppInPage.getCovidTestFiles();
                }

				if (AppInPage.showPassport) {
                    AppInPage.getPassportFiles();
                }

				if (AppInPage.loadFeratelData) {
					AppInPage.getFeratelGuestlist();
				}
				
			});	
		</script>

    	
</body></html>