PageSourceSearch

https://www.bobbejaanland.be/etc.clientlibs/parques-reunidos-catal…-5048daf5243f3be110b6675e77ad55a2-lc.min.js

js bobbejaanland.be collected 2026-10-02 07:08:29 UTC 7,065 bytes, 209 lines download raw bytes

1var dataCart = { date: "", cartItems: [], quantityTickets: 0 };
2var productTicketing;
3var maxAmountQuantity = $("input.maxQuantityTickets").val() != "" ? parseInt($("input.maxQuantityTickets").val()) : 999
4
5if(sessionStorage.getItem('cday')){
6	sessionStorage.removeItem('cday');
7 }
8$(document).ready(function () {
9	//separator line
10	showHideSeparator();
11
12	if(sessionStorage.getItem('cday')){
13		sessionStorage.removeItem('cday');
14	 }
15
16
17});
18function showHideSeparator() {
19	var separator = $(".visitors-separator");
20	if (separator.length > 1) {
21		separator.each(function (i) {
22			if (i != separator.length - 1) {
23				$(this).show();
24			}
25		});
26	} else {
27		separator.hide();
28	}
29}
30function callCatalog() {
31    if($.cookie("idCartWidget") != null && $.cookie("idCartWidget") != undefined){
32        jQuery.ajax({
33    		url: $.cookie("urlAccessToken") + "/catalog/product/" + $.cookie("idCartWidget") + "/parent/TICKETING",
34    		method: 'GET',
35    		async: false,
36    		headers: {
37    			"Content-Type": "application/json",
38    			"X-Flow-ID": $.cookie("idCartWidget"),
39    			"Authorization": "Bearer " + $.cookie("portal")
40    		},
41
42    		success: function (data) {
43    			productTicketing  =  data;
44    			addVisitorPage(data);
45    			// Get cookies visitors
46    			if ($.cookie("dataCart") != undefined) {
47    				dataCart = JSON.parse($.cookie("dataCart"));
48    				dataCart.cartItems.forEach(element => {
49    					var translationVisitor = element.tranlation.find(e => e.language == languageCalendar);
50    					updateVisitors(element.productId, element.quantity, translationVisitor)
51    				});
52    			} else
53    				dataCart = { date: "", cartItems: [], quantityTickets: 0 }; {
54    				disabledButtonContinue();
55    			}
56    		},
57    		error: function (XMLHttpRequest, textStatus, errorThrown) {
58    			console.log("Status: {}", textStatus);
59    			console.log("Error: {}", errorThrown);
60    		}
61    	});
62    }
63}
64function addVisitorPage(data) {
65	var codeParamFilter = $(".cf01_visitors .visitor-block");
66	$(data).each(function (j, dato) {
67		codeParamFilter.each(function (i) {
68			if ($(this).attr("data-code-param") == dato.codeParam) {
69				var trVisitor = dato.translations.find(e => e.language === languageCalendar);
70				var dataNameParamText = $(this).find(".visitor .title").attr("data-name-param");
71				$(this).find(".visitor .title").text(dataNameParamText);
72				$(this).attr("data-productid", dato.id)
73			}
74		});
75
76	})
77	$(".visitor-block .less").click(function () {
78		var quantity = $(this).parents(".visitor-block").find(".numTickets").text();
79		if (quantity > 0) {
80			//Hide Error
81			$("#error2025").hide();
82
83			quantity--;
84
85			// Upadte quantity		
86			dataCart.quantityTickets--;
87
88			// Update quantity
89			$(this).parents(".visitor-block").find(".numTickets").text(quantity);
90			dinamicVisitors();
91
92			//Upadate Cart
93			updateCartItem($(this).parents(".visitor-block").attr("data-productid"), $(this).parents(".visitor-block").find(".visitor .title").text(), quantity, $(this).parents(".visitor-block").find(".visitor .subtitle").html()
94			);
95
96		}
97		// Disabled button
98		if (quantity == 0) { $(this).addClass('disabled'); $(this).parents(".visitor-block").find(".tickets-value").addClass("disabled"); }
99	});
100	$(".visitor-block .plus").click(function () {
101		var totalTicketsQuantity = [];
102		var quantity = parseInt($(this).parents(".visitor-block").find(".numTickets").text());
103		if(maxQuantityTickets<=10 && maxQuantityTickets>0){
104		    //Batelli MIR limit based on dialog param
105			var quantityTotal;
106			$(".visitor-block").each(function () {
107				totalTicketsQuantity.push($(".visitor-block").find(".numTickets").text());
108			})
109			for(i=0;i<totalTicketsQuantity.length;i++){
110				quantityTotal = quantityTotal+totalTicketsQuantity[i];
111			}
112			quantityTotal = quantityTotal/100;
113			if (quantityTotal + 1 > maxQuantityTickets || dataCart.quantityTickets + 1 > maxQuantityTickets) {
114				$("#error2025").show();
115				return;
116			}
117			dataCart.quantityTickets++;
118			quantity++;
119			$(this).parents(".visitor-block").find(".numTickets").text(quantity);
120			dinamicVisitors();
121			$(this).parents(".visitor-block").find(".tickets-value").removeClass("disabled");
122
123			//Upadate Cart
124			updateCartItem($(this).parents(".visitor-block").attr("data-productid"), $(this).parents(".visitor-block").find(".visitor .title").text(), quantity, $(this).parents(".visitor-block").find(".visitor .subtitle").html()
125			);
126
127			// Enabled button
128			if (quantity > 0) $(this).parents(".visitor-block").find(".less").removeClass("disabled");
129		}
130
131		if(maxQuantityTickets==0 || maxQuantityTickets==null){
132			
133			// Update quantity
134
135			// Max quantiy by ticket
136			if (quantity + 1 > maxAmountQuantity || dataCart.quantityTickets + 1 > maxAmountQuantity) {
137				$("#error2025").show();
138				return;
139			}
140
141			// Upadte quantity		
142			dataCart.quantityTickets++;
143
144			quantity++;
145			$(this).parents(".visitor-block").find(".numTickets").text(quantity);
146			dinamicVisitors();
147			$(this).parents(".visitor-block").find(".tickets-value").removeClass("disabled");
148
149			//Upadate Cart
150			updateCartItem($(this).parents(".visitor-block").attr("data-productid"), $(this).parents(".visitor-block").find(".visitor .title").text(), quantity, $(this).parents(".visitor-block").find(".visitor .subtitle").html()
151			);
152
153			// Enabled button
154			if (quantity > 0) $(this).parents(".visitor-block").find(".less").removeClass("disabled");
155		}
156
157	});
158}
159function updateCartItem(idProduct, title, quantity, description) {
160
161	if ($(".cartTickets").find(`div[data-productid='${idProduct}']`).length > 0) {
162		if (quantity == 0) {
163			$(".cartTickets").find(`div[data-productid='${idProduct}']`).remove()
164		}
165		else {
166			$(".cartTickets").find(`div[data-productid='${idProduct}'] .ticketCount`).text(quantity)
167		}
168	} else {
169		$('.cartTickets ').removeClass('d-none');
170		$(".cartTickets").append(`<div class="cartTicket" data-productid="${idProduct}">
171			<div class="ticketText">${title} (<span class="ticketCount">${quantity}</span>)</div>
172			<div class="ticketDes">${description != undefined ? description : ""}</div>			
173		</div>`);
174	}
175
176	// Check status button continue
177	disabledButtonContinue();
178}
179
180$(document).on('click', '.cf05_controlbuttons .continue a.cmp-button', function () {
181
182	if (checkCookiesExpired()) {
183
184		if (!$(this).parent().parent().hasClass("disabled")) {
185
186			dataCart.cartItems = [];
187			dataCart.quantityTickets = 0;
188			$(`.cf01_visitors `).find(".visitor-block").each(function () {
189				if ($(this).find(".numTickets").text() > 0) {
190					dataCart.cartItems.push({
191						"productId": $(this).attr("data-productid"),
192						"title": $(this).find(".visitor .title").text(),
193						"quantity": $(this).find(".numTickets").text()
194					});
195
196					// Upadte quantity		
197					dataCart.quantityTickets = dataCart.quantityTickets + quantity;
198
199				}
200			});
201			// Save cookie
202			var date = new Date();
203			date.setMinutes(date.getMinutes() + 30)
204			$.cookie("dataCart", JSON.stringify(dataCart), { expires: date, path: removeLastDirectoryPart(window.location.pathname), secure: true })
205		}
206	} else {
207		return false;
208	}
209});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.