(function(l){function e(e){var t=e[0];var a=e[1];var r=e[2];var n,i,o=0,s=[];for(;o0||r.offsetHeight>0||r.getClientRects().length>0},setCookie:function e(t,a,r,n,i){var o=90;if(!r){r=new Date;r.setTime(r.getTime()+o*24*60*60*1e3)}var s={expires:r,path:"/"};if(n)s.domain=n;if(i)s.path=i;c.save(t,a,s)},getCookie:function e(t){if(!t)return false;return c.load(t)||false},getParameterByName:function e(t,a){if(typeof window==="undefined")return false;t=t.replace(/[[]/,"\\[").replace(/[/]]/,"\\]");t=a?t.toUpperCase():t;var r=new RegExp("[\\?&]"+t+"=([^&#]*)");var n=r.exec(a?window.location.search.toUpperCase():window.location.search);var i="";if(n&&n.length){i=decodeURIComponent(n[1].replace(/\+/g," ").replace(/%\s/g,"%25").replace(/%$/,"%25"))}return i||false},isSplitTest:function e(t,a,r){var n=false;var i=this.getParameterByName(t,false)||this.getCookie(t);if(l(a)==="object"){i=i||this.multiSplitTest(i,a);n=i}else{i=i||this.singleSplitTest(a);n=i==="show_alternative"}var o="variationTracking"+t;if(typeof window!=="undefined"&&!Object.prototype.hasOwnProperty.call(window,o)){window[o]=true;var s={step:"start",test_name:t,variant:i};u.test(s)}this.setCookie(t,i,r);return n},multiSplitTest:function e(t,a){var r=0;var n=Math.random()*100;Object.keys(a).forEach(function(e){if(!t&&n>=r&&n0&&arguments[0]!==undefined?arguments[0]:{};if(this.hasWindow()){var a={page_type:"landing"};if(t.agent&&typeof t.agent==="string"){a.agent=t.agent;if(!/(?:^| )agent=([^;]{3,6})/.test(document.cookie)){document.cookie="agent=".concat(t.agent)}}window.tracker.initialise({env:t.environment||"production"||"production",service:t.service||"seo",organisation:t.organisation||"Holiday Extras Limited",schemaVersions:t.schemaVersions||{},lb:t.lb||false});if(t.pageOptions)a=Object.assign({},a,t.pageOptions);window.tracker.page(t.eventType||"landing",a);window.tracker.inline("auto_capture",{name:"tech_platform",value:t.techPlatform||"ssg"});if(t.templateGroup)window.tracker.inline("auto_capture",{name:"template_group",value:t.templateGroup})}else console.log("No window, TRACKER NOT LOADED")},test:function e(t){if(!this.hasWindow()||!t)return;window.tracker.track("test",t)},inline:function e(t,a,r){if(!this.hasWindow())return;if(arguments.length===2){r=a;a=t;t="auto_capture"}window.tracker.inline(t,{name:a,value:r})},track:function e(t,a,r){if(!this.hasWindow())return;if(!r){return window.tracker.inline("auto_capture",{name:t,value:a})}if(r==="test"){if(!t)this.test(a);else this.test(t);return}var n={action:{name:t,value:a}};if(!t){n=a}window.tracker.track(r,n)}};e.exports=r},,,,,,,,function(e,t){e.exports={buildEnv:"production.min",splitTests:{de_flight_lookup:25},domainSettings:{language:"de",scheme:"https",domainScheme:"https",logoLink:"/de/",agentDomain:"agent.holidayextras.com.de",domain:"www.holidayextras.com",localisedDomain:"www.holidayextras.com.de",siteCode:"DE-HX",assets:"https://staticsg.holidayextras.com",assetsLocal:"",assetsLive:"https://staticsg.holidayextras.com",contentStaticServer:"https://static1.holidayextras.com",assetVersionTime:1678893381693,assetVersion:"euckk48fe27qh"},appSettings:{get_app_url:"https://hx.app.link/mSZERdKeGZ",track_name:"app_link_clicked",branch_key:"key_live_dbwczC9jmM6OaQuYESRj6jdcsAeSAX1d",campaign:"hx-direct",channel:"Website",feature:"TextMeTheApp",defaultBtnText:"App downloaden",downloadText:"Noch schneller geht's mit der App...",downloadBtnText:"Downloaden"},insBtnSettings:{show:true,defaultBtnText:"Get Travel Insurance",href:"/travel-insurance.html",trackName:"ins_btn_search"},settings:{language:"de",brand:"HD",priceFormat:"€",decimalNotation:",",cookieExpiryDays:30,cookieDomain:"www.holidayextras.com",pluginsExportDir:"../config/exports",agentLoginPage:"/login.html",bothImageCloudCDNS:["d1u5bw6boilxum","dmy0b9oeprz0f"],destinationLookup:"https://api.holidayextras.co.uk/destination.js",ImageCloudCDNImgix:"https://hximagecloud.imgix.net",imageCloudCDN:"https://dmy0b9oeprz0f.cloudfront.net",imgixURL:"https://holidayextras.imgix.net",imageCloudWebsite:"holidayextras.de",env:"production",flightSearch:"https://flight.dock-yard.io/",imageCloudEndpoint:"https://image-cloud.dock-yard.io/fetch",imageCloudEndpointImage:"https://image-cloud.dock-yard.io/image",rpcGatewayBase:"https://seo-rpc-gateway.dock-yard.io/",soapiBase:"//static1.holidayextras.com/datafeeds/soapi/",harpMessageRoute:"prodlib-multi?product=ADMalertDE&archived=1&noCache=1",locationImageBase:"https://dmy0b9oeprz0f.cloudfront.net/holidayextras.de/engine-images/location-landing/",locationImageMobileBase:"https://dmy0b9oeprz0f.cloudfront.net/holidayextras.de/mobile-engine-images/",googleSearchRoute:"https://www.googleapis.com/customsearch/v1/siterestrict?",googleSearchKey:"AIzaSyAhOZwwHYtuC72q3OxYsya3Xzf6cI_4xh0",googleSearchEngine:"008447715357275484586:x0ghtkxhxvi"},agents:{main:"ABCDE",search:"ABCSE",allowedUrlAgentIDs:["midocoid"],responsys:"WO298",switchboardNumber:"0871 360 2603",switchboardInusranceNumber:"0800 093 1900",fallBackPhoneNumber:"0871 360 2603",fallBackInsurancePhoneNumber:"01303 816144",defaultPhoneNumbers:{WY992:"0871 360 2603"},noBookingFeesAgents:["WY992"]},gtmTag:{id:"GTM-PNJKVKD"},heHaButtonSettings:{show:false},voucherButtonSettings:{show:true,href:"/de/gutschein-einloesen.html",text:"Gutschein",trackName:"gutschein"},hotelFacilities:[{key:"star_rating",type:"stars",label:"Star rating",schema:false},{key:"address",type:"html",label:"Address",schema:false},{key:"breakfast",type:"html",label:"Breakfast",schema:true},{key:"breakfast_times",type:"html",label:"Breakfast times",schema:true},{key:"breakfast_price",type:"html",label:"Breakfast price",schema:true},{key:"disabled_facilities",type:"html",label:"Disabled facilities",schema:true},{key:"q_internet",type:"yn",label:"Internet",schema:true},{key:"wifi",type:"yn",label:"Wi-Fi",schema:true},{key:"q_restaurant",type:"yn",label:"Restaurant",schema:true},{key:"q_roomservice",type:"yn",label:"Room service",schema:true},{key:"q_swimming",type:"yn",label:"Swimming pool",schema:true},{key:"all_rooms_non_smoking",type:"yn",label:"All rooms non-smoking",schema:true},{key:"ensuite",type:"yn",label:"En-suite bathroom",schema:true},{key:"hairdyer",type:"yn",label:"Hairdryer",schema:true},{key:"iron",type:"yn",label:"Iron",schema:true},{key:"trouser_press",type:"yn",label:"Trouser press",schema:true},{key:"kettle",type:"yn",label:"Kettle",schema:true},{key:"radio",type:"yn",label:"Radio",schema:true},{key:"room_phone",type:"yn",label:"Phone in room",schema:true},{key:"tv",type:"yn",label:"TV",schema:true},{key:"satellite",type:"yn",label:"Satellite TV",schema:true}],locations:{airportMatch:{"bangkok-airport-lounge":{code:"BGK",name:"Bangkok",pattern:"bangkok"},"bruessel-south-charleroi-flughafen-parken":{code:"CRL",name:"Brüssel-Charleroi",pattern:"bruessel-south-charleroi"},"bruessel-flughafen-parken":{code:"BRU",name:"Brüssel",pattern:"bruessel"},"hongkong-airport-lounge":{code:"HKK",name:"Hong Kong",pattern:"hongkong"},"palma-de-mallorca-airport-lounge":{code:"PMI",name:"Palma de Mallorca",pattern:"palma-de-mallorca"},"zuerich-flughafen-parken":{code:"ZRH",name:"Zürich",pattern:"zuerich"}},extraAirports:{"amsterdam-hafen-parken":{code:"AMK",name:"Amsterdam",pattern:"amsterdam-hafen"},"bremerhaven-hafen-parken":{code:"BRV",name:"bremerhaven",pattern:"bremerhaven-hafen"},"duesseldorf-flughafen":{code:"DUS",name:"Düsseldorf",pattern:"duesseldorf"},"frankfurt-hafen-parken":{code:"FAM",name:"Frankfurt",pattern:"frankfurt-hafen"},"genua-hafen-parken":{code:"GEN",name:"genua",pattern:"genua-hafen"},"hamburg-hafen-parken":{code:"HHA",name:"Hamburg",pattern:"hamburg-hafen"},"kiel-hafen-parken":{code:"KIE",name:"Kiel",pattern:"kiel-hafen"},"koeln-hafen-parken":{code:"CGN",name:"Köln",pattern:"koeln-hafen"},"passau-hafen-parken":{code:"PAS",name:"Passau",pattern:"passau-hafen"},"rom-hafen-parken":{code:"ROM",name:"Rom Civitavecchia",pattern:"rom-hafen"},"rotterdam-hafen-parken":{code:"RTM",name:"Rotterdam",pattern:"rotterdam-hafen"},"savona-hafen-parken":{code:"SVN",name:"Savona",pattern:"savona-hafen"},"venedig-hafen-parken":{code:"VEN",name:"Venedig",pattern:"venedig-hafen"},"warnemuende-hafen-parken":{code:"HRO",name:"Warnemuende",pattern:"warnemuende-hafen"}},codeSwap:{FRB:"FRA",DUD:"DUS"}},group:"flights"}},,function(e,t,a){e.exports=a(7)(6)},,,,,,,,,,,,,,,,function(e,t,a){var r=a(94),n=r.combineReducers,i=r.createStore;var o=a(95);var s=n(o);var l=typeof window!=="undefined"&&window.__REDUX_DEVTOOLS_EXTENSION__?window.__REDUX_DEVTOOLS_EXTENSION__():{};e.exports=i(s,l)},,function(e,t,a){var s=a(54);var l=a(1);var c=a(0);var r=a(55),u=r.connect;var n=a(56);var i=a(89);var o=a(90);var d=a(108);var p=a(42);var m=a(109);var f={agents:n,hxbreaks:d,liveChat:i,login:o,splitTests:m};var h=function e(r,t){if(!r)return;if(!t)return r;if(t.constructor!==Array)t=[t];var a=r.displayName?r.displayName.replace(/Connect\(/g,"").replace(/\)/g,""):"Component";var n=function e(a){t.map(function(e,t){Object.assign(a,f[e].mapStateToProps(a))});return a};var i=function e(a,r){var n={};t.map(function(e,t){n=Object.assign({},n,f[e].mapDispatchToProps(a,r))});return n};r=u(n,i)(r);var o=function(e){"use strict";l(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.render=function e(){return c.createElement(r,s({},this.props,{store:p}))};return t}(c.PureComponent);try{Object.defineProperty(o,"name",{value:"".concat(a,"Wrapper")})}catch(e){}return o};e.exports=h},function(e,t,a){var r=a(0);var n=a(46);var i=a(110);window.ReactRoot=i;if(typeof i["default"]==="function")i=i["default"];var o={template:"content-template.jsx",baseFile:"base-template.jsx",permalink:false,dataSource:{query:"/flug/mf9601?returnDate=2023-05-14",host:"flight-information.dock-yard.io",port:"443",pageNameField:"pageName"},pageData:{"flightData":{"flight":{"code":"MF9601","number":"9601","icao":["CXA"],"matched":"MF9601/CXA9601","carrier":{"code":"MF","name":"Xiamen Airlines"},"distance":"810","elapsed_time":"140","layover_time":"0"},"departure":{"airport_iata":"FCO","airport":"Rome Fiumicino","country":"Italy","date":"2024-04-27","time":"19:40","city":"Rome","terminal":"1","region":0,"country_iso":"IT","dateFull":"2024-04-27T19:40:00.000Z"},"arrival":{"airport_iata":"AMS","airport":"Amsterdam Schiphol","country":"Netherlands","date":"2024-04-27","time":"22:00","city":"Amsterdam","terminal":"","region":0,"country_iso":"NL","dateFull":"2024-04-27T22:00:00.000Z"},"futureDepartures":["2024-04-28T19:40:00.000Z","2024-04-29T19:40:00.000Z","2024-04-30T19:40:00.000Z","2024-05-01T19:40:00.000Z","2024-05-02T19:40:00.000Z","2024-05-03T19:40:00.000Z","2024-05-04T19:40:00.000Z","2024-05-05T19:40:00.000Z","2024-05-06T19:40:00.000Z","2024-05-07T19:40:00.000Z","2024-05-08T19:40:00.000Z","2024-05-09T19:40:00.000Z","2024-05-10T19:40:00.000Z","2024-05-11T19:40:00.000Z","2024-05-12T19:40:00.000Z","2024-05-13T19:40:00.000Z","2024-05-14T19:40:00.000Z","2024-05-15T19:40:00.000Z","2024-05-16T19:40:00.000Z","2024-05-17T19:40:00.000Z","2024-05-18T19:40:00.000Z","2024-05-19T19:40:00.000Z","2024-05-20T19:40:00.000Z","2024-05-21T19:40:00.000Z","2024-05-22T19:40:00.000Z","2024-05-23T19:40:00.000Z","2024-05-24T19:40:00.000Z","2024-05-25T19:40:00.000Z","2024-05-26T19:40:00.000Z","2024-05-27T19:40:00.000Z","2024-05-28T19:40:00.000Z","2024-05-29T19:40:00.000Z","2024-05-30T19:40:00.000Z","2024-05-31T19:40:00.000Z","2024-06-01T19:40:00.000Z","2024-06-02T19:40:00.000Z","2024-06-03T19:40:00.000Z","2024-06-04T19:40:00.000Z","2024-06-05T19:40:00.000Z","2024-06-06T19:40:00.000Z","2024-06-07T19:40:00.000Z","2024-06-08T19:40:00.000Z","2024-06-09T19:40:00.000Z","2024-06-10T19:40:00.000Z","2024-06-11T19:40:00.000Z","2024-06-12T19:40:00.000Z","2024-06-13T19:40:00.000Z","2024-06-14T19:40:00.000Z","2024-06-15T19:40:00.000Z","2024-06-16T19:40:00.000Z","2024-06-17T19:40:00.000Z","2024-06-18T19:40:00.000Z","2024-06-19T19:40:00.000Z","2024-06-20T19:40:00.000Z","2024-06-21T19:40:00.000Z","2024-06-22T19:40:00.000Z","2024-06-23T19:40:00.000Z","2024-06-24T19:40:00.000Z","2024-06-25T19:40:00.000Z","2024-06-26T19:40:00.000Z"],"futureArrivals":["2024-04-28T22:00:00.000Z","2024-04-29T22:00:00.000Z","2024-04-30T22:00:00.000Z","2024-05-01T22:00:00.000Z","2024-05-02T22:00:00.000Z","2024-05-03T22:00:00.000Z","2024-05-04T22:00:00.000Z","2024-05-05T22:00:00.000Z","2024-05-06T22:00:00.000Z","2024-05-07T22:00:00.000Z","2024-05-08T22:00:00.000Z","2024-05-09T22:00:00.000Z","2024-05-10T22:00:00.000Z","2024-05-11T22:00:00.000Z","2024-05-12T22:00:00.000Z","2024-05-13T22:00:00.000Z","2024-05-14T22:00:00.000Z","2024-05-15T22:00:00.000Z","2024-05-16T22:00:00.000Z","2024-05-17T22:00:00.000Z","2024-05-18T22:00:00.000Z","2024-05-19T22:00:00.000Z","2024-05-20T22:00:00.000Z","2024-05-21T22:00:00.000Z","2024-05-22T22:00:00.000Z","2024-05-23T22:00:00.000Z","2024-05-24T22:00:00.000Z","2024-05-25T22:00:00.000Z","2024-05-26T22:00:00.000Z","2024-05-27T22:00:00.000Z","2024-05-28T22:00:00.000Z","2024-05-29T22:00:00.000Z","2024-05-30T22:00:00.000Z","2024-05-31T22:00:00.000Z","2024-06-01T22:00:00.000Z","2024-06-02T22:00:00.000Z","2024-06-03T22:00:00.000Z","2024-06-04T22:00:00.000Z","2024-06-05T22:00:00.000Z","2024-06-06T22:00:00.000Z","2024-06-07T22:00:00.000Z","2024-06-08T22:00:00.000Z","2024-06-09T22:00:00.000Z","2024-06-10T22:00:00.000Z","2024-06-11T22:00:00.000Z","2024-06-12T22:00:00.000Z","2024-06-13T22:00:00.000Z","2024-06-14T22:00:00.000Z","2024-06-15T22:00:00.000Z","2024-06-16T22:00:00.000Z","2024-06-17T22:00:00.000Z","2024-06-18T22:00:00.000Z","2024-06-19T22:00:00.000Z","2024-06-20T22:00:00.000Z","2024-06-21T22:00:00.000Z","2024-06-22T22:00:00.000Z","2024-06-23T22:00:00.000Z","2024-06-24T22:00:00.000Z","2024-06-25T22:00:00.000Z","2024-06-26T22:00:00.000Z"]},"flightLinks":{"departures":false,"directions":false,"destination":false},"airlineInfo":{},"airportInfo":{"airportName":"Rom Fiumicino"},"weather":{},"arrivalInfo":{"currency_name":"Euro","language":"Dutch and Frisian"},"pageName":"flight/mf9601",pageTitle:"Flight MF9601 or CXA9601 | Xiamen Airlines from Rome Fiumicino to Amsterdam Schiphol",description:"Check flight departure and arrival times for Xiamen Airlines flight number MF9601 or CXA9601 from Rome Fiumicino to Amsterdam Schiphol"},pageName:"flug/mf9601.html",pagename:"de/flug/mf9601.html",srcFile:"fr1077.md",buildEnv:"production.min",splitTests:{de_flight_lookup:25},domainSettings:{language:"de",scheme:"https",domainScheme:"https",logoLink:"/de/",agentDomain:"agent.holidayextras.com.de",domain:"www.holidayextras.com",localisedDomain:"www.holidayextras.com.de",siteCode:"DE-HX",assets:"https://staticsg.holidayextras.com",assetsLocal:"",assetsLive:"https://staticsg.holidayextras.com",contentStaticServer:"https://static1.holidayextras.com",assetVersionTime:1678893381693,assetVersion:"euckk48fe27qh"},appSettings:{get_app_url:"https://hx.app.link/mSZERdKeGZ",track_name:"app_link_clicked",branch_key:"key_live_dbwczC9jmM6OaQuYESRj6jdcsAeSAX1d",campaign:"hx-direct",channel:"Website",feature:"TextMeTheApp",defaultBtnText:"App downloaden",downloadText:"Noch schneller geht's mit der App...",downloadBtnText:"Downloaden"},insBtnSettings:{show:true,defaultBtnText:"Get Travel Insurance",href:"/travel-insurance.html",trackName:"ins_btn_search"},settings:{language:"de",brand:"HD",priceFormat:"€",decimalNotation:",",cookieExpiryDays:30,cookieDomain:"www.holidayextras.com",pluginsExportDir:"../config/exports",agentLoginPage:"/login.html",bothImageCloudCDNS:["d1u5bw6boilxum","dmy0b9oeprz0f"],destinationLookup:"https://api.holidayextras.co.uk/destination.js",ImageCloudCDNImgix:"https://hximagecloud.imgix.net",imageCloudCDN:"https://dmy0b9oeprz0f.cloudfront.net",imgixURL:"https://holidayextras.imgix.net",imageCloudWebsite:"holidayextras.de",env:"production",flightSearch:"https://flight.dock-yard.io/",imageCloudEndpoint:"https://image-cloud.dock-yard.io/fetch",imageCloudEndpointImage:"https://image-cloud.dock-yard.io/image",rpcGatewayBase:"https://seo-rpc-gateway.dock-yard.io/",soapiBase:"//static1.holidayextras.com/datafeeds/soapi/",harpMessageRoute:"prodlib-multi?product=ADMalertDE&archived=1&noCache=1",locationImageBase:"https://dmy0b9oeprz0f.cloudfront.net/holidayextras.de/engine-images/location-landing/",locationImageMobileBase:"https://dmy0b9oeprz0f.cloudfront.net/holidayextras.de/mobile-engine-images/",googleSearchRoute:"https://www.googleapis.com/customsearch/v1/siterestrict?",googleSearchKey:"AIzaSyAhOZwwHYtuC72q3OxYsya3Xzf6cI_4xh0",googleSearchEngine:"008447715357275484586:x0ghtkxhxvi",hapiBase:"https://hapi.holidayextras.co.uk/",hapiFlightEndpoint:"transport/flights",hapiEndPoints:{cp:"carparks",ho:"hotels",hcp:"hotels",lo:"lounges"},hapiActions:{cp:"//trip.holidayextras.co.uk/parking2008/c/availabilityV5/",ho:"//trip.holidayextras.co.uk/hotels2008/c/availabilityV5",hcp:"//trip.holidayextras.co.uk/hotels2008/c/availabilityV5/",lo:"//trip.holidayextras.co.uk/lounges2008/c/availability/"},hapiToken:"c46c05c7-6fb5-49e4-b0c6-2c37363569f3",hapiSid:"cacheload1234568",hapiOperatorInitials:"APP",flightRoute:"flight",prodlibRoute:"prodlib"},agents:{main:"ABCDE",search:"ABCSE",allowedUrlAgentIDs:["midocoid"],responsys:"WO298",switchboardNumber:"0871 360 2603",switchboardInusranceNumber:"0800 093 1900",fallBackPhoneNumber:"0871 360 2603",fallBackInsurancePhoneNumber:"01303 816144",defaultPhoneNumbers:{WY992:"0871 360 2603"},noBookingFeesAgents:["WY992"]},gtmTag:{id:"GTM-PNJKVKD"},heHaButtonSettings:{show:false},voucherButtonSettings:{show:true,href:"/de/gutschein-einloesen.html",text:"Gutschein",trackName:"gutschein"},hotelFacilities:[{key:"star_rating",type:"stars",label:"Star rating",schema:false},{key:"address",type:"html",label:"Address",schema:false},{key:"breakfast",type:"html",label:"Breakfast",schema:true},{key:"breakfast_times",type:"html",label:"Breakfast times",schema:true},{key:"breakfast_price",type:"html",label:"Breakfast price",schema:true},{key:"disabled_facilities",type:"html",label:"Disabled facilities",schema:true},{key:"q_internet",type:"yn",label:"Internet",schema:true},{key:"wifi",type:"yn",label:"Wi-Fi",schema:true},{key:"q_restaurant",type:"yn",label:"Restaurant",schema:true},{key:"q_roomservice",type:"yn",label:"Room service",schema:true},{key:"q_swimming",type:"yn",label:"Swimming pool",schema:true},{key:"all_rooms_non_smoking",type:"yn",label:"All rooms non-smoking",schema:true},{key:"ensuite",type:"yn",label:"En-suite bathroom",schema:true},{key:"hairdyer",type:"yn",label:"Hairdryer",schema:true},{key:"iron",type:"yn",label:"Iron",schema:true},{key:"trouser_press",type:"yn",label:"Trouser press",schema:true},{key:"kettle",type:"yn",label:"Kettle",schema:true},{key:"radio",type:"yn",label:"Radio",schema:true},{key:"room_phone",type:"yn",label:"Phone in room",schema:true},{key:"tv",type:"yn",label:"TV",schema:true},{key:"satellite",type:"yn",label:"Satellite TV",schema:true}],locations:{airportMatch:{"bangkok-airport-lounge":{code:"BGK",name:"Bangkok",pattern:"bangkok"},"bruessel-south-charleroi-flughafen-parken":{code:"CRL",name:"Brüssel-Charleroi",pattern:"bruessel-south-charleroi"},"bruessel-flughafen-parken":{code:"BRU",name:"Brüssel",pattern:"bruessel"},"hongkong-airport-lounge":{code:"HKK",name:"Hong Kong",pattern:"hongkong"},"palma-de-mallorca-airport-lounge":{code:"PMI",name:"Palma de Mallorca",pattern:"palma-de-mallorca"},"zuerich-flughafen-parken":{code:"ZRH",name:"Zürich",pattern:"zuerich"}},extraAirports:{"amsterdam-hafen-parken":{code:"AMK",name:"Amsterdam",pattern:"amsterdam-hafen"},"bremerhaven-hafen-parken":{code:"BRV",name:"bremerhaven",pattern:"bremerhaven-hafen"},"duesseldorf-flughafen":{code:"DUS",name:"Düsseldorf",pattern:"duesseldorf"},"frankfurt-hafen-parken":{code:"FAM",name:"Frankfurt",pattern:"frankfurt-hafen"},"genua-hafen-parken":{code:"GEN",name:"genua",pattern:"genua-hafen"},"hamburg-hafen-parken":{code:"HHA",name:"Hamburg",pattern:"hamburg-hafen"},"kiel-hafen-parken":{code:"KIE",name:"Kiel",pattern:"kiel-hafen"},"koeln-hafen-parken":{code:"CGN",name:"Köln",pattern:"koeln-hafen"},"passau-hafen-parken":{code:"PAS",name:"Passau",pattern:"passau-hafen"},"rom-hafen-parken":{code:"ROM",name:"Rom Civitavecchia",pattern:"rom-hafen"},"rotterdam-hafen-parken":{code:"RTM",name:"Rotterdam",pattern:"rotterdam-hafen"},"savona-hafen-parken":{code:"SVN",name:"Savona",pattern:"savona-hafen"},"venedig-hafen-parken":{code:"VEN",name:"Venedig",pattern:"venedig-hafen"},"warnemuende-hafen-parken":{code:"HRO",name:"Warnemuende",pattern:"warnemuende-hafen"}},codeSwap:{FRB:"FRA",DUD:"DUS"},carParking:{OptGroupDeutschland:{BER:"Berlin Brandenburg",BRE:"Bremen",DTM:"Dortmund",DRS:"Dresden",DUS:"Düsseldorf",FRA:"Frankfurt",HHN:"Frankfurt-Hahn",FDH:"Friedrichshafen",HAM:"Hamburg",HAJ:"Hannover",FKB:"Karlsruhe/Baden-Baden",CGN:"Köln",LEJ:"Leipzig",FMM:"Memmingen",MUC:"München",NUE:"Nürnberg",PAD:"Paderborn",STR:"Stuttgart",NRN:"Weeze (Niederrhein)"},OptGroupBelgien:{BRU:"Brüssel",CRL:"Charleroi"},"OptGroupDänemark":{COP:"Kopenhagen"},OptGroupFrankreich:{BOD:"Bordeaux",LYS:"Lyon",MRS:"Marseille",NTE:"Nantes",NCE:"Nizza",CDG:"Paris-Charles de Gaulle",ORY:"Paris-Orly",TLS:"Toulouse"},OptGroupItalien:{BRI:"Bari",BGY:"Bergamo",BLQ:"Bologna",CTA:"Catania",FLR:"Florenz",LIN:"Mailand Linate",MXP:"Mailand Malpensa",NAP:"Neapel",OLB:"Olbia",PMO:"Palermo",PSA:"Pisa",FCO:"Rom Fiumicino",TRN:"Turin",VCE:"Venedig",VRN:"Verona"},OptGroupLuxemburg:{LUX:"Luxemburg"},OptGroupNiederlande:{AMS:"Amsterdam",EIN:"Eindhoven",RTM:"Rotterdam"},"OptGroupÖsterreich":{SZG:"Salzburg",VIE:"Wien"},OptGroupPortugal:{FAO:"Faro",LIS:"Lissabon"},OptGroupSchweden:{ARN:"Stockholm Arlanda"},OptGroupSchweiz:{BSL:"Basel",GVA:"Genf",ZRH:"Zürich"},OptGroupSlowakei:{BTS:"Bratislava"},OptGroupSpanien:{ALC:"Alicante",BCN:"Barcelona",MAD:"Madrid",AGP:"Málaga",SVQ:"Sevilla",VLC:"Valencia"},OptGroupTschechien:{PRG:"Prag"}},portParking:{OptGroupDeutschland:{BRV:"Bremerhaven",DAR:"Düsseldorf",FAM:"Frankfurt",HHA:"Hamburg",HHS:"Hamburg Steinwerder",KIE:"Kiel",KLN:"Köln",PAS:"Passau",HRO:"Rostock-Warnemünde"},"OptGroupDänemark":{CPN:"Kopenhagen"},OptGroupFrankreich:{LYH:"Lyon",NIC:"Nizza"},OptGroupItalien:{BAR:"Bari",GEN:"Genua",MON:"Monfalcone (Venedig)",NPP:"Neapel",ROM:"Rom Civitavecchia",SVN:"Savona",TRI:"Triest",VEN:"Venedig",VEB:"Venedig San Basilio"},OptGroupNiederlande:{AMK:"Amsterdam",AMI:"IJmuiden",RTC:"Rotterdam"},OptGroupSpanien:{BPN:"Barcelona"}},hotels:{BER:"Berlin Brandenburg",BRE:"Bremen",DTM:"Dortmund",DRS:"Dresden",DUS:"Düsseldorf",FRA:"Frankfurt",HHN:"Frankfurt-Hahn",FDH:"Friedrichshafen",HAM:"Hamburg",HAJ:"Hannover",CGN:"Köln",LEJ:"Leipzig",MUC:"München",NUE:"Nürnberg",STR:"Stuttgart"},portHotels:{OptGroupDeutschland:{BRV:"Bremerhaven",DAR:"Düsseldorf",HHA:"Hamburg",KIE:"Kiel",HRO:"Rostock-Warnemünde"},OptGroupItalien:{VEN:"Venedig"}},lounges:{DRS:"Dresden",DUS:"Düsseldorf",FRA:"Frankfurt",HAM:"Hamburg",HAJ:"Hannover",CGN:"Köln",SBC:"Saarbrücken"},terminals:{LHR:{"Terminal 2":"2","Terminal 3":"3","Terminal 4":"4","Terminal 5":"5"},MAN:{"Terminal 1":"1","Terminal 2":"2","Terminal 3":"3"}},locationsMap:{cp:"carParking",ho:"hotels",hcp:"hotels",lo:"loungeCodes"},carparking:{BER:"Berlin Brandenburg",BRE:"Bremen",DTM:"Dortmund",DRS:"Dresden",DUS:"Düsseldorf",FRA:"Frankfurt",HHN:"Frankfurt-Hahn",FDH:"Friedrichshafen",HAM:"Hamburg",HAJ:"Hannover",FKB:"Karlsruhe/Baden-Baden",CGN:"Köln",LEJ:"Leipzig",FMM:"Memmingen",MUC:"München",NUE:"Nürnberg",PAD:"Paderborn",STR:"Stuttgart",NRN:"Weeze (Niederrhein)"}},group:"flights",flightStatusUrl:"flight-information.dock-yard.io",terminalConvert:{1:"Terminal 1",2:"Terminal 2",3:"Terminal 3",4:"Terminal 4",5:"Terminal 5",N:"North Terminal",n:"North Terminal",S:"South Terminal",s:"South Terminal"},products:{listItemClass:{loading:"list-group-item list-group-item-info",notAvailable:"list-group-item list-group-item-danger",available:"list-group-item list-group-item-success"},iconClass:{loading:"fas fa-check list-group-item-icon",notAvailable:"fas fa-times list-group-item-icon",available:"fas fa-check list-group-item-icon"}},flightStatus:{url:"https://flight-information.dock-yard.io/flight/"},weatherIcons:{"partly-cloudy-day":"partly-cloudy","partly-cloudy-night":"night-partly-cloudy",cloudy:"cloudy","clear-day":"sunny","clear-night":"night-clear",rain:"light-rain",snow:"heavy-snow",sleet:"light-snow",wind:"windy",fog:"fog",hail:"hail",thunderstorm:"storm",tornado:"windy"},tpl:"template"};window.ReactRootProps=o;window.SSGTemplateGroup="flights";var s=n.render(r.createElement(i,o),document.getElementById("content"))},function(e,t){e.exports=ReactDOM},,,,,,,function(e,t,a){e.exports=a(7)(15)},,function(e,t){e.exports=ReactRedux},function(e,t,a){var l=a(57);var r=function e(t){return{agentData:t.agentData}};var n=function e(a,t){l.props=t;var r=function e(t){a({type:"UPDATE",data:l.updateAgentData(t)})};var n=function e(){return l.getAgent()};var i=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:n();if(t!==l.getDefaultAgent())return o(t);r(l.getInitialState())};var o=function e(t){l.checkAgent(t,r)};var s=function e(t){l.setAgentCookie(t)};return{updateAgentData:r,agentSetup:i,getAgent:n,updateAgent:o,setAgentCookie:s}};e.exports={mapStateToProps:r,mapDispatchToProps:n}},function(e,t,n){"use strict";var r=n(10);var i=n(27);var o=n(26);var s=n(5);var l=n(58);var a=n(24),c=a.domainSettings,u=a.settings,d=a.agents,p=a.customerWebSocketService;var m={agentFromReferrer:function e(){var t=typeof window!=="undefined"?window.document.referrer:"";var a=new RegExp(/^[a-z]*:\/\/[^/]*(\.google\.|\.yahoo\.|\.bing\.|\.ask\.|\.aol\.|\.wow\.|\.webcrawler\.|\.mywebsearch\.|\.infospace\.|\.info\.|\.dogpile\.|\.duckduckgo\.|\.blekko\.)[^/]*/i);if(t&&a.test(t)&&!s.getParameterByName("adcode",true)&&!s.getParameterByName("email",true)){return d.search||this.getDefaultAgent(d.main)}},agentFromUrl:function e(){var t=s.getParameterByName("agent",true);var a=new RegExp(/^[0-9a-z]{4,5}$/i);if(t&&a.test(t)){return t}},agentFromCookie:function e(){if(o.load("agent")){return o.load("agent")}},getDefaultAgent:function e(t){return t||d.main||"WT894"},getAgent:function e(){var t=this.agentFromReferrer()||this.agentFromUrl()||this.agentFromCookie()||this.getDefaultAgent();this.setAgentCookie(t);this.checkForSessionCookie();return t},setAgentCookie:function e(t){o.remove("agent","/");var a=new Date;var r=u.cookieExpiryDays||90;a.setTime(a.getTime()+r*24*60*60*1e3);var n={expires:a,path:"/"};if(u.cookieDomain)n.domain=u.cookieDomain;o.save("agent",t,n)},agentData:function e(t,a){var r={};if(a){try{r=n(88)("./"+u.pluginsExportDir+"/"+d.main+".json");r.agent=r.code}catch(e){r={}}}if(!r.agent){r={agent:this.getAgent(),typeRID:"D",groupCode:"X0"};if(t)return Object.prototype.hasOwnProperty.call(r,t)?r[t]:false}return r},checkAgent:function e(u,d){if(this.agentData("DDI")&&this.agentData("DDI")!=="")return d(this.agentData());var t=c.language?c.language.toUpperCase():"UK";if(t!=="UK"&&t!=="DE")t="DE";var a=c.scheme?c.scheme+":":"";try{r.get("".concat(a,"//hapi.holidayextras.co.uk/legacy/agent_lookup/").concat(u,".js?key=foo&country=").concat(t)).use(i).end(function(e,t){if(e||!t.text)return;var a={};try{a=JSON.parse(t.text)}catch(e){console.log(e);return}if(!(a.API_Reply.RecordSet&&a.API_Reply.RecordSet.Record))return;a.API_Reply.RecordSet.Record.map(function(e){var t=e.name,a=e.code,r=e.groupCode,n=e.typeRID,i=e.DDI,o=e.promocode,s=e.cashback,l=e.data;if(isNaN(u)&&u.toUpperCase()!==a.toUpperCase())return;var c={name:t,agent:u,typeRID:n,groupCode:r,DDI:i,promocode:o,cashback:s,OptionFlags:l.OptionFlags};d(c)})})}catch(e){console.log(e.message,"ERROR with agent lookup");return d(this.agentData())}},assignAgentsIdentifiedByUrl:function e(t){var a={};if(t&&t.allowedUrlAgentIDs){t.allowedUrlAgentIDs.forEach(function(e){a[e]=s.getParameterByName(e,false)});return a}},componentDidMount:function e(t){if(t.agent!==this.getDefaultAgent())this.checkAgent(t.agent,this.updateAgentData)},getInitialState:function e(){return this.agentData(false,true)},updateAgentData:function e(t){var a=this.assignAgentsIdentifiedByUrl();if(a)t.agentsByUrl=a;t.agent=t.agent.toUpperCase();return t},checkIsLoggedIn:function e(){if(!window.ReactRootStore)return false;if(!window.ReactRootStore.getState)return false;if(typeof window.ReactRootStore.getState!=="function")return false;if(!(window.ReactRootStore.getState().loggedInData||{}).email)return false;return true},checkForSessionCookie:function e(){var a=this;var t=o.load("owts-tmp-v2");var r=o.load("owts");if(typeof window==="undefined"||!p)return;if(!t)return setTimeout(this.checkForSessionCookie.bind(this),500);var n=l("".concat(p,"?sessionId=").concat(t,"&visitorId=").concat(r),{transports:["websocket"]});n.on("audience_customer_segment_association",function(e){if(a.checkIsLoggedIn()||!window.dataLayer)return;var t={event:"audience_segments",type:e.action};e.segments.forEach(function(e){t[e.key]=e.value});window.dataLayer.push(t)})}};e.exports=m},,,,,,,,function(e,t,a){e.exports=a(7)(10)},,,,,,,,,,,,,,,,,,,,function(e,t){},,,function(e,t){function a(e){var t=new Error("Cannot find module '"+e+"'");t.code="MODULE_NOT_FOUND";throw t}a.keys=function(){return[]};a.resolve=a;e.exports=a;a.id=88},function(e,t){var a=function e(t){return{liveChatData:t.liveChatData}};var r=function e(r){return{openLiveChat:function e(t,a){return r({type:"CHAT_OPENED",data:{department:t,lang:a}})},closeLiveChat:function e(){return r({type:"CHAT_CLOSED"})},minimizeLiveChat:function e(t){return r({type:"CHAT_MINIMIZED",data:{chatMinimized:t}})}}};e.exports={mapStateToProps:a,mapDispatchToProps:r}},function(e,t,a){var T=a(91);var _=a(93);var x=a(4);var A=a(10);var C=a(42);var O=a(103);var P=a(104);var R=a(16);var I=a(5);var M=a(24);var L=a(105);var r=function e(t){return{loggedInData:t.loggedInData}};var n=function e(i,o){var c=function e(){return o.authenticationConfig||O};var u=function e(){return x(o.loginConfig)==="object"?o.loginConfig:P};var n=function e(t){i({type:"LOGIN",data:t})};var t=function e(){var t=c(),a=t.auth;A.get(a.logout).withCredentials().end(r)};var r=function e(){R.track(null,{customer_state:"recognised_with_account"},"customer_state");i({type:"LOGOUT"})};var s=function e(t){var a=t.body.data.getTraveller?d(t.body.data.getTraveller):t.body;if(!a.email)return;R.inline("login_successful","1");a.validUser=true;var r=o.settings||M.settings;if(typeof window!=="undefined"&&window.location.hostname==="localhost")r.cookieDomain="localhost";I.setCookie("Email",a.email,false,r.subCookieDomain);I.setCookie("user_ext_id",a.userExtId,new Date((new Date).setFullYear((new Date).getFullYear()+1)),r.subCookieDomain);if(a.address&&a.address.user_id){I.setCookie("customerID",a.address.user_id,false,r.cookieDomain)}if(a.vehicle&&a.vehicle.user_id){I.setCookie("customerID",a.vehicle.user_id,false,r.cookieDomain)}R.inline("logged_in_status","authenticated");R.track(null,{customer_state:"authenticated"},"customer_state");if(window&&window.$){$(":input[type=email].emailAddress").val(a.email)}n(a)};var a=function(){var n=_(T.mark(function e(a,r,n){var i,o,s;return T.wrap(function e(t){while(1)switch(t.prev=t.next){case 0:if(!(!a||!r)){t.next=2;break}return t.abrupt("return",true);case 2:i=c(),o=i.auth;s=false;if(n==="manual")s=true;t.prev=5;t.next=8;return A.post(o.login,{user:{email:a,password:r},user_email:a}).withCredentials().type("application/json").timeout({response:3e4,deadline:6e4});case 8:h();return t.abrupt("return",false);case 12:t.prev=12;t.t0=t["catch"](5);p(s);return t.abrupt("return",true);case 16:case"end":return t.stop()}},e,null,[[5,12]])}));return function e(t,a,r){return n.apply(this,arguments)}}();var l=function(){var n=_(T.mark(function e(a,r,n){var i,o,s;return T.wrap(function e(t){while(1)switch(t.prev=t.next){case 0:if(!(!a||!r)){t.next=2;break}return t.abrupt("return",true);case 2:i=c(),o=i.auth;s=false;if(n==="manual")s=true;t.prev=5;t.next=8;return A.post(o.login,{user:{email:a,password:r},user_email:a}).withCredentials().type("application/json").timeout({response:3e4,deadline:6e4});case 8:h();return t.abrupt("return",false);case 12:t.prev=12;t.t0=t["catch"](5);p(s);return t.abrupt("return",true);case 16:case"end":return t.stop()}},e,null,[[5,12]])}));return function e(t,a,r){return n.apply(this,arguments)}}();var d=function e(t){var a=function t(e){var a=[];e.forEach(function(e){if(Array.isArray(e))a=a.concat(t(e));else a=a.concat(e)});return a};var r=t||{},n=r.profile,i=n.title,o=n.givenName,s=n.familyName,l=n.email,c=n.telephones.preferred,u=n.vehicles.preferred,d=n.addresses.preferred,p=n.tripappMetadata,m=r.userExtId,f=r.vouchers,h=f===void 0?{}:f,g=r.liveChatHistory,v=r.upcomingTrips;return{title:i,first_name:o,last_name:s,email:l,userExtId:m,contact_number:c&&c.number,vehicle:p&&u&&{car_colour:u.colour,car_make:u.manufacturer,car_model:u.model,id:u.id,registration:u.registration,user_id:p.railsUserID},address:p&&d&&{id:d.id,user_id:p.railsUserID,address_1:d.addressLines[0],address_2:d.addressLines[1],address_3:d.addressLines[2],town:d.locality,county:d.region,postcode:d.postalCode,country:d.country},vouchers:h,liveChatHistory:g,upcomingTrips:v}};var p=function e(t){var a=b();var r=a!==""?"recognised":"new_user";R.inline("logged_in_status",r);v(a);if(t){R.inline("login_failed","1");i({type:"LOGIN_FAILED",data:true})}};var m=function e(t,a){if(t||a.status===404||!a.body||a.body.errors)return p(false);s(a)};var f=function e(t){var a=c(),r=a.auth;try{A.post(r.url).set("Content-Type","application/json").send(JSON.stringify({query:r.query})).withCredentials().end(t)}catch(e){}};var h=function e(){var t=L.getQueryData();if(!t)return f(m);var a=function e(t){if(!t||!t.match(/(.+)(@|%40|%2540)(.+).(.+)/))return;var a=typeof window!=="undefined"?window.location.host.replace("www.",".").replace("local.",".").split(":")[0]:null;I.setCookie("Email",t,null,a);return f(m)};if(t["email"])I.hashToEmail(t["email"],a);else if(t["user_ext_id"])I.hashToEmail(t["user_ext_id"],a);else return f(m)};var g=function e(t,a,r){var n=o.trackingPrefix?o.trackingPrefix:"";if(t||a.status===404||!a.body||!a.body.data||!a.body.data.hasAccount){k(r);R.inline(n+"not_valid_user_email","1");return R.track(null,{customer_state:"recognised_with_email"},"customer_state")}R.inline(n+"valid_user_email","1");R.track(null,{customer_state:"recognised_with_account"},"customer_state");i({type:"VALID_USER",data:r})};var v=function e(a){var t=c(),r=t.userExists,n=r.url,i=r.query;if(!a||!i){R.track(null,{customer_state:"unrecognised"},"customer_state");return}i.variables.email=a.replace("+","%2b");try{A.post(n).set("Content-Type","application/json").send(JSON.stringify({query:i.query,variables:i.variables})).withCredentials().end(function(e,t){return g(e,t,a)})}catch(e){}};var y=function e(r){var t=c(),a=t.userExists,n=a.url,i=a.query;if(!r||!i){R.track(null,{customer_state:"unrecognised"},"customer_state");return}i.variables.email=r.replace("+","%2b");return A.post(n).set("Content-Type","application/json").send(JSON.stringify({query:i.query,variables:i.variables})).withCredentials().then(function(e){var t,a;g(false,e,r);return e===null||e===void 0?void 0:(t=e.body)===null||t===void 0?void 0:(a=t.data)===null||a===void 0?void 0:a.hasAccount})["catch"](function(e){g(true,e,r);console.log("err",e);return false})};var b=function e(){return I.getCookie("email")||I.getCookie("Email")||""};var k=function e(t){i({type:"INVALID_USER",data:t})};var D=function e(){var t=o.trackingPrefix?o.trackingPrefix:"";tracker.inline("auto_capture",{name:t+"sent_magic_link"});if(!C)return;i({type:"SENT_MAGICLINK",data:true})};var w=function e(l){return new Promise(function(t,a){var e=l.replace("+","%2b")||b();if(!e)return a(new Error("undefined email address"));var r=c(),n=r.sendMagicLoginLink;var i=L.getQueryData();var o=i.referrer?i.referrer:window.location.href;var s={email:e,masterBrand:"HX",urlForEmail:encodeURI(o)};A.post(n.url).set("Content-Type","application/json").send(JSON.stringify({query:n.query.query,variables:s})).withCredentials().then(function(e){if(!e||!e.body||!e.body.data||!e.body.data.requestCustomerMagicLoginLinkEmail){return a()}D();t()})["catch"](a)})};var E=function e(t){var a=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var n=u(),i=n.magicLinkUrl;var o=t.replace("+","%2b")||b();if(!o||!i)return false;var s=L.getQueryData();var l=s.referrer?s.referrer:"https://"+window.location.host+(a?"/".concat(a):"");return A.get("//static1.holidayextras.com/responsysEmailSignUpProxy.php?EMAIL_ADDRESS_="+o+"&ORIGIN="+encodeURI(l)+"&_ri_="+i+"&charset_=ISO-8859-1"+(r?"&autocreate=1":"")).then(function(e){D();return e})["catch"](function(e){console.log("err",e);return false})};var N=function e(){i({type:"TRIGGER_LOGIN"})};var S=function e(){i({type:"TRIGGER_LOGIN_HIDE"})};return{invalidUser:k,userLogout:t,userLogin:h,userLogoutResponse:r,getLoginConfig:u,getLoginAuthConfig:c,loginGetEmailCookie:b,validateTripappUser:v,loginSubmitMagicLink:w,loginTripappUser:a,validatedTripappUser:g,triggerLogin:N,triggerLoginHide:S,validateTripappUserV2:y,loginSubmitMagicLinkV2:E,loginTripappUserV2:l}};e.exports={mapStateToProps:r,mapDispatchToProps:n}},,,,function(e,t){e.exports=Redux},function(e,t,a){var r=a(96);var n=a(97);var i=a(100);var o=a(101);var s=a(102);var l={liveChatData:i,loggedInData:o,hxBreaksData:n,agentData:r,splitTestData:s};e.exports=l},function(e,t){var r={OptionFlags:{}};if(typeof window!=="undefined"){r=Object.assign({},r,window.agentReduxStore||{})}var a=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:r;var a=arguments.length>1?arguments[1]:undefined;switch(a.type){case"UPDATE":return a.data;default:return t}};e.exports=a},function(e,t,a){var r=a(43);function n(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),a.push.apply(a,r)}return a}function i(t){for(var e=1;e0&&arguments[0]!==undefined?arguments[0]:o;var a=arguments.length>1?arguments[1]:undefined;switch(a.type){case"SET_ATTRACTION":{return i(i({},t),{},{selectedAttraction:a.attraction})}default:{return t}}};e.exports=s},,,function(e,t,a){var r=a(43);function n(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),a.push.apply(a,r)}return a}function i(t){for(var e=1;e0&&arguments[0]!==undefined?arguments[0]:o;var a=arguments.length>1?arguments[1]:undefined;switch(a.type){case"CHAT_OPENED":return i(i({},t),{},{chatOpen:true,chatDepartment:a.data.department,chatLang:a.data.lang,chatMinimized:false});case"CHAT_CLOSED":return i(i({},t),{},{chatOpen:false});case"CHAT_MINIMIZED":return i(i({},t),{},{chatMinimized:a.data.chatMinimized});default:return t}};e.exports=s},function(e,t){var n=function e(){return{forceLogin:false,accountStatus:false,validUser:false}};var a=typeof window!=="undefined"?window.loginReduxState||{}:{};var i=Object.assign({},n(),a);if(a.email){i.accountStatus="active";i.validUser=true}var r=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:i;var a=arguments.length>1?arguments[1]:undefined;switch(a.type){case"LOGOUT":{return Object.assign({},n(),{accountStatus:false,validUser:t.validUser})}case"LOGIN":{var r={accountStatus:"active",validUser:true};if(t.email)r.email=t.email;return Object.assign({},n(),i,a.data,r)}case"LOGIN_FAILED":{return Object.assign({},n(),t,{failedLogin:a.data,accountStatus:"checked_failed",email:t.email,forceLogin:false})}case"VALID_USER":{return Object.assign({},n(),t,{validUser:!!a.data,accountStatus:"checked_valid",email:a.data})}case"INVALID_USER":{return Object.assign({},n(),t,{validUser:false,accountStatus:"checked_invalid",email:a.data})}case"SENT_MAGICLINK":{return Object.assign({},n(),t,{sentMagicLink:a.data,validUser:t.validUser,accountStatus:t.accountStatus,email:t.email})}case"TRIGGER_LOGIN":{return Object.assign({},t,{forceLogin:true})}case"TRIGGER_LOGIN_HIDE":{return Object.assign({},t,{forceLogin:false})}default:{return Object.assign({},i,n(),t)}}};e.exports=r},function(e,t){var r={};var a=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:r;var a=arguments.length>1?arguments[1]:undefined;switch(a.type){case"INITIALISE_TEST":t[a.data.name]={active:a.data.status};return t;case"INJECT_TEST_DATA":if(!Object.prototype.hasOwnProperty.call(t,a.data.name))return t;Object.assign(t[a.data.name],a.data.newSplitTestData);return t;default:return t}};e.exports=a},function(e,t){var a="";e.exports={tripapp:{path:"https://v2.holidayextras.de/"},auth:{login:"".concat(a,"/dock-yard/tripapp-rails/users/sign_in.json"),url:"".concat(a,"/dock-yard/traveller-api/graphql"),logout:"".concat(a,"/dock-yard/tripapp-rails/users/sign_out.json?_method=delete"),query:"fragment vehicle on Vehicle {\n id\n label\n manufacturer\n model\n colour\n registration\n }\n\n fragment telephone on Telephone {\n id\n label\n number\n }\n\n fragment address on Address {\n id\n label\n addressLines\n locality\n region\n postalCode\n country\n }\n\n fragment trip on Trip {\n id\n lag\n to\n from\n departureShortName\n destinationShortName\n bookings {\n agent\n bookingRef\n unprefixedBookingRef\n bookingStatus\n manageBookingLink\n products {\n primary {\n code\n type\n normalisedType\n content {\n name\n }\n }\n }\n }\n recommendations {\n index\n productType\n normalisedProductType\n action {\n type\n value\n }\n content {\n heading\n image\n summary\n }\n }\n }\n\n fragment card on Card {\n id\n label\n paymentRef\n # cardHolderName\n lastFourDigits\n expiryDate\n issuer\n isCredit\n }\n\n fragment debit on DirectDebit {\n id\n label\n paymentRef\n agentCode\n accountHolderName\n lastFourDigits\n }\n\n query {\n getTraveller {\n userExtId\n profile {\n title\n givenName\n familyName\n email\n telephones {\n preferred {\n ...telephone\n }\n other {\n ...telephone\n }\n }\n vehicles {\n preferred {\n ...vehicle\n }\n other {\n ...vehicle\n }\n }\n addresses {\n preferred {\n ...address\n }\n other {\n ...address\n }\n }\n paymentMethods {\n cards {\n isPreferredPaymentMethod\n preferred {\n ...card\n }\n other {\n ...card\n }\n }\n directDebits {\n isPreferredPaymentMethod\n preferred {\n ...debit\n }\n other {\n ...debit\n }\n }\n }\n tripappMetadata {\n autoGeneratedPassword\n hasCompleteBookings\n railsUserID\n }\n }\n upcomingTrips {\n ...trip\n }\n pastTrips {\n ...trip\n }\n }\n }"},userExists:{url:"https://v2.holidayextras.de/dock-yard/traveller-api/graphql",query:{query:"query UserExists($email: String!){hasAccount(email: $email)}",variables:{email:""}}}}},function(e,t){var a="production"!=="production";e.exports={header:"Login",headerThankYou:"Vielen Dank",isLoginLink:false,noValidUser:"Du hast kein Benutzerkonto? Du kannst deine Buchung auch mit deiner Buchungsreferenz und der E-Mail-Adresse aufrufen.",magicLink:"Passwort vergessen. Sende mir einen Anmelde-Link zu.",magicLinkUrl:"X0Gzc2X%3DYQpglLjHJlYQGszei3FqTzgcrWhLC6rgwkGMmzaaUc4ERlbUk9CDRVwjpnpgHlpgneHmgJoXX0Gzc2X%3DYQpglLjHJlYQGkXTumvmw5tFLCtiihzazcPL8zaaUc4ERlbUk9CDR",magicLinkSent:"Bitte überprüfe deinen Posteingang. Wir haben dir einen Anmelde-Link gesendet.",or:"oder",agentTitle:"Holiday Extras Reisebüro Login",agentCallToAction:"Reisebüro Login",loginUnsuccessful:"Geben Sie bitte Ihr aktuelles Passwort ein.",customerLoginLocation:"/de/customer-login.html",agentLoginLocation:"/de/login.html",customerTitle:"Kunden Login",emailAddress:"Email-Adresse",enterEmail:"Gib deine Email-Adresse ein",password:"Passwort",enterPassword:"Gib dein Passwort ein",customerCallToAction:function e(){return"Login"},forgottenPassword:"Passwort zurücksetzen?",createAccountLink:"https://create-account".concat(a?"-staging":"",".holidayextras.co.uk/validate"),customerLogout:"Abmelden",hello:"Hallo",your_account:"Dein Benutzerkonto",yourBookings:"Deine Übersicht",tripsAndBookings:{url:"https://v2.holidayextras.de/static/#/mytrips",label:"Deine Übersicht"},personalDetails:{url:"https://v2.holidayextras.de/static/?#/users/profile?lang=en",label:"Persönliche Daten"},resetPasswordUrl:"/de/static/?#/users/password/new",resetPasswordText:"Passwort vergessen?",welcomeBackMsg:"Willkommen zurück",welcomeBackMsgText:'Wenn du Fragen hast, helfen wir dir gerne weiter. ',incorrectEmailPassword:"Falsche E-Mail-Adresse oder falsches passwort",goodEvening:"Guten Abend",goodMorning:"Guten Morgen",goodAfternoon:"Guten Tag",heyWelcomeBack:'Hi[NAME]! Willkommen zurück bei Holiday Extras 👋',loginPopoverSell1:"Es ist ganz einfach: Uns gibt es, weil du weniger Stress und mehr Urlaub verdient hast..",loginPopoverSell2:"Mit deinen gespeicherten Daten im Handumdrehen gebucht!"}},function(e,t,a){"use strict";var o=a(106);var i=a(5);var r={getQueryData:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(typeof window==="undefined")return false;var a=window.location.search;if(t){var r=window.location.hash;var n=r.indexOf("?");a=n===-1?"":r.slice(n+1)}a.replace(/\+/g," ").replace(/%\s/g,"%25").replace(/%$/,"%25").replace(/%&/g,"%25&");var i=o.parse(a);if(i.adcode){i.adcode=i.adcode.toUpperCase()}return i},searchQueryStringAndSet:function e(t,a){if(!t)return false;var r=this.getQueryData(a);var n=false;if(Object.keys(r).length){t.map(function(e){if(e.match("email")&&r[e]){if(r[e].match(/(.+)(@|%40|%2540)(.+).(.+)/))return;i.hashToEmail(r[e],function(e){i.setCookie("email",e)})}else{if(r[e])n=r[e]}})}return n},ppcData:function e(){var t=this.getQueryData();if(!t)return false;var a={ppcmsg:t.ppcmsg||"",adcode:t.adcode||"",lgpStyleSplit:t.lgp_style_split||"alternative",keyword:t.keyword||""};return a}};e.exports=r},,,function(e,t){var a=function e(t){return{hxBreaksData:t.hxBreaksData}};var r=function e(a){var t=function e(t){a({attraction:t,type:"SET_ATTRACTION"})};return{setAttraction:t}};e.exports={mapStateToProps:a,mapDispatchToProps:r}},function(e,t,a){var u=a(4);var d=a(5);var r=a(24),p=r.splitTests;var n=function e(t){return{splitTestData:t.splitTestData}};var i=function e(o){var s=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=function e(t,a){if(!t)return false;if(t.match(/_/))t=l(t);return Boolean(a[t])};var a=function e(t,a){if(!t)return false;if(t.match(/_/))t=l(t);t=a[t]||{};return t.active||false};var r=function e(t,a){if(!t||u(a)!=="object")return false;if(t.match(/_/))t=l(t);o({type:"INJECT_TEST_DATA",data:{name:t,newSplitTestData:a}})};var l=function e(t){return t.replace(/(_\w)/g,function(e){return e[1].toUpperCase()})};var c=function e(){var t=navigator.userAgent.match(/MSIE (\d+\.\d+);/);if(t instanceof Array&&t.length>1)return t[1]/1;return false};var n=function e(t){if(!t||!t.name||!t.percentage)return false;if(typeof window==="undefined"||t.percentage<100&&d.getParameterByName("ignoreSplitTests",false)&&!d.getParameterByName(t.name,false))return false;var a=s.pageData,r=a===void 0?{}:a;if(t.pattern&&!r.pageName.match(t.pattern))return false;var n=false;if(t.discludeIE){t.discludeIE.map(function(e){if(c()===e)n=true})}if(n)return false;var i=d.isSplitTest(t.name,t.percentage,t.expiry);o({type:"INITIALISE_TEST",data:{name:l(t.name),status:i}});return i};var i=function e(t){if(!p)return 0;return Number(p[t])||0};return{splitTestInitialised:t,splitTestIsActive:a,injectSplitTestData:r,initialiseSplitTest:n,splitTestsPercentage:i}};e.exports={mapStateToProps:n,mapDispatchToProps:i}},function(L,e,t){"use strict";t.r(e);var a=t(1);var r=t.n(a);var n=t(0);var x=t.n(n);var i=t(9);var o=t.n(i);var s=function(e){r()(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.render=function e(){var t=this.props.domainSettings,a=t.scheme,r=t.domain;var n=o()({navbar:true,"navbar-default":true,"navbar-static-top":true,"hidden-print":true});return x.a.createElement("nav",{className:n,role:"navigation"},x.a.createElement("a",{className:"navbar-brand",href:"".concat(a,"://").concat(r)},"Holiday Extras"))};return t}(x.a.Component);var A=s;var l=t(44);var c=t.n(l);var u=t(16);var d=t.n(u);var p=t(5);var m=t.n(p);var g=t(2);var f=t.n(g);var h=t(10);var v=t.n(h);var y=t(6);var b=t.n(y);var k=function(a){r()(e,a);function e(e){var t;t=a.call(this,e)||this;t.state={status:"hidden",statusText:""};return t}var t=e.prototype;t.componentDidMount=function e(){this.updateStatus()};t.shouldComponentUpdate=function e(t,a){if(JSON.stringify(t.flightData)!==JSON.stringify(this.props.flightData))return true;if(JSON.stringify(a.status)!==JSON.stringify(this.state.status))return true;return false};t.componentDidUpdate=function e(){this.updateStatus()};t.updateStatus=function e(){this.getFlightStatus();if(window.flightStatusTimeout)clearInterval(window.flightStatusTimeout);window.flightStatusTimeout=setInterval(this.getFlightStatus,3e5)};t.getFlightStatus=function e(){var a=this;var t=this.props,r=t.flightData.flight,n=t.flightStatus;var i=b.a.alterDateByNumberOfDays(new Date,"+60");var o=new Date;var s="".concat(n.url).concat(r.code.toLowerCase(),"/?lang=de&siteCode=DE-HX&status=1&departDate=").concat(b.a.nativeDateToIso(o),"&returnDate=").concat(b.a.nativeDateToIso(i));v.a.get(s).end(function(e,t){if(e)return false;if(!t||t.status===404||!t.body)return false;if(!t.body[0]||!t.body[0].flightStats||!t.body[0].flightStats.flightStatuses)return false;a.setState({status:t.body[0].flightStats.flightStatuses[0].status})})};t.translateStatus=function e(t){switch(t){case"A":return"Unterwegs";case"C":return"Abgebrochen";case"NO":return"Nicht funktionsfähig";case"L":return"Gelandet";case"R":return"Weitergeleitet";case"U":return"Unbekannte";default:return"Planmäßig"}};t.render=function e(){var t=this.state.status,a=t.status,r=t.statusText;if(a==="hidden")return null;var n=this.translateStatus(r);var i=o()({label:true,flight:true,"label-success":a==="S"||a==="A"||a==="L","label-info":a==="R","label-danger":a==="U"||a==="C"||a==="NO"});if(!r)return null;return x.a.createElement("span",{className:i},n)};return e}(x.a.Component);var D=k;var w=function(e){r()(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.render=function e(){var t=this.props.flightData,a=t.flight,r=t.departure,n=t.arrival;var i=o()({jumbotron:true,"jumbotron-cover":true,"jumbotron-overlay":true});return x.a.createElement("div",{className:i},x.a.createElement("div",{className:"container-fluid"},x.a.createElement("div",{className:"col-lg-6 col-lg-offset-1 col-md-offset-1 col-sm-offset-1 block-sm"},x.a.createElement("h1",null,a.carrier.name," Flugnummer ",a.code),x.a.createElement("p",{className:"lead"},"von ",f.a.displayCity(r),", ",r.country," nach ",f.a.displayCity(n),", ",n.country),x.a.createElement(D,{flightData:this.props.flightData,flightStatus:this.props.flightStatus})),x.a.createElement("div",{className:"col-lg-3 col-lg-offset-1 col-md-offset-1 col-sm-offset-1 departureInfo"},x.a.createElement("div",{className:"col-lg-12 col-sm-4 block-sm"},x.a.createElement("h5",null,"Datum und Uhrzeit:"),x.a.createElement("h3",{className:"text-white"},f.a.formatDateToDMY(new Date(r.dateFull))," - ",r.time)),x.a.createElement("div",{className:"col-lg-6 col-sm-4 col-xs-6 block-sm"},x.a.createElement("h5",null,"von"),x.a.createElement("h3",{className:"text-white"},f.a.displayCity(r))),x.a.createElement("div",{className:"col-lg-6 col-sm-4 col-xs-6 block-sm"},x.a.createElement("h5",null,"nach"),x.a.createElement("h3",{className:"text-white"},f.a.displayCity(n))))))};return t}(x.a.Component);var C=w;var E=function(e){r()(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.generateFlightList=function e(){var t=this.props,a=t.allFlightData,r=t.flightCode;var n=0;if(!a.length)return null;return a.map(function(e){var t=f.a.formatDateToDddMMyy(e);var a="/de/flug/".concat(r,"/").concat(e.split("T")[0],".html");n++;if(n===1||n>6)return;return x.a.createElement("li",{key:n,className:"list-group-item list-group-item-lg"},x.a.createElement("a",{href:a,rel:"nofollow"},t," - ",e.split("T")[1].split(":00.000")[0]))})};a.render=function e(){var t=this.props.flightCode;if(t==="")return null;return x.a.createElement("div",{className:"col-md-4"},x.a.createElement("ul",{className:"list-group bg-default"},x.a.createElement("li",{className:"list-group-item list-group-item-lg"},x.a.createElement("h3",{className:"list-group-item-heading"},"Anstehende ",t," Abflüge"),x.a.createElement("p",{className:"list-group-item-text"},"Klicke hier, um deine Flugabfrage zu starten:")),this.generateFlightList(),x.a.createElement("li",{className:"list-group-item list-group-item-lg"},x.a.createElement("a",{href:"#",className:"component-button small primary btn-block picker-invoke"},x.a.createElement("i",{className:"icon icon--calendar"})," Weitere Termine"),x.a.createElement("input",{type:"hidden",className:"hidden",name:"hidden-picker"}))))};return t}(x.a.Component);var O=E;var N=function(e){r()(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.render=function e(){var t=this.props.airlineInformation,a=t.name,r=t.checkedLuggageMaxSize,n=t.checkedLuggageMaxWeight,i=t.handLuggageMaxPerPerson,o=t.handLuggageMaxSize,s=t.handLuggageMaxWeight;return x.a.createElement("div",{className:"bg-default"},x.a.createElement("div",{className:"container block-lg"},x.a.createElement("div",{className:"col-xs-12"},x.a.createElement("div",{className:"page-header"},a&&x.a.createElement("h3",{className:"h2"},"Freigepäckbestimmungen für ",a),x.a.createElement("div",{className:"sub-heading"},"Bitte überprüfe immer die Gepäckbestimmungen bevor du deine Reise antrittst")),x.a.createElement("div",{className:"col-lg-12"},x.a.createElement("p",null,"Die Freigepäckmenge variiert je nach Strecke, Sitzklasse und Fluglinie und unterliegt den ständig wechselnden Luftverkehrsvorschriften. In der Regel können Übergepäck und Sondertransporte gegen einen Aufpreis mitgeführt werden."),x.a.createElement("ul",{className:"list-unstyled"},r&&x.a.createElement("li",{className:"block-xs"},x.a.createElement("h4",null,"Maße Reisegepäck:")," ",r),n&&x.a.createElement("li",{className:"block-xs"},x.a.createElement("h4",null,"Gewicht Reisegepäck:")," ",n),i&&x.a.createElement("li",{className:"block-xs"},x.a.createElement("h4",null,"Anzahl Handgepäckstücke pro Person:")," ",i),o&&x.a.createElement("li",{className:"block-xs"},x.a.createElement("h4",null,"Maße Handgepäck:")," ",o),s&&x.a.createElement("li",{className:"block-xs"},x.a.createElement("h4",null,"Gewicht Handgepäck:")," ",s)),x.a.createElement("p",null,"Bitte achte darauf, dass sich diese Informationen ändern können: Deshalb prüfe immer die Webseiten der Fluggesellschaften und der Flughäfen, bevor du mit dem Packen beginnst.")))))};return t}(x.a.Component);var P=N;var B=function(a){r()(e,a);function e(e){var t;t=a.call(this,e)||this;t.state=t.reset();return t}var t=e.prototype;t.componentDidMount=function e(){this.fetchAll(this.props)};t.componentDidUpdate=function e(t){var a=this.props,r=a.agentData,n=r===void 0?{}:r,i=a.flightData,o=i===void 0?{}:i;var s=t.agentData,l=s===void 0?{}:s;if(l.agent!==n.agent)return this.fetchAll(this.props);if(JSON.stringify(o)!==JSON.stringify(t.flightData)){this.setState(this.reset());this.fetchAll(this.props)}};t.reset=function e(){return{products:{cp:{state:"loading",count:0,cheapestPrice:0},ho:{state:"loading",count:0,cheapestPrice:0},hcp:{state:"loading",count:0,cheapestPrice:0},lo:{state:"loading",count:0,cheapestPrice:0}}}};t.fetchAll=function e(t){this.fetchProducts("cp",t);this.fetchProducts("hcp",t);this.fetchProducts("ho",t);this.fetchProducts("lo",t)};t.fetchProducts=function e(a,t){var r=t.flightData,n=r.departure,i=r.arrival,o=r.flight,s=t.agentData,l=s.agent,c=s.typeRID,u=s.groupCode,d=t.locations,p=t.settings;var m={selectProduct:a,startDate:n.date,agent:l,channel:c,agentgroup:u,Location:n.airport_iata,terminal:n.terminal?n.terminal:false,arrivalTime:i.time?i.time:"12:00",departureTime:n.time?n.time:"13:00",flightCode:o.code};console.log(d);if(!d[d.locationsMap[a]]||!d[d.locationsMap[a]].hasOwnProperty(n.airport_iata))return;var f={};var h=Object(g["buildHapiUrl"])(p,m);f.submitUrl=h.submitUrl;f.state="available";this.setState(function(e){var t=e.products;t[a]=f;return{products:t}})};t.render=function e(){var t=this.state.products,a=t.cp,r=t.ho,n=t.hcp,i=t.lo;var o=this.props,s=o.flightData.departure,l=o.locations,c=o.products;return x.a.createElement("div",{className:"col-md-8"},x.a.createElement("ul",{className:"list-group list-group-lg list-unstyled",id:"productList"},l.carParking[s.airport_iata]&&x.a.createElement("li",{className:"list-group-item-container bg-default"},x.a.createElement("div",{className:c.listItemClass[a.state]},x.a.createElement("div",{className:"row flight-product"},x.a.createElement("i",{className:c.iconClass[a.state]}),x.a.createElement("i",{className:"icon fas fa-parking left-icon hidden-xs"}),x.a.createElement("div",{className:"col-lg-6"},x.a.createElement("h3",{className:"list-group-item-heading"},s.airport," Parken am Flughafen")),a.state==="available"&&x.a.createElement("div",{className:"col-lg-4 product-price"},x.a.createElement("a",{href:a.submitUrl,className:"component-button small primary",target:"_blank"},x.a.createElement("i",{className:"icon icon--search"}),"Suchen"))))),l.lounges[s.airport_iata]&&x.a.createElement("li",{className:"list-group-item-container bg-default"},x.a.createElement("div",{className:c.listItemClass[i.state]},x.a.createElement("div",{className:"row flight-product"},x.a.createElement("i",{className:c.iconClass[i.state]}),x.a.createElement("i",{className:"icon fas fa-couch left-icon hidden-xs"}),x.a.createElement("div",{className:"col-lg-6"},x.a.createElement("h3",{className:"list-group-item-heading"},s.airport," Airport Lounges")),i.state==="available"&&x.a.createElement("div",{className:"col-lg-4 product-price"},x.a.createElement("a",{href:i.submitUrl,className:"component-button small primary",target:"_blank"},x.a.createElement("i",{className:"icon icon--search"}),"Suchen"))))),l.hotels[s.airport_iata]&&x.a.createElement("li",{className:"list-group-item-container bg-default"},x.a.createElement("div",{className:c.listItemClass[n.state]},x.a.createElement("div",{className:"row flight-product"},x.a.createElement("i",{className:c.iconClass[n.state]}),x.a.createElement("i",{className:"icon fas fa-suitcase left-icon hidden-xs"}),x.a.createElement("div",{className:"col-lg-6"},x.a.createElement("h3",{className:"list-group-item-heading"},s.airport," Hotels mit Parken")),n.state==="available"&&x.a.createElement("div",{className:"col-lg-4 product-price"},x.a.createElement("a",{href:n.submitUrl,className:"component-button small primary",target:"_blank"},x.a.createElement("i",{className:"icon icon--search"})," Suchen"))))),l.hotels[s.airport_iata]&&x.a.createElement("li",{className:"list-group-item-container bg-default"},x.a.createElement("div",{className:c.listItemClass[r.state]},x.a.createElement("div",{className:"row flight-product"},x.a.createElement("i",{className:c.iconClass[r.state]}),x.a.createElement("i",{className:"icon fas fa-suitcase left-icon hidden-xs"}),x.a.createElement("div",{className:"col-lg-6"},x.a.createElement("h3",{className:"list-group-item-heading"},s.airport," Hotels ohne Parken")),r.state==="available"&&x.a.createElement("div",{className:"col-lg-4 product-price"},x.a.createElement("a",{href:r.submitUrl,className:"component-button small primary",target:"_blank"},x.a.createElement("i",{className:"icon icon--search"})," Suchen")))))))};return e}(x.a.Component);var F=B;var H=function(e){r()(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.render=function e(){var t=this.props,a=t.flightData,r=t.flightStats,n=t.weatherData,i=t.arrivalInfo,o=t.flightLinks,s=t.terminalConvert;var l="http://www.lonelyplanet.com/searchResult?q="+a.arrival.city;return x.a.createElement("div",{className:"bg-primary"},x.a.createElement("div",{className:"container block-lg"},x.a.createElement("div",{className:"col-xs-12"},x.a.createElement("div",{className:"page-header"},x.a.createElement("h3",{className:"h2"},"Informationen zum Abflug- und Zielflughafen"),x.a.createElement("div",null,"Unsere nützlichen Links helfen dir am Flughafen weiter")),x.a.createElement("div",{className:"col-lg-6"},x.a.createElement("h4",null,f.a.displayCity(a.departure)),x.a.createElement("table",{className:"table"},x.a.createElement("thead",null),x.a.createElement("tbody",null,x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Abflughafen"),x.a.createElement("td",null,a.departure.airport_iata)),a.departure.terminal&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Terminal"),x.a.createElement("td",null,o.terminal&&s[a.departure.terminal]&&x.a.createElement("a",{href:o.terminal},s[a.departure.terminal]),!o.terminal&&s[a.departure.terminal])),x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Lage"),x.a.createElement("td",null,f.a.displayCity(a.departure),", ",a.departure.country," ")),x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Datum"),x.a.createElement("td",null,f.a.formatDateToDddMMyy(a.departure.dateFull))),x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Abflugzeit (Ortszeit)"),x.a.createElement("td",null,a.departure.time)),o.departures&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Abflüge"),x.a.createElement("td",null,x.a.createElement("a",{href:o.departures,title:a.departure.city+" "+a.departure.airport+" Departure Board"},a.departure.city," ",a.departure.airport," Abflüge"))),o.arrivals&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Ankünfte"),x.a.createElement("td",null,x.a.createElement("a",{href:o.arrivals,title:a.departure.city+" "+a.departure.airport+" Arrival Board"},a.departure.city," ",a.departure.airport," Ankünfte")))))),x.a.createElement("div",{className:"col-lg-6"},x.a.createElement("h4",null,f.a.displayCity(a.arrival)),x.a.createElement("table",{className:"table"},x.a.createElement("thead",null),x.a.createElement("tbody",null,x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Zielflughafen"),x.a.createElement("td",null,a.arrival.airport_iata)),x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Lage"),x.a.createElement("td",null,o.destination&&x.a.createElement("a",{href:o.destination},f.a.displayCity(a.arrival),", "),a.arrival.country)),x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Datum"),x.a.createElement("td",null,f.a.formatDateToDddMMyy(a.arrival.dateFull))),r&&r.flightStatuses&&r.flightStatuses[0]&&r.flightStatuses[0].arrivalDate&&r.flightStatuses[0].arrivalDate.dateLocal&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Ankunftszeit"),x.a.createElement("td",null,f.a.formatISOStringToDateTime(r.flightStatuses[0].arrivalDate.dateLocal))),n&&n.daily&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Wetter"),x.a.createElement("td",null,"Höchsttemperatur ",Math.floor(n.daily.data[0].temperatureMax),"℃, Tiefsttemperatur ",Math.floor(n.daily.data[0].temperatureMin),"℃ ")),i&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Währung"),x.a.createElement("td",null,i.currency_name," ",x.a.createElement("a",{target:"_blank",href:"/geld-wechseln.html?utm_medium=foc&utm_source=flightpage&utm_campaign=flymoney"},"Währung kaufen"))),i&&x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Sprache"),x.a.createElement("td",null,i.language)),x.a.createElement("tr",null,x.a.createElement("th",{scope:"row"},"Lonely Planet"),x.a.createElement("td",null,x.a.createElement("a",{href:l,target:"_blank"},"Reiseführer")," "))))))))};return t}(x.a.Component);var U=H;var j=t(17);var S=t.n(j);var T=t(11);var G=function(a){r()(e,a);function e(e){var t;t=a.call(this,e)||this;t.state={allMarkers:[],markers:[],polyline:[]};t.createMarkersAndPolyline=t.createMarkersAndPolyline.bind(S()(t));t.insertPolyline=t.insertPolyline.bind(S()(t));t.insertMarkers=t.insertMarkers.bind(S()(t));return t}var t=e.prototype;t.componentDidMount=function e(){this.createMarkersAndPolyline()};t.createMarkersAndPolyline=function e(){this.setState({allMarkers:this.insertMarkers(true),markers:this.insertMarkers(),polyline:this.insertPolyline()})};t.insertPolyline=function e(){var t=this.props.airports;var a=t.reduce(function(e,t){var a=t.latitude,r=t.longitude;e.push({lat:a,lng:r});return e},[]);return[x.a.createElement(T["Path"],{key:"poly_"+Date.now(),points:a,weight:"2",color:"black",geodesic:true})]};t.insertMarkers=function e(a){var t=this.props.airports;var r=t.reduce(function(e,t){if(a){e.push({lat:t.latitude,lng:t.longitude,icao:t.icao});return e}e.push(x.a.createElement(T["Marker"],{key:"pin_"+t.icao+Date.now(),location:{lat:t.latitude,lng:t.longitude}}));return e},[]);return r};t.render=function e(){var t=this.state,a=t.markers,r=t.polyline;if(!a.length||!r.length)return null;return x.a.createElement("div",{id:"theMap"},x.a.createElement(T["StaticGoogleMap"],{scale:"2",size:"640x165",apiKey:"AIzaSyBABuXTOM9ZyVExDMrz748ooMMOIfzOlq0",style:{width:"100%"}},x.a.createElement(T["Marker"].Group,{label:"Airports",size:"tiny"},a),r))};return e}(x.a.PureComponent);var z=G;var _=t(3);var R=function e(t){return x.a.createElement("div",{className:"bg-default"},x.a.createElement("div",{className:"container block-lg"},x.a.createElement("div",{className:"col-xs-12"},x.a.createElement("div",{className:"page-header"},x.a.createElement("h3",{className:"h2"},t.title),x.a.createElement("div",{className:"sub-heading"},t.description)),x.a.createElement("div",{className:"col-lg-12",dangerouslySetInnerHTML:{__html:t.content}}))))};R.propTypes={title:_["string"],description:_["string"],content:_["string"]};var V=R;var I=function(e){r()(t,e);function t(){return e.apply(this,arguments)||this}var a=t.prototype;a.renderWeather=function e(){var t=this.props,r=t.weatherData,n=t.weatherIcons;return Object.keys(r.daily.data).map(function(e){var t=r.daily.data[e];if(e>5)return null;var a=new Date(t.time*1e3);return x.a.createElement("div",{className:"component-weather",key:t.time},x.a.createElement("div",{className:n[t.icon]},x.a.createElement("span",null,t.summary)),x.a.createElement("div",null,b.a.getFullDay(a.getDay(),"DE")),x.a.createElement("div",null,x.a.createElement("span",null,"High ",Math.floor(t.temperatureMax)),x.a.createElement("abbr",{title:"Degrees Celsuis"},"°C")))})};a.render=function e(){var t=this.props,a=t.city,r=t.country,n=t.weatherData;if(a===""||r===""||Object.keys(n).length===0||!n.daily)return null;var i=this.renderWeather();return x.a.createElement("section",{className:"trip-weather"},x.a.createElement("div",{className:"block-md bg-primary"},x.a.createElement("div",{className:"container"},x.a.createElement("div",{className:"col-sm-4 block-sm"},x.a.createElement("div",{className:"page-header"},x.a.createElement("h3",{className:"h1"},"Der Wetterbericht für deine Reise"),x.a.createElement("div",null,"Für die nächsten 6 Tage in ",a,", ",r,"."))),x.a.createElement("div",{className:"col-sm-8 block-sm"},x.a.createElement("div",{className:"weather-components col-xs-12"},i)))))};return t}(x.a.Component);I.getDefaultProps={city:"",country:""};var K=I;var W=function e(){return x.a.createElement("footer",{className:"footer bg-secondary hidden-print"},x.a.createElement("div",{className:"block-md bg-primary"},x.a.createElement("div",{className:"container"},x.a.createElement("div",{className:"row"},x.a.createElement("div",{className:"col-xs-12"},x.a.createElement("h5",null,"Haftungsausschluss"),x.a.createElement("p",{className:"small"},"Die Fluginformationen auf www.holidayextras.de werden von externen Quellen bereitgestellt, die sich unserer Kontrolle entziehen."),x.a.createElement("p",{className:"small"},"Wir empfehlen dir dringend, dich mit deiner Fluggesellschaft oder dem jeweiligen Flughafen in Verbindung zu setzen, um dir die Fluginformationen bestätigen zu lassen, bevor du reist oder deine Reise planst. Holiday Extras übernimmt keine Verantwortung für diese Informationen, garantiert nicht deren Richtigkeit und übernimmt keine Haftung für Schäden, die dadurch entstehen, dass du dich auf diese Informationen verlassen hast."))))),x.a.createElement("div",{className:"footer-bottom block-sm small"},x.a.createElement("div",{className:"container"},x.a.createElement("div",{className:"row"},x.a.createElement("div",{className:"col-sm-7"},x.a.createElement("ul",{className:"list-inline footer-links block-xs"},x.a.createElement("li",null,x.a.createElement("a",{href:"/datenschutz.html"},"Datenschutz")))),x.a.createElement("div",{className:"col-sm-5 block-xs text-sm-right"},x.a.createElement("span",null,"© ",(new Date).getFullYear()," Holiday Extras Ltd"))))))};var Z=W;var M=function(a){r()(e,a);function e(e){var t;t=a.call(this,e)||this;if(e.agentSetup)e.agentSetup();if(e.initialSetup)e.initialSetup();return t}var t=e.prototype;t.componentDidUpdate=function e(t){if(!t.agentData.agent&&this.props.agentData.agent){this.initialLoad(this.props)}};t.initialLoad=function e(t){var a=t.agentData.agent,r=t.pageData,n=r===void 0?{}:r,i=t.group;var o=n.flightData,s=o===void 0?{}:o;var l=s.futureDepartures,c=l===void 0?[]:l;var u=t.settings.env;if(m.a.getParameterByName("data-pipeline-staging"))u="staging";if(m.a.getParameterByName("data-pipeline-production"))u="production";d.a.init({agent:a,environment:u,templateGroup:i,schemaVersions:{cache_primer:"v1.0.0",auto_capture:"v4.3.2",capture:"v4.3.2",click:"v4.4.1",load:"v3.5.1",search:"v4.0.1",focus:"v4.2.2",test:"v4.2.2"}});window.futureDepartures=c;window.universalJavascriptLoaded=true};t.render=function e(){var t=this.props,a=t.agentData,r=t.settings,n=t.pageData,i=n===void 0?{}:n,o=t.domainSettings,s=t.locations,l=t.products,c=t.weatherIcons,u=t.flightStatus,d=t.terminalConvert,p=t.allMenuData;var m=i.flightData,f=m===void 0?{}:m,h=i.flightContent,g=h===void 0?{}:h,v=i.flightStats,y=v===void 0?{}:v,b=i.arrivalInfo,k=b===void 0?{}:b,D=i.flightLinks,w=D===void 0?{}:D,E=i.weather,N=E===void 0?{}:E,S=i.airlineInfo,T=S===void 0?{}:S;console.log(u);var _=!!(Array.isArray(N)||N==="[]");return x.a.createElement("div",null,x.a.createElement(A,{domainSettings:o}),x.a.createElement(C,{flightData:f,flightStatus:u}),x.a.createElement("div",{className:"container block-sm"},x.a.createElement(F,{flightData:f,agentData:a,locations:s,products:l,settings:r}),f.flight&&f.flight.code&&x.a.createElement(O,{flightCode:f.flight.code,allFlightData:f.futureDepartures,settings:r})),Object.prototype.hasOwnProperty.call(y,"appendix")&&Object.prototype.hasOwnProperty.call(y.appendix,"appendix")&&x.a.createElement(z,{airports:y.appendix.airports}),x.a.createElement(U,{flightData:f,flightStats:y,weatherData:N,arrivalInfo:k,flightLinks:w,terminalConvert:d}),T&&x.a.createElement(P,{airlineInformation:T}),!_&&N&&f.arrival&&x.a.createElement(K,{weatherData:N,country:f.arrival.country,city:f.arrival.city,weatherIcons:c}),Object.keys(g).length!==0&&x.a.createElement(V,{title:g.title,description:g.description,content:g.content}),x.a.createElement(Z,null))};return e}(x.a.Component);M.propTypes={agents:_["object"],dataSource:_["object"],domainSettings:_["object"],locations:_["object"],pageData:_["object"].isRequired,RoomTypes:_["object"],settings:_["object"],sortOptions:_["object"],flightStatus:_["object"],terminalConvert:_["object"]};var J=e["default"]=c()(M,["agents","login"])}]);