diff --git a/assets/js/theme/blocks/partners.js b/assets/js/theme/blocks/partners.js index 3b3578841ac18e43192a5c878963d02679c63cff..c6b070aced4373b56a43af8250c854b679367e19 100644 --- a/assets/js/theme/blocks/partners.js +++ b/assets/js/theme/blocks/partners.js @@ -3,14 +3,17 @@ const partnersMaps = document.querySelectorAll('.block-partners--map'); class BlockPartners { constructor (dom) { this.dom = dom; + this.init(); } init() { + this.markers = []; + this.setMap = false; this.content = this.dom.querySelector('#map'); this.partnersList = this.content.querySelectorAll('.organization'); this.classPartner = 'organization'; - this.markers = []; + this.classHidden = 'hidden'; let map = L.map('map', { scrollWheelZoom: false @@ -19,25 +22,34 @@ class BlockPartners { iconUrl: '/assets/images/map-marker.svg', iconSize: [17, 26], }); - this.listen(map); - this.getMapBounds(map); - } - - listen (map) { - L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', { - maxZoom: 19, - attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>' - }).addTo(map); + this.setPartners(map); + if (this.setMap) { + this.listen(map); + this.getMapBounds(map); + } else { + this.dom.classList.add(this.classHidden); + this.dom.setAttribute("aria-hidden", "true") + return; + } + } + setPartners (map) { this.partnersList.forEach((partner) => { let latitude = parseFloat(partner.getAttribute('data-latitude')), longitude = parseFloat(partner.getAttribute('data-longitude')), mapLocation = [latitude, longitude]; if (!!latitude && !!longitude) { this.newMarker(map, mapLocation, partner); + this.setMap = true; } }); } + listen (map) { + L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', { + maxZoom: 19, + attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>' + }).addTo(map); + } newMarker(map, mapLocation, partner) { let marker = new L.marker(mapLocation, { diff --git a/assets/sass/_theme/blocks/partners.sass b/assets/sass/_theme/blocks/partners.sass index 6caa8c88dbdeccaa9baa28b4263e634555c84bc1..3d36c2ebc48c2a6e6f16f61420367d2aee3320f3 100644 --- a/assets/sass/_theme/blocks/partners.sass +++ b/assets/sass/_theme/blocks/partners.sass @@ -41,6 +41,7 @@ &-close-button z-index: 4 @include in-page-without-sidebar - .map - margin-left: -$grid-gutter - margin-right: -$grid-gutter \ No newline at end of file + @include media-breakpoint-up(desktop) + .map + margin-left: -$grid-gutter + margin-right: -$grid-gutter \ No newline at end of file