1jQuery(document).ready(function($){ 2 let open = ""; 3 let close = ""; 4 let ameroData = []; 5 let language = "1"; 6 if(window.location.href.indexOf("/de/") != -1){ 7 language = "2"; 8 } else if(window.location.href.indexOf("/en/") != -1){ 9 language = "3"; 10 } 11 12 //Initial data get. 13 $.post(ajax_obj.ajax_url, { 14 _ajax_nonce: ajax_obj.nonce, 15 action: "get_token" 16 }, function(response){ 17 if(response != "data present"){ 18 response = JSON.parse(response); 19 let token = response['idToken']; 20 $.post(ajax_obj.ajax_url, { 21 _ajax_nonce: ajax_obj.nonce, 22 action: "get_events", 23 token: token, 24 }, function(response){ 25 ameroData = JSON.parse(response); 26 set_opening(ameroData); 27 if($('#program').length){ 28 let date = dayjs(Date.now()).format('DD-MM-YYYY'); 29 buildProgram(date, ameroData); 30 } 31 }) 32 } else { 33 console.log('data present'); 34 } 35 } 36 ) 37 38 if($('#program').length) { 39 $.post(ajax_obj.ajax_url, { 40 _ajax_nonce: ajax_obj.nonce, 41 action: "get_data", 42 }, function (response) { 43 if(response === 'no data'){ 44 45 } else { 46 let data = JSON.parse(response); 47 let date = dayjs(Date.now()).format('DD-MM-YYYY'); 48 buildProgram(date, data); 49 } 50 }) 51 } 52 53 dayjs.extend(window.dayjs_plugin_customParseFormat); 54 dayjs.extend(window.dayjs_plugin_isBetween); 55 //Send opening hours to php via ajax and store in SESSION variable. 56 function set_opening(data){ 57 let date = dayjs(Date.now()).format('DD-MM-YYYY'); 58 let success = false; 59 let display = "Lukket i dag"; 60 switch(language){ 61 case "1": 62 display = 'Lukket i dag'; 63 break; 64 case "2": 65 display = "Das GeoCenter ist geschlossen."; 66 break; 67 case "3": 68 display = "closed today"; 69 } 70 $.each(data, function(index, value){ 71 if(value['eventGroup']['type'] === 'entranceEvents'){ 72 let startDate = value['start']; 73 startDate = startDate.slice(0, 10); 74 if(startDate === date) { 75 open = value['start'].slice(11, 13); 76 close = value['end'].slice(11, 13); 77 open = parseInt(open) + 2; 78 close = parseInt(close) + 2; 79 switch(language){ 80 case "1": 81 display = 'à bent i dag ' + open + '-' + close; 82 break; 83 case "2": 84 display = 'Heute geöffnet ' + open + '-' + close; 85 break; 86 case "3": 87 display = 'Open today ' + open + '-' + close; 88 } 89 } 90 } 91 }) 92 $('.yellowNavigation .opening p').html(display); 93 $.post(ajax_obj.ajax_url, { 94 _ajax_none: ajax_obj.nonce, 95 action: 'set_opening', 96 opening: display, 97 }, function(response){ 98 }) 99 } 100 101 //Date picker functionality 102 let today = dayjs(Date.now()).format('YYYY-MM-DD').toString(); 103 $('.yellowAmeroDatePicker input').attr({"min" : today}); 104 $('.yellowAmeroDatePicker input').attr({"value" : today}); 105 $('.yellowAmeroDatePicker input').on('change', function(){ 106 let date = $(this).val(); 107 date = dayjs(date).format('DD-MM-YYYY'); 108 $.post(ajax_obj.ajax_url, { 109 _ajax_none: ajax_obj.nonce, 110 action: 'get_data', 111 }, function(response){ 112 if(response === 'no data'){ 113 } else { 114 let data = JSON.parse(response); 115 buildProgram(date, data); 116 } 117 }) 118 }) 119 120 //Function to build program after receiving data 121 function buildProgram(selectedDate, ameroData) { 122 console.log(selectedDate); 123 $.post(ajax_obj.ajax_url, { 124 _ajax_nonce: ajax_obj.nonce, 125 action: "get_wp_events" 126 }, function(response){ 127 console.log(response); 128 let match = false;
129 let display = "<h2>Event på dagen:</h2>"; 130 response.forEach(function(element){ 131 if(element.data.date_order === selectedDate){ 132 match = true; 133 display += "<p>" + element.data.time + "<br><b>" + element.title + "</b></p>" + 134 "<p>" + element.data.program_text + "</p>"; 135 } 136 }) 137 display += "<p>Se alle vores events <a href='/events-og-foredrag'>her</a></p>"; 138 $('#highlight').html(display); 139 if(!match){ 140 $('#highlight').html(''); 141 } 142 }) 143 let programData = []; 144 let openHours = []; 145 let events = []; 146 let climbing = []; 147 let cinema = []; 148 let movie = []; 149 let data = ""; 150 $.each(ameroData, function(index, value){ 151 let date = value['start']; 152 date = date.slice(0, 10); 153 if(date === selectedDate){ 154 programData.push(value); 155 } 156 }) 157 if(programData.length){ 158 let timeAdd = 2 159 let dstCheck = dayjs(selectedDate, "DD-MM-YYYY").isBetween("2025-10-25", "2026-03-29"); 160 if(dstCheck){ 161 timeAdd = 2; 162 } 163 $.each(programData, function(index, value){ 164 if(value['eventGroup']['type'] === 'entranceEvents'){ 165 let openDateStart = dayjs(value['start'], 'DD-MM-YYYY HH:mm:ss', true).add(timeAdd, 'hours').format('DD-MM-YYYY HH:mm:ss').toString(); 166 let openDateEnd = dayjs(value['end'], 'DD-MM-YYYY HH:mm:ss', true).add(timeAdd, 'hours').format('DD-MM-YYYY HH:mm:ss').toString() 167 openHours.push(openDateStart.slice(11, 16)); 168 openHours.push(openDateEnd.slice(11, 16)); 169 } 170 let varied = value['eventGroup']['name'].slice(0, 6) 171 if(varied === 'Timmes' || 172 varied === 'Fossil' || 173 varied === 'Mounta'){ 174 events.push(value) 175 } 176 let climb = value['eventGroup']['name'].slice(0, 6) 177 if(climb === 'Trækla'){ 178 climbing.push(value); 179 } 180 181 let cinemaTest = value['eventGroup']['name'].slice(0, 7) 182 if(cinemaTest === "Biograf"){ 183 cinema.push(value); 184 } 185 }) 186 187 let finalData = []; 188 $.each(events, function(index, value){ 189 let date = dayjs(value['start'], 'DD-MM-YYYY HH:mm:ss', true).add(timeAdd, 'hours').format('DD-MM-YYYY HH:mm:ss').toString(); 190 let start = date.slice(11, 16); 191 let name = value['eventGroup']['name']; 192 let arr = [start, name] 193 finalData.push(arr); 194 }) 195 if(climbing.length){ 196 let climbDate = dayjs(climbing[0]['start'], 'DD-MM-YYYY HH:mm:ss', true).add(timeAdd, 'hours').format('DD-MM-YYYY HH:mm:ss').toString(); 197 let climbStart = climbDate.slice(11, 16); 198 let climbName = climbing[0]['eventGroup']['name']; 199 let climbArr = [climbStart, climbName]; 200 finalData.push(climbArr); 201 } 202 if(cinema.length){ 203 let cinemaDate = dayjs(cinema[0]['start'], 'DD-MM-YYYY HH:mm:ss', true).add(timeAdd, 'hours').format('DD-MM-YYYY HH:mm:ss').toString(); 204 let cinemaStart = cinemaDate.slice(11, 16); 205 let cinemaName = cinema[0]['eventGroup']['name']; 206 let cinemaArr = [cinemaStart, cinemaName]; 207 208 finalData.push(cinemaArr); 209 } 210 211 console.log(finalData); 212 213 //Get date in right format 214 let displayDate = ""; 215 finalData.sort(); 216 switch(language){ 217 case "1": 218 displayDate = dayjs(selectedDate, 'DD-MM-YYYY').locale('da').format('dddd D. MMMM').toString(); 219 data = "<div class='programHeading'><p>
219" + displayDate + " " + openHours[0] + "-" + openHours[1] + "</p><h2>Dagens program</h2></div>" + 220 "</div><div class='programData'>" + 221 "<p class='open'>Kl. " + openHours[0] + "<br><b>UDSTILLINGERNE à BNER</b><br>" + 222 "Kom med 70 mio. Ã¥r tilbage i tiden. Bliv klogere pÃ¥ Danmarks skabelse, rav, flint, Vættelys og meget mere..." + 223 "</p>" + 224 "<div class='programItems'>"; 225 break; 226 case "2": 227 displayDate = dayjs(selectedDate, 'DD-MM-YYYY').locale('de').format('dddd D. MMMM').toString(); 228 data = "<div class='programHeading'><p>" + displayDate + " " + openHours[0] + "-" + openHours[1] + "</p><h2>Das heutige programm</h2></div>" + 229 "<div class='programData'>" + 230 "<p class='open'>Kl. " + openHours[0] + "<br><b>DIE AUSSTELLUNGEN ERÃFFNEN</b><br>" + 231 "Begleiten Sie uns auf eine Zeitreise 70 Millionen Jahre zurück. Erfahren Sie mehr über die Schöpfung Dänemarks, Bernstein, Feuerstein, Donnerkeile und vieles mehr ..." + 232 "</p>" + 233 "<div class='programItems'>"; 234 break; 235 case "3": 236 displayDate = dayjs(selectedDate, 'DD-MM-YYYY').format('dddd MMMM D').toString(); 237 data = "<div class='programHeading'><p>" + displayDate + " " + openHours[0] + "-" + openHours[1] + "</p><h2>Today's program</h2></div>" + 238 "<div class='programData'>" + 239 "<p class='open'>Kl. " + openHours[0] + "<br><b>THE EXHIBITIONS OPEN</b><br>" + 240 "Travel 70 million years back in time. Learn more about Denmark's creation, amber, flint, belemnite fossils and much more..." + 241 "</p>" + 242 "<div class='programItems'>"; 243 break; 244 } 245 $.each(finalData, function(index, value){ 246 let item = "<p>" + value[0]; 247 switch(language){ 248 case "1": 249 switch (value[1]){ 250 case "Biograf 7. april - 13 maj (lavsæson)": 251 case "Biograf 18.-22. maj (lavsæson)": 252 case "Biograf 26. maj - 26. juni (lavsæson)": 253 case "Biograf 29. august-9. oktober (lavsæson)": 254 item += "<br><b>3D biografen Ã¥bner</b><br>Se en række fantastiske 3D film. Du bliver klogere, du bliver underholdt â og mÃ¥ske lidt forskrækket.<br>" + 255 "Program:<br>11.10: Blue Whales<br>12.00: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters<br>16.00: T. rex</p>"; 256 break; 257 case "Biograf: Flight of the Butterflies": 258 case "Biograf: T. rex": 259 case "Biograf: Blue Whales": 260 case "Biograf: Blue Whales (højsæson 1)": 261 case "Biograf: Blue Whales (efterÃ¥rsferien)": 262 let movieTitle = value[1].slice(9); 263 item += "<br><b>3D biografen Ã¥bner</b><br>Se en række fantastiske 3D film. Du bliver klogere, du bliver underholdt â og mÃ¥ske lidt forskrækket.<br>" + 264 "I dag viser vi " + movieTitle + "</p>"; 265 break; 266 case "Biograf 28. marts - 6. april (pÃ¥ske)": 267 case "Biograf 14. - 17. maj (kr himmelfart)": 268 case "Biograf 23-25 maj (pinse)": 269 case "Biograf 10-28 august (højsæson 2)": 270 item += "<br><b>3D biografen Ã¥bner</b><br>Se en række fantastiske 3D film. Du bliver klogere, du bliver underholdt â og mÃ¥ske lidt forskrækket.<br>" + 271 "Program:<br>10:10: Flight of the Butterflies<br>11:00: Blue Whales<br>12.00: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters<br>16.00: T. rex</p>"; 272 break; 273 case "Biograf 19-30 oktober (lavsæson)": 274 item += "<br><b>3D biografen Ã¥bner</b><br>Se en række fantastiske 3D film. Du bliver klogere, du bliver underholdt â og mÃ¥ske lidt forskrækket.<br>" + 275 "Program:<br>12.10: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters</p>"; 276 break; 277 case "Fossiljagt ny": 278 item += "<br><b>Guidet fossiljagt pÃ¥ stranden</b><br>Tag ud i naturen med vores guider og find 70 mio. Ã¥r gamle fossiler langs klintestranden.</p>"; 279 break; 280 case "Timmesøbjerg ny": 281 item += "<br><b>Udflugt til Timmesøbjerg</b><br>I den dramatiske Klinteskov gemmer der sig en âskjult skatâ. Tag med guiden pÃ¥ opdagelse til Danmarks ældste borganlæg.</p>"; 282 break; 283 case "Mountainbike ny": 284 item += "<br><b>Guidet mountainbike tur</b><br>Tag med guide pÃ¥ tur langs det fantastiske mountainbike-spor i Danmarks vildeste natur...</p>"; 285 break; 286 case "Træklatring og svævebane ny": 287 item += "<br><b>Klatrebane og svævebane Ã¥bner</b><br>
287Kravl med op i toppen af træerne i klinteskoven. Vores instruktører guider dig sikkert op og ned...</p>"; 288 break; 289 } 290 break; 291 case "2": 292 switch (value[1]){ 293 case "Biograf 10.-27. juni": 294 case "Biograf 30. august - 10. oktober": 295 item += "<br><b>Das 3D-Kino eröffnet</b><br>Sehen Sie sich eine Vielzahl fantastischer 3D-Filme an. Sie werden klüger, Sie werden unterhalten â und vielleicht auch ein wenig erschrocken.<br>" + 296 "Programm:<br>11.10: Blue Whales<br>12.00: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters<br>16.00: T. rex</p>"; 297 break; 298 case "Biograf: Flight of the Butterflies": 299 case "Biograf: T. rex": 300 case "Biograf: Blue Whales": 301 case "Biograf: Blue Whales (højsæson 1)": 302 case "Biograf: Blue Whales (efterÃ¥rsferien)": 303 let movieTitle = value[1].slice(9); 304 item += "<br><b>Das 3D-Kino eröffnet</b><br>Sehen Sie sich eine Vielzahl fantastischer 3D-Filme an. Sie werden klüger, Sie werden unterhalten â und vielleicht auch ein wenig erschrocken.<br>" + 305 "Heute zeigen wir " + movieTitle + "</p>"; 306 break; 307 case "Biograf 28. marts - 6. april (pÃ¥ske)": 308 case "Biograf 14. - 17. maj (kr himmelfart)": 309 case "Biograf 23-25 maj (pinse)": 310 case "Biograf 10-28 august (højsæson 2)": 311 item += "<br><b>Das 3D-Kino eröffnet</b><br>Sehen Sie sich eine Vielzahl fantastischer 3D-Filme an. Sie werden klüger, Sie werden unterhalten â und vielleicht auch ein wenig erschrocken.<br>" + 312 "Programm:<br>10:10: Flight of the Butterflies<br>11:00: Blue Whales<br>12.00: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters<br>16.00: T. rex</p>"; 313 break; 314 case "Biograf 19-30 oktober (lavsæson)": 315 item += "<br><b>Das 3D-Kino eröffnet</b><br>Sehen Sie sich eine Vielzahl fantastischer 3D-Filme an. Sie werden klüger, Sie werden unterhalten â und vielleicht auch ein wenig erschrocken.<br>" + 316 "Programm:<br>12.10: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters</p>"; 317 break; 318 case "Fossiljagt ny": 319 item += "<br><b>Geführte Fossiliensuche am Strand</b><br>Begleiten Sie unsere Guides auf einer Tour in die Natur und finden Sie 70 Millionen Jahre alte Fossilien entlang des felsigen Strandes.</p>"; 320 break; 321 case "Timmesøbjerg ny": 322 item += "<br><b>Ausflug nach Timmesøbjerg</b><br>Im dramatischen Klinteskov gibt es einen âverborgenen Schatzâ. Nehmen Sie den Reiseführer mit auf eine Entdeckungsreise zu Dänemarks ältester Burganlage.</p>"; 323 break; 324 case "Mountainbike ny": 325 item += "<br><b>Geführte Mountainbiketour</b><br>Begleiten Sie unsere Guides auf einer Radtour entlang der fantastischen Mountainbike-Strecke in Dänemarks wildester Natur...</p>"; 326 break; 327 case "Træklatring og svævebane ny": 328 item += "<br><b>Klettersteig und Seilbahn geöffnet</b><br>Begleiten Sie unsere Guides auf einem Ausflug in die Baumwipfel. Probieren Sie unseren Kletterkurs und unsere Seilbahn.</p>"; 329 break; 330 } 331 break; 332 case "3": 333 switch (value[1]){ 334 case "Biograf 7. april - 13 maj (lavsæson)": 335 case "Biograf 18.-22. maj (lavsæson)": 336 case "Biograf 26. maj - 26. juni (lavsæson)": 337 case "Biograf 29. august-9. oktober (lavsæson)": 338 item += "<br><b>The 3D cinema opens</b><br>Watch a variety of fantastic 3D movies. You will become wiser, you will be entertained - and maybe a little scared.<br>" + 339 "Program:<br>11.10: Blue Whales<br>12.00: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters<br>16.00: T. rex</p>"; 340 break; 341 case "Biograf: Flight of the Butterflies": 342 case "Biograf: T. rex": 343 case "Biograf: Blue Whales": 344 case "Biograf: Blue Whales (højsæson 1)": 345 case "Biograf: Blue Whales (efterÃ¥rsferien)": 346 let movieTitle = value[1].slice(9); 347 item += "<br><b>The 3D cinema opens</b><br>Watch a variety of fantastic 3D movies. You will become wiser, you will be entertained - and maybe a little scared.<br>" + 348 "Today we are showing " + movieTitle + "</p>"; 349 break; 350 case "Biograf 28. marts - 6. april (pÃ¥ske)": 351 case "Biograf 14. - 17. maj (kr himmelfart)": 352 case "Biograf 23-25 maj (pinse)": 353 case "Biograf 10-28 august (højsæson 2)": 354 item += "<br><b>The 3D cinema opens</b><br>Watch a variety of fantastic 3D movies. You will become wiser, you will be entertained - and maybe a little scared.<br>" + 355 "Program:<br>10:10: Flight of the Butterflies<br>11:00: Blue Whales<br>12.00: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters<br>16.00: T. rex</p>"; 356 break; 357 case "Biograf 19-30 oktober (lavsæson)": 358 item += "<br><b>The 3D cinema opens</b><br>Watch a variety of fantastic 3D movies. You will become wiser, you will be entertained - and maybe a little scared.<br>" + 359 "Program:<br>12.10: T. rex<br>13.00: Flight of the Butterflies<br>14.00: Blue Whales<br>15.00: Sea Monsters</p>"; 360 break; 361 case "Fossiljagt ny": 362 item += "<br><b>Guided fossil hunt on the beach</b><br>Experience the wild nature with our guides and find 70 million years old fossils along the rocky beach.</p>"; 363 break; 364 case "Timmesøbjerg ny": 365 item += "<br><b>Excursion to Timmesøbjerg</b><br>In the dramatic Klinteskov there is a 'hidden treasure'. Join our guide on a discovery trip to Denmark's oldest castle complex.</p>"; 366 break; 367 case "Mountainbike ny": 368 item += "<br><b>Guided mountain bike tour</b><br>Take a tour with a guide along the fantastic mountain bike track in Denmark's wildest nature...</p>"; 369 break; 370 case "Træklatring og svævebane ny": 371 item += "<br><b>Climbing ropeway and zipline</b><br>Climb up to the top of the trees in the forest âKlinteskovenâ Our instructors will guide you safely up and down...</p>"; 372 break; 373 } 374 break; 375 } 376 data += item; 377 }) 378 switch(language){ 379 case "1": 380 data += "<p>kl. " + openHours[1] + "<br>Centeret lukker. Tak for i dag!</p>"; 381 break; 382 case "2": 383 data += "<p>kl. " + openHours[1] + "<br>Das GeoCenter schlieÃt. Danke für heute!</p>"; 384 break; 385 case "3": 386 data += "<p>kl. " + openHours[1] + "<br>The center closes. Thanks for today!</p>"; 387 } 388 data += "</div></div>"; 389 } else { 390 switch(language){ 391 case "1": 392 data = "<div class='programData'><p>Centeret har lukket.</p></div>"; 393 break; 394 case "2": 395 data = "<div class='programData'><p>Das GeoCenter ist geschlossen.</p></div>"; 396 break; 397 case "3": 398 data = "<div class='programData'><p>The center is closed.</p></div>"; 399 break; 400 } 401 } 402 403 if(selectedDate === "28-03-2026" || selectedDate === "29-03-2026") { 404 data = "<div className='programData'><p>Gratis adgang hele weekenden</p></div>"; 405 } 406 407 408 $('#program').html(data); 409 } 410})
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.