(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{89:function(e,a,t){"use strict";t.r(a);var i=t(1),o=t.n(i),n=t(3),r=t.n(n),s=t(0),p=function(e){return e*(Math.PI/180)},l=function(e){return e*(180/Math.PI)},c={heading:function(e,a){var t=Math.sin(Math.PI*(e[0]-a[0])/180)*Math.cos(Math.PI*a[1]/180),i=Math.cos(Math.PI*e[1]/180)*Math.sin(Math.PI*a[1]/180)-Math.sin(Math.PI*e[1]/180)*Math.cos(Math.PI*a[1]/180)*Math.cos(Math.PI*(e[0]-a[0])/180);return 180*Math.atan2(t,i)/Math.PI},distance:function(e,a,t){t=this.radius||6378137;var i=Math.sin(Math.PI*(a[0]-e[0])/360),o=Math.sin(Math.PI*(a[1]-e[1])/360),n=o*o+i*i*Math.cos(Math.PI*e[1]/180)*Math.cos(Math.PI*a[1]/180);return 2*t*Math.atan2(Math.sqrt(n),Math.sqrt(1-n))},radial:function(e,a,t,i,o){o=this.radius||6378137;var n,r=p(a),s=t/o,c=p(e[0]),d=p(e[1]),u=Math.asin(Math.sin(d)*Math.cos(s)+Math.cos(d)*Math.sin(s)*Math.cos(r)),m=Math.atan2(Math.sin(r)*Math.sin(s)*Math.cos(d),Math.cos(s)-Math.sin(d)*Math.sin(u));return n=i?(c-m+Math.PI)%(2*Math.PI)-Math.PI:c-m+Math.PI-Math.PI,[l(n),l(u)]}};function d(e){return(d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function u(e,a){for(var t=0;t<a.length;t++){var i=a[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,m(i.key),i)}}function m(e){var a=function(e,a){if("object"!==d(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var i=t.call(e,a||"default");if("object"!==d(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===a?String:Number)(e)}(e,"string");return"symbol"===d(a)?a:String(a)}function g(e,a){return(g=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,a){return e.__proto__=a,e})(e,a)}function f(e){var a=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var t,i=h(e);if(a){var o=h(this).constructor;t=Reflect.construct(i,arguments,o)}else t=i.apply(this,arguments);return v(this,t)}}function v(e,a){if(a&&("object"===d(a)||"function"==typeof a))return a;if(void 0!==a)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function h(e){return(h=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var M=function(e){!function(e,a){if("function"!=typeof a&&null!==a)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(a&&a.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),a&&g(e,a)}(p,e);var a,t,i,n=f(p);function p(e){var a;return function(e,a){if(!(e instanceof a))throw new TypeError("Cannot call a class as a function")}(this,p),(a=n.call(this,e)).domNodeId=s.a.generateId("jsmap"),a.maps={},a}return a=p,(t=[{key:"componentDidMount",value:function(){var e=r.a.findDOMNode(this),a=this.props.url,t=void 0!==this.props.context&&null!==this.props.context?this.props.context:null;this.props.initMap(e,a,!1,t)}},{key:"render",value:function(){return o.a.createElement("div",{className:"m-map__inner u-loading",id:this.domNodeId})}}])&&u(a.prototype,t),i&&u(a,i),Object.defineProperty(a,"prototype",{writable:!1}),p}(o.a.Component);function b(e){return(b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function y(e,a){for(var t=0;t<a.length;t++){var i=a[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,k(i.key),i)}}function k(e){var a=function(e,a){if("object"!==b(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var i=t.call(e,a||"default");if("object"!==b(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===a?String:Number)(e)}(e,"string");return"symbol"===b(a)?a:String(a)}var w=null;window.inviews={};var x=function(){function e(a){return function(e,a){if(!(e instanceof a))throw new TypeError("Cannot call a class as a function")}(this,e),w||(w=this),a=void 0!==a?a:$("body"),this.maps={},this.staticMaps={},this.mapboxMaps={},this.staticMapboxMaps={},this.buttonMapboxMaps={},this.inviews={},this.infoWindow={},this.geocoder={},this.getMapboxMapStaticUrlImage=this.getMapboxMapStaticUrlImage.bind(this),this.createMap=this.createMap.bind(this),this.createStaticMap=this.createStaticMap.bind(this),this.createMapboxMap=this.createMapboxMap.bind(this),this.createMapboxMapStatic=this.createMapboxMapStatic.bind(this),this.initMap=this.initMap.bind(this),this.initStaticMap=this.initStaticMap.bind(this),this.initStaticMapsSlider=this.initStaticMapsSlider.bind(this),this.initMapboxMap=this.initMapboxMap.bind(this),this.addSearchGoogleMap=this.addSearchGoogleMap.bind(this),this.mapBoxAccessToken="pk.eyJ1IjoibWFwc2Npdml0YXRpcyIsImEiOiJjamk0Y3c5aW4wNzlvM3Fyd2R1azNrZ3B1In0.R18b1J2bUUagN8Za2SodXg",this.init(a),this.setUpPrint(),w}var a,t,i;return a=e,(t=[{key:"setUpPrint",value:function(){var e=this,a=!1,t=!1,i=function(a){var t,i=document.getElementById(a);i&&!i.classList.contains("_is-in-voucher")&&(i.classList.add("u-printWidth"),null===(t=e.mapboxMaps[a])||void 0===t||t.resize())},o=function(){document.querySelectorAll(".js-static-on-create").forEach((function(a){var t=a.id,i=document.getElementById(t);if(!i.classList.contains("mapboxgl-map")&&!i.querySelector("._static-image")){var o=i.dataset.urlimage||e.getMapboxMapStaticUrlImage(e.buttonMapboxMaps[t]);if(o){var n=document.createElement("img");n.classList.add("_static-image","js-hide"),n.src=o,n.alt=s.a.tr("map_string"),i.appendChild(n)}}}))},n=function(){var o=arguments.length>0&&void 0!==arguments[0]&&arguments[0];a=!0,t=!0,document.removeEventListener("keydown",l);var n=!1,r=function(){n||(n=!0,setTimeout((function(){return window.print()}),1300))},s=Object.keys(e.inviews);s.forEach((function(a){var t=e.inviews[a];"function"==typeof t.options.enter&&t.options.enter(void 0,(function(){i(a),CivAPP.preparePrint(),r()}))})),s.length&&!o||r()},r=function(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:function(){};o(),Object.keys(e.mapboxMaps).forEach(i),setTimeout(a,200)},p=function(){Object.keys(e.mapboxMaps).forEach((function(a){var t=document.getElementById(a);t&&t.classList.contains("u-printWidth")&&(t.classList.remove("u-printWidth"),setTimeout((function(){var t;return null===(t=e.mapboxMaps[a])||void 0===t?void 0:t.resize()}),100))}))},l=function(e){!a&&e.ctrlKey&&"p"===e.key&&(e.preventDefault(),n())};document.addEventListener("keydown",l),document.querySelectorAll(".activityPrintButton").forEach((function(e){e.classList.add("_is-set"),e.addEventListener("click",(function(){t?r((function(){return window.print()})):n()}))})),window.matchMedia&&window.matchMedia("print").addEventListener("change",(function(e){return e.matches?r():p()})),window.onbeforeprint=function(){var e=window.onbeforeprint||function(){};r(e)},window.onafterprint=function(){window.onafterprint,p()}}},{key:"init",value:function(e){if(s.a.isActivityDetail()||!CivAPP.isGuide||void 0!==e||CivAPP.isGuide&&void 0===e&&0===$(".m-nav-container .o-page-nav__second .--current-page").length&&$(".js-map, .js-map-static, .js-map-new, .js-map-search, .js-map-search-gm").length>0){e=void 0!==e?e:$("body");var a=this,t=e.find(".js-map"),i=e.find(".js-map-static"),n=(e.find(".js-map-static_guides"),e.find(".js-map-new")),p=e.find(".js-map-search"),l=e.find(".js-map-search-gm"),c=this.initMap,d=t.first().attr("data-url"),u=l.length>0?l.first().attr("data-url"):s.a.getParam("key",d),m=s.a.getMapboxLocale(s.a.getLocale());t.each((function(){$(this).hasClass("js-static-button")||$(this).addClass("u-loading")})),i.each((function(){var t=$(this),i=t.attr("data-url");a.initStaticMap({$elem:t,url:i,$context:e})})),(t.length>0||l.length>0)&&this.loadGoogleMaps(u,m,(function(){t.each((function(){var a=$(this)[0],t=$(this).attr("data-url");r.a.render(o.a.createElement(M,{url:t,initMap:c,context:e}),a),$(this).removeClass("u-loading")})),l.each((function(){a.addSearchGoogleMap(e,$(this))}))}));var g=a.mapBoxAccessToken;a.isLoadedMapbox=!1,(n.length>0||p.length>0)&&a.loadedScriptMapbox(g,n,p,e)}}},{key:"loadScriptMapBox",value:function(e){var a=this;if(e=void 0!==e?e:Function.prototype,!0===a.isLoadedMapbox)e();else{var t=a.mapBoxAccessToken;if(!1===window.mapboxgl.supported())var i=s.a.getStaticPath()+"/js/vendor/mapbox/mapbox.js",o="/f/js/vendor/mapbox/mapbox.css";else i="/f/js/vendor/mapbox/mapbox_gl.js",o="/f/js/vendor/mapbox/mapbox_gl.css";s.a.loadScript(i,o,(function(){if(a.isLoadedMapbox=!0,!1===mapboxgl.supported()){if("undefined"==typeof L||null===L||void 0===L.mapbox)return;L.mapbox.accessToken=t}else{if(void 0===mapboxgl.version||null===mapboxgl.version)return;mapboxgl.accessToken=t}e()}))}}},{key:"loadedScriptMapbox",value:function(e,a,t,i){var o=this;a.each((function(){var e=$(this);if("true"!==e.attr("data-map-is-mounted")){var a=e.attr("data-markers");a=null!=a?JSON.parse(a):[];var t=e.attr("data-popups");t=null!=t?JSON.parse(t):[];var n=e.attr("data-popups-placement");n=null!=n?n:null;var r=e.attr("data-center");r=null!=r?JSON.parse(r):a.length>0?o.getMiddlePointMarkers(a):{lng:0,lat:0};var p=e.attr("data-zoom");p=null!=p?parseInt(p):null;var l=e.attr("data-mobile-zoom-correction");l=null!=l?parseFloat(l):null;var c=e.attr("data-zoom-correction");c=null!=c?parseFloat(c):null,s.a.isMobile()&&null!=l?p+=l:s.a.isMobile()||null==c||(p+=c),o.initMapboxMap({$elem:e,markers:a,popups:t,popupsPlacement:n,center:r,zoom:p,$context:i,forced:!0}),e.attr("data-map-is-mounted","true")}})),t.each((function(){var e=$(this);!1===window.mapboxgl.supported()?(o.addSearchMapboxNative(i,e),o.loadScriptMapBox((function(){o.addSearchMapboxNative(i,e)}))):(o.addSearchMapbox(i,e),o.loadScriptMapBox((function(){o.addSearchMapbox(i,e)})))}))}},{key:"getCityBoundaries",value:function(e,a,t,i,o){var n=null,r=void 0!==$(e).data("city")&&null!==$(e).data("city")&&""!==$(e).data("city")?$(e).data("city"):"",p=void 0!==$(e).data("country")&&null!==$(e).data("country")&&""!==$(e).data("country")?$(e).data("country"):"",l=""!==r?""!==p?r+", "+p:r:"",c={};if(""!==l){var d="/mapbox/geocoding/v5/mapbox.places/";d=d+encodeURIComponent(l)+".json",c.types="place",c.language=s.a.getMapboxLocale(t),c.access_token=a,i&&(c.country=i),d=s.a.addParams(c,d),$.ajax({type:"GET",url:d,dataType:"json",success:function(e){if(null!=e&&void 0!==e.features&&null!==e.features&&e.features.length>0){var a=e.features[0];n=a.bbox}o(n)},error:function(e,a){o(n)}})}else o(n)}},{key:"getPointBoundaries",value:function(e,a){return a*=1e3,[c.radial(e,180,a)[1],c.radial(e,90,a)[0],c.radial(e,0,a)[1],c.radial(e,270,a)[0]]}},{key:"getMarkerMapGuideUrl",value:function(e){for(var a=[],t=0;t<e.length;t++){var i=e[t],o=this.getMarkerPrincipalImage(i);a.push("https://www.civitatis.com/f/images/guides/markers/"+o+".png")}return a}},{key:"getMapboxMapStaticUrlImage",value:function(e,a){var t=e.$elem;if(void 0!==window.mapURL&&null!==window.mapURL&&""!==window.mapURL)return window.mapURL;if($(t).hasClass("map-url")&&void 0!==$(t).data("map-image-url")&&null!==$(t).data("map-image-url")&&""!==$(t).data("map-image-url"))return $(t).data("map-image-url");var i=$(t).outerWidth()>1280?1280:Math.round($(t).outerWidth()),o=$(t).outerHeight()>1280?1280:Math.round($(t).outerHeight()),n=window.hoteles,r=$(".preload-static-map"),p=[],l=e.zoom,c=i+"x"+o,d=void 0!==e.center.lng&&null!=e.center.lng&&void 0!==e.center.lat&&null!=e.center.lat&&void 0!==l&&null!=l?e.center.lng+","+e.center.lat+","+l:"auto",u="";if(r.length>0){p=this.getMarkerMapGuideUrl(n),$.each(e.markers,(function(a,t){var i=a==e.markers.length-1,o=p[a];u+=("center"==t.type?"pin-s-"+("center"==t.type?"c":"return"==t.type?"2":"1")+"+000":"url-"+encodeURIComponent(o))+"("+t.lng+","+t.lat+")",i||(u+=",")}));var m="/mapbox/styles/v1/mapscivitatis/ckwm7z0dtf6w015qnre51zyhx/static/"+u+"/"+d+"/"+c+"/";return m=s.a.addParam("access_token",this.mapBoxAccessToken,m),-1!==location.host.indexOf("local")&&(m="https://www.civitatis.com"+m),m}return p="https://www.civitatis.com/f/images/markers/civitatis-guides-marker-double.png",$.each(e.markers,(function(a,t){var i=CivAPP.isGuide?p:"return"==t.type?"https://www.civitatis.com/f/images/markers/civitatis-marker-end-double.png":"https://www.civitatis.com/f/images/markers/civitatis-marker-double.png",o=a==e.markers.length-1;u+=("center"==t.type?"pin-s-"+("center"==t.type?"c":"return"==t.type?"2":"1")+"+000":"url-"+encodeURIComponent(i))+"("+t.lng+","+t.lat+")",o||(u+=",")})),m="/mapbox/styles/v1/mapscivitatis/ckwm7z0dtf6w015qnre51zyhx/static/"+u+"/"+d+"/"+c+"/",m=s.a.addParam("access_token",this.mapBoxAccessToken,m),-1!==location.host.indexOf("local")&&(m="https://www.civitatis.com"+m),m}},{key:"createMapboxMapStatic",value:function(e){var a=this,t="function"==typeof e.createMapStaticCallback?e.createMapStaticCallback:Function.prototype,i=e.$elem,o=i.attr("id");if(!$(i).hasClass("js-static-on-create")||a.principalMap($('[id="'+o+'"]')))a.createMapboxMap(e),t();else{var n=a.getMapboxMapStaticUrlImage(e),r=null;if($(i).hasClass("_is-in-voucher")?(r=$('<img src="'+n+'" alt="'+s.a.tr("map_string")+'" />')).appendTo(i):$(i).hasClass("js-static-button")||($(i).attr("data-urlimage",n),$(i).css({"background-image":"url('"+n+"')","background-repeat":"no-repeat","background-position":"center"})),s.a.isMobile()&&$(i).hasClass("js-static-button")){var p=$(".o-nav-bar").find("#punto-de-encuentro_link");$(p).length>0&&(p.off("click.createMapboxMapStatic"),p.on("click.createMapboxMapStatic",(function(){$(i).trigger("click.staticImage"),p.off("click.createMapboxMapStatic")})))}if($(i).filter("[data-trigger]").length>0){var l=$('[id="'+$(i).data("trigger")+'"]');$(l).length>0&&($(l).hasClass("js-dropdown-minus")?$(i).trigger("click.staticImage"):(l.off("click.createMapboxMapStatic"),l.on("click.createMapboxMapStatic",(function(){$(i).trigger("click.staticImage"),l.off("click.createMapboxMapStatic"),$(i).filter("[data-remove-trigger]").length>0&&l.remove()})))),l.removeClass("link-disabled"),l.removeAttr("tabindex")}$(i).removeClass("u-loading"),$(".print-on-load").length>0&&a.printPageStatic(o),$(i).off("click.staticImage"),$(i).on("click.staticImage",(function(){($(i).hasClass("js-static-s")||$(i).hasClass("a-button-main"))&&($(i).removeClass("image-button"),$(i).removeClass("a-button-main"),$(i).text("")),$(i).off("click.staticImage"),$(i).hasClass("js-static-button")||$(i).addClass("u-loading"),$(i).hasClass("_is-in-voucher")?r.remove():($(i).find("._static-image").length>0&&$(i).find("._static-image").remove(),$(i).hasClass("js-static-button")||$(i).removeAttr("style")),$(i).hasClass("preload-static-map")&&($(i).removeClass("lds-dual-ring"),$(i).removeAttr("data-urlimage"),$(i).removeClass("preload-static-map"),$(i).addClass("m-map-principal"),$(window).resize()),a.createMapboxMap(e)})),window.slug&&window.slug[0]!==s.a.tr("map_string").toLowerCase()&&$(i).trigger("click.staticImage"),t()}}},{key:"createMapboxMap",value:function(e){var a=this,t=e.$elem,i=e.markers,o=e.popups,n=e.popupsPlacement,r=e.center,p=void 0!==e.zoom?e.zoom:null,l=(void 0!==e.forced&&e.forced,void 0!==e.$context?e.$context:$("body")),c=void 0!==e.callback?e.callback:Function.prototype,d=void 0!==e.native&&e.native,u=s.a.getLocale(),m=s.a.getMapboxLocale();if(m="name_"+m,void 0!==t){var g=t.attr("id");if(void 0===a.mapboxMaps[g]||!1!==a.mapboxMaps[g].isMapData){var f=!1;null==p&&(a.principalMap($('[id="'+g+'"]'))?p=14:(p=15,f=!0));var v,h=[parseFloat(r.lng),parseFloat(r.lat)],M=[parseFloat(r.lat),parseFloat(r.lng)],b=s.a.getStaticPath()+"/images/markers/civitatis-style-V3.json?optimize=true";void 0!==window.mapBoxJsonStyle&&(b=window.mapBoxJsonStyle),v={container:g,style:b,center:h,zoom:p,trackResize:!0},d?(a.mapboxMaps[g]=L.mapbox.map(g).setView(M,p),L.mapbox.styleLayer("mapbox://styles/mapbox/streets-v9?optimize=true").addTo(a.mapboxMaps[g]),L.mapbox.tileLayer("mapbox.streets").on("ready",(function(){t.addClass("--native"),c(),a.mapboxMaps[g].scrollWheelZoom.disable(),a.mapboxMaps[g].removeControl(a.mapboxMaps[g].zoomControl),L.control.zoom({position:"bottomright"}).addTo(a.mapboxMaps[g]),L.control.scale({position:"bottomleft"}).addTo(a.mapboxMaps[g]),a.principalMap($('[id="'+g+'"]'))?(a.addMarkersPrincipalMapboxNative(g,i,l),a.addSearchPrincipalMapboxNative(g,l,u)):a.addMarkersMapboxNative(g,l,i,o,n,f)}))):(a.mapboxMaps[g]=new mapboxgl.Map(v),a.mapboxMaps[g].on("load",(function(){c(),a.changeLanguage(g,u,m),a.mapboxMaps[g].scrollZoom.disable(),0===$('[id="'+g+'"]').find(".mapboxgl-ctrl.mapboxgl-ctrl-group").length&&(a.mapboxMaps[g].addControl(new mapboxgl.NavigationControl({showCompass:!1}),"bottom-right"),a.mapboxMaps[g].addControl(new mapboxgl.ScaleControl({position:"bottom-left"}))),a.principalMap($('[id="'+g+'"]'))?(a.addMarkersPrincipalMapbox(g,i,l),a.addSearchPrincipalMapbox(g,l,u)):a.addMarkersMapbox(g,i,o,n,l,f)})))}}}},{key:"changeLanguage",value:function(e,a,t){var i=this,o=i.mapboxMaps[e].getStyle().layers;$.each(o,(function(a,o){var n=o.layout;if(null!=n){var r=n["text-field"];null!=r&&"string"==typeof r&&i.mapboxMaps[e].setLayoutProperty(o.id,"text-field",["get",t])}}))}},{key:"addMarkersPrincipalMapboxNative",value:function(e,a,t){CivAPP.isGuide?s.a.getStaticPath():"".concat(s.a.getStaticPath(),"/images/markers/civitatis-marker.png"),CivAPP.isGuide,CivAPP.isGuide,CivAPP.isGuide;var i=window.hoteles,o=L.mapbox.featureLayer().addTo(this.mapboxMaps[e]),n=this.getGeoJsonPrincipalMapBox(i,[38,42],[19,42],[0,-42]);o.on("layeradd",(function(e){var a=e.layer,t=a.feature;if(a.setIcon(L.icon(t.properties.icon)),void 0!==t.properties.description&&null!==t.properties.description){var i=t.properties.description;a.bindPopup(i,{closeButton:!0})}1==n.length&&a.fire("click")})),o.setGeoJSON(n),this.centerMapOnClickMarkerMapboxNative(e,o),this.loadPopupIfSlang(e,i,o),this.triggerOnClickAsideMapbox(e,i,t,o),this.mapboxMaps[e].markerLayer=o,this.mapboxMaps[e].markerLayerFilters=[],$(".print-on-load").length>0&&this.printPageNative(e),this.mapboxMaps[e].fire("resize")}},{key:"addMarkersMapboxNative",value:function(e,a,t,i,o,n){var r=this,p=("".concat(s.a.getStaticPath(),"/images/markers/").concat(CivAPP.isGuide?"civitatis-guides-marker":"civitatis-marker",".png"),CivAPP.isGuide?[54,54]:[82,78]),l=CivAPP.isGuide?[27,54]:[41,66],c=CivAPP.isGuide?[0,-54]:[0,-66],d=L.mapbox.featureLayer().addTo(r.mapboxMaps[e]),u=r.getGeoJsonMapBox(t,i,e,a,p,l,c);if(d.on("layeradd",(function(e){var a=e.layer,t=a.feature;if(a.setIcon(L.icon(t.properties.icon)),void 0!==t.properties.description&&null!==t.properties.description){var i=t.properties.description;a.bindPopup(i,{closeButton:!0})}1==u.length&&a.fire("click")})),d.setGeoJSON(u),r.centerMapOnClickMarkerMapboxNative(e,d),$(".print-on-load").length>0&&r.printPageNative(e),r.mapboxMaps[e].fire("resize"),"undefiend"!=typeof n&&null!==n&&!0===n){var m=[];$.each(d._geojson,(function(e,a){m.push(L.marker(new L.LatLng(a.geometry.coordinates[1],a.geometry.coordinates[0])))})),setTimeout((function(){var a=new L.featureGroup(m);r.mapboxMaps[e].fitBounds(a.getBounds())}))}}},{key:"addSearchPrincipalMapboxNative",value:function(e,a,t){var i=this,o=window.iso2,n={language:s.a.getMapboxLocale(t),keepOpen:!0};o&&(n.country="string"==typeof o?o:o.toString());var r=L.mapbox.geocoderControl("mapbox.places",n);i.mapboxMaps[e].addControl(r),r.on("select",(function(t){var o=[{lat:t.feature.geometry.coordinates[1],lng:t.feature.geometry.coordinates[0]}],n=L.mapbox.featureLayer().addTo(i.mapboxMaps[e]),r=i.getGeoJsonMapBox(o,[],e,a,!1);n.on("layeradd",(function(e){var a=e.layer,t=a.feature;a.setIcon(L.icon(t.properties.icon)),1==r.length&&a.fire("click")})),n.setGeoJSON(r),i.centerMapOnClickMarkerMapboxNative(e,n)}))}},{key:"addSearchMapboxNative",value:function(e,a){var t=s.a.getMapboxLocale(s.a.getLocale()),i=$(a).data("isotwo"),o=void 0!==$(a).data("centerpoint")&&null!==$(a).data("centerpoint")&&""!==$(a).data("centerpoint")?$(a).data("centerpoint"):null,n=null;null!=o&&void 0!==o[0]&&null!==o[0]&&(n=this.getPointBoundaries(o,100));var r={language:t,keepOpen:!0};i&&(r.country="string"==typeof i?i:i.toString());var p=L.mapbox.geocoderControl("mapbox.places",r),l=$('<div class="mapboxgl-ctrl-geocoder mapboxgl-ctrl"><ul class="suggestions js-hide"></ul></div>');$(a).after(l),setTimeout((function(){$(a).on("keyup",(function(e){var a=$(this),t=$(a).val(),o=$(l).find(".suggestions");if(""!=t){var r={query:t};i&&(r.country="string"==typeof i?i:i.toString()),null!=n&&(r.bbox=n),p.geocoder.query(r,(function(e,t){(null==e||""===e)&&t.results.features.length>0?($(o).empty(),$.each(t.results.features,(function(e,t){var i=t.text,n=t.place_name.replace(i+", ",""),r=$('<li><a tabindex="-1" title="'+i+'"><div class="mapboxgl-ctrl-geocoder--suggestion"><div class="mapboxgl-ctrl-geocoder--suggestion-title">'+i+'</div><div class="mapboxgl-ctrl-geocoder--suggestion-address">'+n+"</div></div></a></li>");$(o).append(r),$(r).on("click",(function(){$(a).val(t.place_name),$(a).trigger("change"),$(o).addClass("js-hide")}))})),$(o).removeClass("js-hide")):($(o).empty(),$(o).addClass("js-hide"))}))}else $(o).empty(),$(o).addClass("js-hide")})),$(a).on("focusin",(function(e){var a=$(l).find(".suggestions");$(a).is(":empty")||$(a).removeClass("js-hide")})),$(a).on("focusout",(function(e){setTimeout((function(){if(!$(document.activeElement).hasClass(".mapboxgl-ctrl-geocoder")&&0==$(document.activeElement).parents(".mapboxgl-ctrl-geocoder").length){var e=$(l).find(".suggestions");$(e).addClass("js-hide")}}))}))}))}},{key:"addSearchPrincipalMapbox",value:function(e,a,t){var i=this,o=window.iso2,n=i.addSearchLayerPrincipalMapbox(e,a,"civitatis-marker"),r=i.mapboxMaps[e].getLayer("search-point");null==r&&i.mapboxMaps[e].addLayer(n);var p={accessToken:i.mapBoxAccessToken,mapboxgl:mapboxgl,language:s.a.getMapboxLocale(t),placeholder:s.a.tr("search").substr(0,1).toUpperCase()+s.a.tr("search").substr(1)};o&&(p.country="string"==typeof o?o:o.toString(),p.countries="string"==typeof o?o:o.toString());var l=new MapboxGeocoder(p);0===$('[id="'+e+'"]').find(".mapboxgl-ctrl-geocoder.mapboxgl-ctrl").length&&i.mapboxMaps[e].addControl(l,"top-left"),l.on("result",(function(a){i.mapboxMaps[e].getSource("search-point").setData(a.result.geometry)}))}},{key:"addSearchMapbox",value:function(e,a){var t=s.a.getMapboxLocale(s.a.getLocale()),i=$(a).data("isotwo"),o=void 0!==$(a).data("centerpoint")&&null!==$(a).data("centerpoint")&&""!==$(a).data("centerpoint")?$(a).data("centerpoint"):null,n=null;null!=o&&void 0!==o[0]&&null!==o[0]&&(n=this.getPointBoundaries(o,100));var r={accessToken:this.mapBoxAccessToken,mapboxgl:mapboxgl,language:t,placeholder:""};i&&(r.country="string"==typeof i?i:i.toString(),r.countries="string"==typeof i?i:i.toString()),null!=n&&""!==n&&(r.bbox=n);var p=new MapboxGeocoder(r),l=$(a).parent();l.attr("id",s.a.generateId()),p.addTo('[id="'+$(l).attr("id")+'"]'),setTimeout((function(){var e=$(p._inputEl),t=s.a.getAllAttributes(a),i=t.class.split(/\s+/);i=i.splice($.inArray("js-map-search",i),1),t.class=i.join(" "),s.a.removeAllAttributes(e),$.each(t,(function(a,t){e.attr(a,t)})),$(a).replaceWith(e),CivAPP.Forms.init($(e).parents(".o-form"))}))}},{key:"showMarkersPrincipalMapbox",value:function(e){null!=e?$.each(this.mapboxMaps,(function(a,t){if(!1===window.mapboxgl.supported())t.markerLayerFilters.push(e),t.markerLayer.setFilter((function(e){return t.markerLayerFilters.indexOf(e.properties.imageNameMarkerPrincipal)>=0}));else{var i=t.getLayer("markers");if(null!=i){var o=t.getFilter("markers");if(null!=o&&o.length>=0){o.splice(0,2);var n=o.indexOf("");n>=0&&o.splice(n,1),o.push(e);var r=o.slice();r.unshift("imageNameMarkerPrincipal"),r.unshift("in"),t.setFilter("markers",r)}else t.setFilter("markers",["==","imageNameMarkerPrincipal",e]);void 0!==t.popup&&null!==t.popup&&t.popup.remove()}}})):$.each(this.mapboxMaps,(function(e,a){if(!1===window.mapboxgl.supported())a.markerLayer.setFilter((function(e){return!0}));else{var t=a.getLayer("markers");null!=t&&(a.setFilter("markers",null),void 0!==a.popup&&null!==a.popup&&a.popup.remove())}}))}},{key:"hideMarkersPrincipalMapbox",value:function(e){null!=e?$.each(this.mapboxMaps,(function(a,t){if(!1===window.mapboxgl.supported())(n=t.markerLayerFilters.indexOf(e))>=0&&t.markerLayerFilters.splice(n,1),t.markerLayer.setFilter((function(e){return t.markerLayerFilters.indexOf(e.properties.imageNameMarkerPrincipal)>=0}));else{var i=t.getLayer("markers");if(null!=i){var o=t.getFilter("markers");if(null!=o&&o.length>=0){o.splice(0,2);var n,r=o.indexOf("");r>=0&&o.splice(r,1),(n=o.indexOf(e))>=0&&o.splice(n,1),0==o.length&&(o=[""]);var s=o.slice();s.unshift("imageNameMarkerPrincipal"),s.unshift("in"),t.setFilter("markers",s)}else t.setFilter("markers",["!=","imageNameMarkerPrincipal",e]);void 0!==t.popup&&null!==t.popup&&t.popup.remove()}}})):$.each(this.mapboxMaps,(function(e,a){if(!1===window.mapboxgl.supported())a.markerLayer.setFilter((function(e){return""==e.properties.imageNameMarkerPrincipal}));else{var t=a.getLayer("markers");null!=t&&(a.setFilter("markers",["==","imageNameMarkerPrincipal",""]),void 0!==a.popup&&null!==a.popup&&a.popup.remove())}}))}},{key:"addMarkersPrincipalMapbox",value:function(e,a,t){var i=CivAPP.isGuide?"civitatis-guides-marker":"civitatis-marker",o=window.hoteles,n=this.addMarkerLayerPrincipalMapbox(e,a,t,i,o),r=this.mapboxMaps[e].getLayer("markers");null==r&&this.mapboxMaps[e].addLayer(n),$("body").hasClass("--guide")||"undefined"!=typeof popups?(this.openPopupMarkerMapbox(e),this.loadPopupIfSlang(e,o),this.triggerOnClickAsideMapbox(e,o,t)):this.centerMapOnClickMarkerMapbox(e),this.changePointerMarkerMapbox(e),$(".print-on-load").length>0&&this.printPage(e),this.mapboxMaps[e].resize()}},{key:"addMarkersMapbox",value:function(e,a,t,i,o,n){var r=this.addMarkerLayerMapbox(e,a,t,o),s=this.mapboxMaps[e].getLayer("markers");if(null==s&&this.mapboxMaps[e].addLayer(r),$("body").hasClass("--guide")||null!=t&&t.length>0?(this.openPopupMarkerMapbox(e,i),this.loadPopupIfOnlyOne(e,a)):this.centerMapOnClickMarkerMapbox(e),this.changePointerMarkerMapbox(e),$(".print-on-load").length>0&&this.printPage(e),this.mapboxMaps[e].resize(),"undefiend"!=typeof n&&null!==n&&!0===n){var p=new mapboxgl.LngLatBounds;r.source.data.features.forEach((function(e){p.extend(e.geometry.coordinates)})),this.mapboxMaps[e].fitBounds(p,{padding:{top:50,bottom:50,left:50,right:50}})}}},{key:"printPageNative",value:function(e){setTimeout((function(){$('[id="'+e+'"]').hasClass("js-ready-to-print")||$('[id="'+e+'"]').addClass("js-ready-to-print"),$(".js-map-new").length===$(".js-ready-to-print").length&&0===$(".js-printed").length&&void 0!==window.print&&null!==window.print&&"function"==typeof window.print&&($('[id="'+e+'"]').addClass("js-printed"),window.print())}),300)}},{key:"printPage",value:function(e){var a=this,t=a.mapboxMaps[e].getLayer("markers"),i=a.mapboxMaps[e].getSource("markers");null!=t&&null!=i&&1==i._loaded?setTimeout((function(){$('[id="'+e+'"]').hasClass("js-ready-to-print")||$('[id="'+e+'"]').addClass("js-ready-to-print"),$(".js-map-new").length===$(".js-ready-to-print").length&&0===$(".js-printed").length&&void 0!==window.print&&null!==window.print&&"function"==typeof window.print&&($('[id="'+e+'"]').addClass("js-printed"),window.print())}),200):setTimeout((function(){a.printPage(e)}),200)}},{key:"printPageStatic",value:function(e){var a=this,t=$('[id="'+e+'"]'),i=t.find("img").length>0||t.find("._static-image").length>0,o=t.hasClass("js-static-on-create"),n=!t.hasClass("u-loading");o&&(n&&i?setTimeout((function(){$('[id="'+e+'"]').hasClass("js-ready-to-print")||$('[id="'+e+'"]').addClass("js-ready-to-print"),$(".js-map-new").length===$(".js-ready-to-print").length&&0===$(".js-printed").length&&void 0!==window.print&&null!==window.print&&"function"==typeof window.print&&($('[id="'+e+'"]').addClass("js-printed"),window.print())}),200):setTimeout((function(){a.printPageStatic(e)}),200))}},{key:"addSearchLayerPrincipalMapbox",value:function(e,a,t){return{id:"search-point",type:"symbol",source:{type:"geojson",data:{type:"FeatureCollection",features:[]}},layout:{"icon-image":t,"icon-offset":[0,-27],"icon-allow-overlap":!0}}}},{key:"addMarkerLayerMapbox",value:function(e,a,t,i){var o={id:"markers",type:"symbol",source:{type:"geojson",data:{type:"FeatureCollection",features:[]}},layout:{"icon-image":"{marker-symbol}","icon-offset":[0,-27],"icon-allow-overlap":!0}},n=this.getGeoJsonMapBox(a,t,e,i);return o.source.data.features=n,o}},{key:"addMarkerLayerPrincipalMapbox",value:function(e,a,t,i,o){var n={id:"markers",type:"symbol",source:{type:"geojson",data:{type:"FeatureCollection",features:[]}},layout:{"icon-image":"{marker-symbol}","icon-offset":[0,-21],"icon-allow-overlap":!0}},r=this.getGeoJsonPrincipalMapBox(o);return n.source.data.features=r,n}},{key:"getGeoJsonMapBox",value:function(e,a,t,i,o){for(var n=[82,78],r=[41,66],s=[0,-66],p=[],l=0;l<e.length;l++){var c=CivAPP.isGuide?"civitatis-guides-marker":"return"===e[l].type?"civitatis-marker-end":"civitatis-marker";"return"===e[l].type&&(n=[30,40],r=[15,40],s=[0,40]);var d={type:"Feature",geometry:{type:"Point",coordinates:[parseFloat(e[l].lng),parseFloat(e[l].lat)]},properties:{}};if(null!=a&&a.length>0){var u=$('[id="'+a[l]+'"]').clone();if(u.length>0){u.removeClass("hide");var m=$("<div>").append($(u)).html();d.properties.description=m}}else if($("body").hasClass("--guide")&&(null==o||!0===o)){var g=this.getInfoTextMapBox(t,e,i,l);d.properties.description=g}!1===mapboxgl.supported()?(d.properties.icon={},d.properties.icon.iconUrl=c,d.properties.icon.iconSize=n,d.properties.icon.iconAnchor=r,d.properties.icon.popupAnchor=s,d.properties.icon.className="dot"):d.properties["marker-symbol"]=c,void 0!==e[l].type&&null!==e[l].type&&"center"===e[l].type||p.push(d)}return p}},{key:"getGeoJsonPrincipalMapBox",value:function(e,a,t,i){var o=[],n=new Array,r=new Array,s=new Array,p=new Array,l=new Array;if(null!=e&&e.length>0)for(var c=0;c<e.length;c++){var d=e[c],u=this.getMarkerPrincipalImage(d);r[c]=d[1],s[c]=d[0],p[c]=d[4],l[c]=void 0!==d[7]&&null!==d[7]&&""!==d[7]?d[7]:null;var m={type:"Feature",geometry:{type:"Point",coordinates:[d[2],d[3]]},properties:{"marker-symbol":u,description:this.getInfoTextPrincipalMapBox(r,s,p,l,c),imageNameMarkerPrincipal:this.getMarkerPrincipalImageName(d)}};!1===mapboxgl.supported()?(m.properties.icon={},m.properties.icon.iconUrl=u,m.properties.icon.iconSize=a,m.properties.icon.iconAnchor=t,m.properties.icon.popupAnchor=i,m.properties.icon.className="dot",m.properties.indexMarkersPrincipal=c):m.properties["marker-symbol"]=u,n.push(d),o.push(m)}return o}},{key:"getInfoTextPrincipalMapBox",value:function(e,a,t,i,o){var n=void 0!==i[o]&&null!==i[o]&&""!==i[o]?'<span class="textoMapa --normal-text">'+s.a.decodeHtml(i[o])+"</span>":"";if("/"==a[o])var r='<div id="popUpMapa"><span class="pop-up-title u-nomargin--b">'+e[o]+"</span>"+n+"</div>";else r="0"==t[o]?'<div id="popUpMapa"><a href="'+window.location.protocol+"//"+window.location.host+"/"+a[o]+'" title="'+e[o]+'"><span class="pop-up-title">'+e[o]+"</span></a>"+n+'<a class="textoMapa" title="'+s.a.tr("moreInfo")+'" href="'+window.location.protocol+"//"+window.location.host+"/"+a[o]+'">'+s.a.tr("moreInfo")+"</a></div>":'<div id="popUpMapa"><div class="pop-up-column-1"><a href="'+window.location.protocol+"//"+window.location.host+"/"+a[o]+'" title="'+e[o]+'" class="img-container"><img class="imagenMapa" alt="'+e[o]+'" src="'+t[o]+'" width="86" height="58"/></a></div><div class="pop-up-column-2"><a href="'+window.location.protocol+"//"+window.location.host+"/"+a[o]+'" title="'+e[o]+'"><span class="pop-up-title">'+e[o]+"</span></a>"+n+'<a class="textoMapa" title="'+s.a.tr("moreInfo")+'" href="'+window.location.protocol+"//"+window.location.host+"/"+a[o]+'">'+s.a.tr("moreInfo")+"</a></div></div>";return r}},{key:"getMarkerPrincipalImageName",value:function(e){return 0==e[5]?"visita-turistica":2==e[5]?"aeropuerto":4==e[5]?"estacion-tren":6==e[5]?"estacion-autobus":8==e[5]?"puerto":10==e[5]?"calle-plaza-zona":12==e[5]?"playa":14==e[5]?"visita-turistica":16==e[5]?"museo":18==e[5]?"edificio-religioso":20==e[5]?"parque-jardin":22==e[5]?"compras":24==e[5]?"parque-atracciones":26==e[5]?"zoologico":28==e[5]?"ocio":30==e[5]?"edificio":32==e[5]?"hotel":34==e[5]?"restaurante":36==e[5]?"visita-cercana":37==e[5]?"pueblo":200==e[5]?"hotel":300==e[5]?"punto-interes":void 0}},{key:"getMarkerPrincipalImage",value:function(e){var a=!1===mapboxgl.supported()?s.a.getStaticPath()+"/images/guides/markers/":"",t=!1===mapboxgl.supported()?".png":"",i=!1===mapboxgl.supported()?"-0":"",o=this.getMarkerPrincipalImageName(e);return 0==e[5]||2==e[5]||2==e[5]||4==e[5]||6==e[5]||8==e[5]||10==e[5]||12==e[5]||14==e[5]||16==e[5]||18==e[5]||20==e[5]||22==e[5]||24==e[5]||26==e[5]||28==e[5]||30==e[5]||32==e[5]||34==e[5]||36==e[5]||37==e[5]?a+o+"-"+e[6]+t:200==e[5]||300==e[5]?a+o+i+t:void 0}},{key:"getGoogleMapsUrl",value:function(e,a,t){return"https://www.google.com/maps/search/?api=1&query=".concat(encodeURIComponent(e)).concat(t?encodeURIComponent(", "+t):"").concat(a?encodeURIComponent(", "+a):"")}},{key:"getInfoTextMapBox",value:function(e,a,t,i){var o=$(t).find("#".concat(e)).data("map-city"),n=$(t).find("#".concat(e)).data("map-country"),r=$(t).find("#meeting-point-map-container").data("map-url"),p=void 0!==t?$(t).find("h1").text():$("h1").text(),l=this.getGoogleMapsUrl(p,n,o),c=void 0!==t?$(t).find(".o-additional-info #meeting-point-map-link"):$(".o-additional-info #meeting-point-map-link"),d=$('<div jstcache="33" class="poi-info-window poi-info-window-marker gm-style"><div jstcache="2"><div jstcache="3" class="title full-width" jsan="7.title,7.full-width">'+p+'</div><div class="address"></div></div><div jstcache="5" style="display:none"></div><div class="view-link">'+'<a target="_blank" jstcache="6" href="'.concat(l,'"')+'title="'+s.a.tr("seeInGoogleMaps")+'"> <span>'+s.a.tr("seeInGoogleMaps")+'</span> </a></div><div class="view-link">'+(null!=r&&""!==r?'<a jstcache="6" href="'+r+'" class="interactive-link" title="'+s.a.tr("seeInteractiveMap")+'" title="'+s.a.tr("seeInteractiveMap")+'"> <span>'+s.a.tr("seeInteractiveMap")+"</span> </a>":"")+"</div></div>"),u="";return $(c)&&(u='<div jstcache="4" jsinstance="0" class="address-line full-width" jsan="7.address-line,7.full-width">'+$(c).find("p").text()+"</div>"),$(u).appendTo($(d).find(".address")),$(d).wrap("<div>").parent().html()}},{key:"openPopupMarkerMapbox",value:function(e,a){var t=this,i=!1;t.mapboxMaps[e].on("click","markers",(function(o){i=!0;var n=void 0!==o.lngLat.lat&&null!==o.lngLat.lat?o.lngLat.lat:o.lngLat[0],r=void 0!==o.lngLat.lng&&null!==o.lngLat.lng?o.lngLat.lng:o.lngLat[1],p=(t.mapboxMaps[e].getSource("markers"),o.features),l=void 0!==o.layer&&null!==o.layer?t.ifCoordinatesFeature(e,n,r,p):0;if(null!==l){var c=o.features[l].geometry.coordinates.slice(),d=o.features[l].properties.description,u=0,m=0;void 0!==$('[id="'+e+'"]').data("center-popup")&&null!==$('[id="'+e+'"]').data("center-popup")&&1==$('[id="'+e+'"]').data("center-popup")&&(u=CivAPP.isGuide?27:34,(s.a.isMobile()||s.a.isMobileLandscape())&&(m=140*$(window).innerWidth()/640));var g=[m,u];for($('[id="'+e+'"]').hasClass("m-map-principal")?t.mapboxMaps[e].flyTo({center:c}):t.mapboxMaps[e].flyTo({center:c,offset:g});Math.abs(r-c[0])>180;)c[0]+=r>c[0]?360:-360;if($("body").hasClass("--guide"))if($('[id="'+e+'"]').hasClass("m-map-principal"))if(null!==a&&"bottom"!==a)if("left"===a)var f={offset:[30,-23]};else f="right"===a?{offset:[30,-23]}:"top"===a?{offset:[0,0]}:{offset:[0,-46]};else f={offset:[0,-46]};else f=null!==a&&"bottom"!==a?"left"===a?{offset:[30,-33]}:"right"===a?{offset:[-30,-33]}:"top"===a?{offset:[0,0]}:{offset:[0,-56]}:{offset:[0,-56]};else f=null!==a&&"bottom"!==a?"left"===a?{offset:[30,-34]}:"right"===a?{offset:[-30,-34]}:"top"===a?{offset:[0,0]}:{offset:[0,-68]}:{offset:[0,-68]};null!==a&&(f.anchor=a),t.mapboxMaps[e].popup=new mapboxgl.Popup(f).setLngLat(c).setHTML(d).addTo(t.mapboxMaps[e])}else t.mapboxMaps[e].flyTo({center:[n,r]}),t.mapboxMaps[e].once("moveend",(function(){t.triggerOpenMarker(e,r,n)}))})),t.mapboxMaps[e].on("click",(function(a){setTimeout((function(){if(!i){var o=void 0!==a.lngLat.lat&&null!==a.lngLat.lat?a.lngLat.lat:a.lngLat[0],n=void 0!==a.lngLat.lng&&null!==a.lngLat.lng?a.lngLat.lng:a.lngLat[1],r=t.mapboxMaps[e].getSource("markers"),s=t.ifCoordinatesFeature(e,o,n,r._data.features);null!=s&&(t.mapboxMaps[e].flyTo({center:[o,n]}),t.mapboxMaps[e].once("moveend",(function(){t.triggerOpenMarker(e,n,o)})))}i=!1}))}))}},{key:"ifCoordinatesFeature",value:function(e,a,t,i){var o=this.mapboxMaps[e].getSource("markers"),n=null;if(o){var r=o._data.features,s=r;null!=i&&i.length>0&&(s=i),$.each(r,(function(e,o){var r="number"==typeof o.geometry.coordinates[0]?o.geometry.coordinates[0]:parseFloat(o.geometry.coordinates[0]),p="number"==typeof o.geometry.coordinates[1]?o.geometry.coordinates[1]:parseFloat(o.geometry.coordinates[1]);if(a+1e-5>=r&&a-1e-5<=r&&t+1e-5>=p&&t-1e-5<=p)if(null!=i&&i.length>0){var l=o.properties["marker-symbol"];$.each(s,(function(e,a){a.properties["marker-symbol"]==l&&(n=e)}))}else n=e}))}return n}},{key:"loadPopupIfSlang",value:function(e,a,t){if(window.slug&&a)for(var i=0;i<a.length;i++)a[i][0]===window.slug[0]&&(!1===window.mapboxgl.supported()?this.triggerOpenMarkerNative(e,a[i][3],a[i][2],t):this.triggerOpenMarker(e,a[i][3],a[i][2]))}},{key:"loadPopupIfOnlyOne",value:function(e,a){1==a.length&&this.triggerOpenMarker(e,a[0].lat,a[0].lng)}},{key:"triggerOpenMarker",value:function(e,a,t){var i=this,o=i.mapboxMaps[e].getLayer("markers"),n=i.mapboxMaps[e].getSource("markers");a="number"==typeof a?a:parseFloat(a),t="number"==typeof t?t:parseFloat(t),null!=o&&null!=n&&1==n._loaded?setTimeout((function(){o.fire("click",{lngLat:[t,a]})}),200):setTimeout((function(){i.triggerOpenMarker(e,a,t)}),200)}},{key:"triggerOpenMarkerNative",value:function(e,a,t,i){a="number"==typeof a?a:parseFloat(a),t="number"==typeof t?t:parseFloat(t);var o=i.getLayers();$.each(o,(function(e,i){var o=i.getLatLng(),n=o.lat,r=o.lng;a+1e-5>=n&&a-1e-5<=n&&t+1e-5>=r&&t-1e-5<=r&&i.fire("click")}))}},{key:"triggerOnClickAsideMapbox",value:function(e,a,t,i){var o=this,n=void 0!==t?$(t).find(".o-map-list__category__list__element a"):$(".o-map-list__category__list__element a");$(n).on("click",(function(t){t.preventDefault();for(var n=$(this).data("coordenates"),r=0;r<a.length;r++){var s=parseFloat(a[r][3]),p=parseFloat(a[r][2]);s+1e-5>=n.lat&&s-1e-5<=n.lat&&p+1e-5>=n.lon&&p-1e-5<=n.lon&&(!1===window.mapboxgl.supported()?o.triggerOpenMarkerNative(e,s,p,i):o.triggerOpenMarker(e,s,p))}}))}},{key:"centerMapOnClickMarkerMapboxNative",value:function(e,a){var t=this;a.eachLayer((function(a){a.on("click",(function(a){t.mapboxMaps[e].panTo(this.getLatLng())}))}))}},{key:"centerMapOnClickMarkerMapbox",value:function(e){var a=this;a.mapboxMaps[e].on("click","markers",(function(t){a.mapboxMaps[e].flyTo({center:t.features[0].geometry.coordinates})}))}},{key:"changePointerMarkerMapbox",value:function(e){var a=this;a.mapboxMaps[e].on("mouseenter","markers",(function(){a.mapboxMaps[e].getCanvas().style.cursor="pointer"})),a.mapboxMaps[e].on("mouseleave","markers",(function(){a.mapboxMaps[e].getCanvas().style.cursor=""}))}},{key:"createStaticMap",value:function(e){var a=e.$elem,t=e.url,i=void 0!==e.callback?e.callback:Function.prototype,o=void 0!==e.$context?e.$context:$("body");if(void 0!==a){var n=a.attr("id");if(void 0===this.staticMaps[n]||!1!==this.staticMaps[n].isMapData){var r=a.hasClass("_with-infowindow"),p=$('<img class="m-map_static__map" alt="'+s.a.tr("map_string")+'">'),l="/images/markers/".concat(CivAPP.isGuide?"civitatis-guides-marker":"civitatis-marker",".png"),c=s.a.getStaticPath(l),d=$('<img class="m-map_static__marker" src="'+c+'" alt="'+s.a.tr("map_string")+'">');if(p.on("load",i),p.attr("src",t),a.append(p),a.append(d),r){o.find("h1").text();var u=o.find("#meeting-point-map-container").attr("data-map-url"),m=s.a.getParam("center",t).split(","),g="http://maps.google.com/maps?q="+m[0]+","+m[1],f=(o.find(".o-additional-info #meeting-point-map-link"),$('<div class="tooltip top m-map-tooltip"><span class="js-close"></span><a target="_blank" href="'+g+'" class="_seeingoogle" title="'+s.a.tr("seeInGoogleMaps")+'">'+s.a.tr("seeInGoogleMaps")+'</a><a href="'+u+'" class="_seeinmap" title="'+s.a.tr("seeInteractiveMap")+'">'+s.a.tr("seeInteractiveMap")+"</span></div></div>"));a.after(f),f.find(".js-close").on("click",(function(){f.addClass("hide")})),d.on("click",(function(){f.removeClass("hide")}))}void 0!==this.staticMaps[n]&&(this.staticMaps[n].isMapData=!1),a.removeClass("u-loading"),a.addClass("_loaded")}}}},{key:"createMap",value:function(e,a,t,i,o){var n,r,p,l=this,c=s.a.setIdIfNotId($(e),"jsmap"),d="/images/markers/".concat(CivAPP.isGuide?"civitatis-guides-marker":"civitatis-marker",".png"),u={};if(t=void 0!==t?t:Function.prototype,i=void 0!==i&&i,n=s.a.getParam("center",a),t(),$('[id="'+c+'"]').removeClass("u-loading"),l.principalMap($('[id="'+c+'"]'))?(r=void 0!==(p=parseInt(s.a.getParam("zoom",a)))?p:14,u={center:{lat:parseFloat(n.split(",")[0]),lng:parseFloat(n.split(",")[1])},zoom:r,mapTypeId:google.maps.MapTypeId.ROADMAP,zoomControl:!0,fullscreenControl:!1,streetViewControl:!1,mapTypeControl:!1}):(r=(p=s.a.getParam("zoom",a))?parseInt(p):15,u={center:{lat:parseFloat(n.split(",")[0]),lng:parseFloat(n.split(",")[1])},scrollwheel:!1,zoom:r}),l.maps[c]=new google.maps.Map(e,u),l.principalMap($('[id="'+c+'"]'))){var m=new Array,g=new Array,f=new Array,v=new Array;if(l.infoWindow[c]=new google.maps.InfoWindow,google.maps.event.addListener(l.maps[c],"click",(function(){l.closeInfoWindow(c)})),window.hoteles)for(var h=0;h<window.hoteles.length;h++){var M=window.hoteles[h],b=new google.maps.LatLng(M[3],M[2]);if(0==M[5])var y="/images/guides/markers/visita-turistica-"+M[6]+".png";else 2==M[5]?y="/images/guides/markers/aeropuerto-"+M[6]+".png":4==M[5]?y="/images/guides/markers/estacion-tren-"+M[6]+".png":6==M[5]?y="/images/guides/markers/estacion-autobus-"+M[6]+".png":8==M[5]?y="/images/guides/markers/puerto-"+M[6]+".png":10==M[5]?y="/images/guides/markers/calle-plaza-zona-"+M[6]+".png":12==M[5]?y="/images/guides/markers/playa-"+M[6]+".png":14==M[5]?y="/images/guides/markers/visita-turistica-"+M[6]+".png":16==M[5]?y="/images/guides/markers/museo-"+M[6]+".png":18==M[5]?y="/images/guides/markers/edificio-religioso-"+M[6]+".png":20==M[5]?y="/images/guides/markers/parque-jardin-"+M[6]+".png":22==M[5]?y="/images/guides/markers/compras-"+M[6]+".png":24==M[5]?y="/images/guides/markers/parque-atracciones-"+M[6]+".png":26==M[5]?y="/images/guides/markers/zoologico-"+M[6]+".png":28==M[5]?y="/images/guides/markers/ocio-"+M[6]+".png":30==M[5]?y="/images/guides/markers/edificio-"+M[6]+".png":32==M[5]?y="/images/guides/markers/hotel-"+M[6]+".png":34==M[5]?y="/images/guides/markers/restaurante-"+M[6]+".png":36==M[5]?y="/images/guides/markers/visita-cercana-"+M[6]+".png":37==M[5]?y="/images/guides/markers/pueblo-"+M[6]+".png":200==M[5]?y="/images/guides/markers/hotel.png":300==M[5]&&(y="/images/guides/markers/punto-interes.png");var k=new google.maps.MarkerImage(s.a.getStaticPath()+y,new google.maps.Size(38,42),new google.maps.Point(0,0),new google.maps.Point(16,37));m[h]=new google.maps.Marker({position:b,map:l.maps[c],icon:k,title:M[1],zIndex:h}),g[h]=M[1],f[h]=M[0],v[h]=M[4],google.maps.event.addListener(m[h],"click",(function(){l.openInfoWindow(this,M[5],g,f,v,c),l.maps[c].panTo(this.getPosition())}))}var w=document.getElementById("pac-input");l.searchInputInitializate(l.maps[c],w,l.infoWindow[c]),google.maps.event.addListenerOnce(l.maps[c],"idle",(function(){setTimeout((function(){l.checkSlag(l.maps[c],m)}))}));var x=void 0!==o?$(o).find(".o-map-list__category__list__element a"):$(".o-map-list__category__list__element a");$(x).on("click",(function(e){e.preventDefault();for(var a=$(this).data("coordenates"),t=0;t<m.length;t++){var i=m[t].position.lat(),o=m[t].position.lng();i+1e-5>=a.lat&&i-1e-5<=a.lat&&o+1e-5>=a.lon&&o-1e-5<=a.lon&&(l.maps[c].panTo(m[t].position),google.maps.event.trigger(m[t],"click"))}}))}else if($("body").hasClass("--guide")){l.geocoder[c]=new google.maps.Geocoder,l.infoWindow[c]=new google.maps.InfoWindow,google.maps.event.addListener(l.maps[c],"click",(function(){l.closeInfoWindow(c)}));var P=new google.maps.Marker({position:{lat:parseFloat(n.split(",")[0]),lng:parseFloat(n.split(",")[1])},map:l.maps[c],icon:s.a.getStaticPath()+d});google.maps.event.addListener(P,"click",(function(){var e=void 0!==o?$(o).find("h1").text():$("h1").text(),a=void 0!==o?$(o).find(".o-additional-info #meeting-point-map-link"):$(".o-additional-info #meeting-point-map-link"),t=$('<div jstcache="33" class="poi-info-window poi-info-window-marker gm-style"><div jstcache="2"><div jstcache="3" class="title full-width" jsan="7.title,7.full-width">'+e+'</div><div class="address"></div></div><div jstcache="5" style="display:none"></div><div class="view-link"><a target="_blank" jstcache="6" href="https://www.google.com/maps/search/?api=1&query='+e+'" title="'+s.a.tr("seeInGoogleMaps")+'"> <span>'+s.a.tr("seeInGoogleMaps")+'</span> </a></div><div class="view-link"><a jstcache="6" href="'+$("#meeting-point-map-container").data("map-url")+'" class="interactive-link" title="'+s.a.tr("seeInteractiveMap")+'"> <span>'+s.a.tr("seeInteractiveMap")+"</span> </a></div></div>"),i="";$(a)&&(i='<div jstcache="4" jsinstance="0" class="address-line full-width" jsan="7.address-line,7.full-width">'+$(a).find("p").text()+"</div>"),$(i).appendTo($(t).find(".address")),l.infoWindow[c].setContent($(t).wrap("<div>").parent().html()),l.infoWindow[c].open(l.maps[c],P)})),google.maps.event.addListenerOnce(l.maps[c],"idle",(function(){google.maps.event.trigger(P,"click")}));var C=void 0!==o?$(o).find(".js-open-window-info"):$(".js-open-window-info");$(C).on("click",(function(){var e=l.infoWindow[c].getMap();null==e&&(google.maps.event.trigger(P,"click"),l.maps[c].setCenter(P.position))}))}else P=new google.maps.Marker({position:{lat:parseFloat(n.split(",")[0]),lng:parseFloat(n.split(",")[1])},map:l.maps[c],icon:s.a.getStaticPath()+d});google.maps.event.addDomListener(window,"resize",(function(){if(google.maps.event.trigger(l.maps[c],"resize"),"function"==typeof l.maps[c].getCenter){var e=l.maps[c].getCenter();l.maps[c].setCenter(e)}})),l.zoomResize(l.maps[c])}},{key:"searchInputInitializate",value:function(e,a,t){var i=this,o=new google.maps.places.SearchBox(a);e.controls[google.maps.ControlPosition.TOP_LEFT].push(a),e.addListener("bounds_changed",(function(){o.setBounds(e.getBounds())}));var n=[];o.addListener("places_changed",(function(){var a=o.getPlaces();if(0!=a.length){n.forEach((function(e){e.setMap(null)})),n=[];var r=new google.maps.LatLngBounds;a.forEach((function(a){if(a.geometry){var t={url:s.a.getStaticPath()+"/images/markers/civitatis-marker.png"};n.push(new google.maps.Marker({map:e,icon:t,title:a.name,position:a.geometry.location})),r.extend(a.geometry.location)}}));var p=e.getZoom();p<14&&(p=14),t&&i.isInfoWindowOpen(t)&&t.close(),e.fitBounds(r),e.setZoom(p)}}))}},{key:"initStaticMapsSlider",value:function(e){var a=this;e.find(".js-map-static_guides").each((function(){$(this).removeClass("js-map-static_guides");var t=$(this),i=t.attr("data-url"),o=function(){t.removeClass("u-loading"),t.addClass("_loaded")},n=new Waypoint.Inview({element:t[0],enter:function(r){n.destroy(),a.createStaticMap({$elem:t,url:i,$context:e,callback:o})}})}))}},{key:"initMapboxMap",value:function(e){var a=this,t=e.$elem,i=e.markers,o=e.popups,n=e.popupsPlacement,r=e.center,p=void 0!==e.zoom?e.zoom:null,l=void 0!==e.forced&&e.forced,c=void 0!==e.$context?e.$context:$("body"),d=t[0],u=s.a.setIdIfNotId(t,"jsmap");if($(c).find(".for-print-only").length>0&&(d=$("body")),!t.hasClass("loaded-map"))if(void 0===a.inviews[u]||null===a.inviews[u]){var m=function(){void 0!==a.inviews[u]&&null!==a.inviews[u]&&(a.inviews[u].destroy(),delete a.inviews[u])},g=function(){t.removeClass("u-loading"),t.addClass("_loaded"),m()};$('[id="'+u+'"]').hasClass("image-button")&&(a.buttonMapboxMaps[u]={$elem:t,markers:i,popups:o,popupsPlacement:n,center:r,zoom:p}),s.a.l("domNodeId"),s.a.l(u);var f=function(e,s){a.createMapboxMapStatic({$elem:t,markers:i,popups:o,popupsPlacement:n,center:r,zoom:p,callback:g,createMapStaticCallback:s,$context:c,native:e}),t.addClass("loaded-map")},v=function(){if("meeting-point-map-container"===u&&s.a.isMobile()){var e=$("#meeting-point-map-container").closest("[data-meeting-point]");if(e.length>0){var a=e.attr("id");if(a){var t="".concat(a,"_link"),i=document.getElementById(t);if(i)return i}}}return d}();a.inviews[u]=new Waypoint.Inview({element:v,enter:function(e,d){a.loadScriptMapBox((function(){s.a.isActivityDetail()&&s.a.isMobile()&&!l?a.mapboxMaps[u]={element:t,isMapData:!0,markers:i,popups:o,popupsPlacement:n,center:r,zoom:p,context:c}:$('[id="'+u+'"]').length>0&&mapboxgl.supported()?f(!1,d):$('[id="'+u+'"]').length>0&&!mapboxgl.supported()&&f(!0,d),m()}))},enabled:!0}),"meeting-point-map-container"===u&&(window.myinviwe=a.inviews[u])}else Waypoint.refreshAll()}},{key:"initStaticMap",value:function(e){var a,t=e.$elem,i=e.url,o=void 0!==e.forced&&e.forced,n=void 0!==e.$context?e.$context:$("body"),r=this,p=s.a.setIdIfNotId(t,"jsmap");if(t.hasClass("js-map-print"))r.createStaticMap({$elem:t,url:i,callback:c,$context:n});else if(1!==r.inviews[p]){var l=function(){null!=a&&a.destroy()},c=function(){t.removeClass("u-loading"),t.addClass("_loaded"),l()};s.a.getRandomString(),r.inviews[p]=1,a=new Waypoint.Inview({element:t[0],enter:function(e,a){s.a.isActivityDetail()&&s.a.isMobile()&&!o&&void 0===r.staticMaps[p]?r.staticMaps[p]={isMapData:!0,url:i,element:t,callback:c}:(r.createStaticMap({$elem:t,url:i,callback:c,$context:n}),r.staticMaps[p]={isMapData:!1},l())}})}else Waypoint.refreshAll()}},{key:"initMap",value:function(e,a,t,i){t=void 0!==t&&t;var o,n,r=this,p=s.a.setIdIfNotId($(e),"jsmap"),l=function(){null!=o&&o.destroy()},c=void 0!==i?$(i).find(".m-map-principal"):$(".m-map-principal");n=$(".for-print-only").length>0||$(c).length>0?$("body"):e,o=new Waypoint.Inview({element:n,enter:function(n){s.a.isActivityDetail()&&s.a.isMobile()&&!t?r.maps[p]={isMapData:!0,url:a,element:e}:r.createMap(e,a,l,t,i),null!=o&&o.destroy()}})}},{key:"addSearchGoogleMap",value:function(e,a){var t=s.a.getMapboxLocale(s.a.getLocale()),i=$(a).data("isotwo"),o=void 0!==$(a).data("centerpoint")&&null!==$(a).data("centerpoint")&&""!==$(a).data("centerpoint")?$(a).data("centerpoint"):null,n=null;null!=o&&void 0!==o[0]&&null!==o[0]&&(n=this.getPointBoundaries(o,100));var r={language:t,placeholder:""};if(i&&(r.componentRestrictions={country:[i]}),null!=n&&""!==n){var p={lat:n[0],lng:n[1]},l={lat:n[2],lng:n[3]},c=new google.maps.LatLngBounds(p,l);r.bounds=c}var d=new google.maps.places.Autocomplete(a[0],r);google.maps.event.addListener(d,"place_changed",(function(){a.trigger("change")}))}},{key:"checkSlag",value:function(e,a){if(window.slug&&window.hoteles)for(var t=0;t<window.hoteles.length;t++)window.hoteles[t][0]===window.slug[0]&&google.maps.event.trigger(a[t],"click")}},{key:"loadGoogleMaps",value:function(e,a,t){e=void 0!==e?e:"AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk",a=void 0!==a?a:s.a.getMapboxLocale(s.a.getLocale()),t=void 0!==t?t:Function.prototype,"object"===("undefined"==typeof google?"undefined":b(google))&&"object"===b(google.maps)?t():$.getScript("https://maps.googleapis.com/maps/api/js?key="+e+"&libraries=places&language="+a,(function(){t()}))}},{key:"getScriptWithoutCallBack",value:function(){$.getScript("https://maps.googleapis.com/maps/api/js?key="+key+"&libraries=places")}},{key:"refreshMaps",value:function(){for(var e in Waypoint.refreshAll(),this.maps)this.maps[e].isMapData?this.initMap(this.maps[e].element,this.maps[e].url,!0):google.maps.event.trigger(this.maps[e],"resize");for(var e in this.staticMaps)this.staticMaps[e].isMapData&&this.initStaticMap({$elem:this.staticMaps[e].element,url:this.staticMaps[e].url,callback:this.staticMaps[e].callback});for(var e in this.mapboxMaps)this.mapboxMaps[e].isMapData&&this.initMapboxMap({$elem:this.mapboxMaps[e].element,markers:this.mapboxMaps[e].markers,center:this.mapboxMaps[e].center,zoom:this.mapboxMaps[e].zoom,$context:this.mapboxMaps[e].context,forced:!0})}},{key:"principalMap",value:function(e){return $(e).parent(".js-map").hasClass("m-map-principal")||$(e).parent(".js-map-new").hasClass("m-map-principal")||$(e).filter(".js-map").hasClass("m-map-principal")||$(e).filter(".js-map-new").hasClass("m-map-principal")}},{key:"closeInfoWindow",value:function(e){this.infoWindow[e].close()}},{key:"openInfoWindow",value:function(e,a,t,i,o,n){if(e.getPosition(),"/"==i[e.getZIndex()])var r='<div id="popUpMapa"><span class="pop-up-title u-nomargin--b">'+t[e.getZIndex()]+"</span></div>";else r="0"==o[e.getZIndex()]?'<div id="popUpMapa"><a href="'+window.location.protocol+"//"+window.location.host+"/"+i[e.getZIndex()]+'" title="'+t[e.getZIndex()]+'"><span class="pop-up-title">'+t[e.getZIndex()]+'</span></a><a class="textoMapa" title="'+s.a.tr("moreInfo")+'" href="'+window.location.protocol+"//"+window.location.host+"/"+i[e.getZIndex()]+'">'+s.a.tr("moreInfo")+"</a></div>":'<div id="popUpMapa"><div class="pop-up-column-1"><a href="'+window.location.protocol+"//"+window.location.host+"/"+i[e.getZIndex()]+'" title="'+t[e.getZIndex()]+'" class="img-container"><img class="imagenMapa" alt="'+t[e.getZIndex()]+'" src="'+o[e.getZIndex()]+'" width="86" height="58"/></a></div><div class="pop-up-column-2"><a href="'+window.location.protocol+"//"+window.location.host+"/"+i[e.getZIndex()]+'" title="'+t[e.getZIndex()]+'"><span class="pop-up-title">'+t[e.getZIndex()]+'</span></a><a class="textoMapa" title="'+s.a.tr("moreInfo")+'" href="'+window.location.protocol+"//"+window.location.host+"/"+i[e.getZIndex()]+'">'+s.a.tr("moreInfo")+"</a></div></div>";this.infoWindow[n].setContent(r),this.infoWindow[n].open(this.maps[n],e)}},{key:"redirectClick",value:function(e,a,t){window.location=t[e.getZIndex()]}},{key:"zoomResize",value:function(e){var a=this;a.zoomResizeTrigger(e),$(window).resize((function(){a.zoomResizeTrigger(e)}))}},{key:"zoomResizeTrigger",value:function(e){s.a.isMobile()?e.set("zoomControl",!1):e.set("zoomControl",!0)}},{key:"isInfoWindowOpen",value:function(e){var a=e.getMap();return null!=a}},{key:"getMiddlePointMarkers",value:function(e){var a=0,t=0;$.each(e,(function(e,i){a+=parseFloat(i.lat),t+=parseFloat(i.lng)}));var i=a/e.length;return{lng:t/e.length,lat:i}}},{key:"distance",value:function(e,a,t,i,o){if(e==t&&a==i)return 0;var n=Math.PI*e/180,r=Math.PI*t/180,s=a-i,p=Math.PI*s/180,l=Math.sin(n)*Math.sin(r)+Math.cos(n)*Math.cos(r)*Math.cos(p);return l>1&&(l=1),l=60*(l=180*(l=Math.acos(l))/Math.PI)*1.1515,"K"==o&&(l*=1.609344),"N"==o&&(l*=.8684),l}}])&&y(a.prototype,t),i&&y(a,i),Object.defineProperty(a,"prototype",{writable:!1}),e}();a.default=x}}]);