MediaWiki:Common.js: Difference between revisions
No edit summary |
No edit summary |
||
Line 12: | Line 12: | ||
var mapOptions = { | var mapOptions = { | ||
center: { lat: coordinates[0], lng: coordinates[1] }, | center: { lat: coordinates[0], lng: coordinates[1] }, | ||
zoom: | zoom: 10 | ||
}; | }; | ||
var map = new google.maps.Map(element, mapOptions); | var map = new google.maps.Map(element, mapOptions); |
Revision as of 09:32, 19 March 2024
/* Any JavaScript here will be loaded for all users on every page load. */ function initMap() { var element = document.getElementById('map'); var dataSrc = element.getAttribute('data-src'); if (dataSrc) { var coordinates = dataSrc.split(/[;,]/).map(function(coord) { return parseFloat(coord.trim()); }); var mapOptions = { center: { lat: coordinates[0], lng: coordinates[1] }, zoom: 10 }; var map = new google.maps.Map(element, mapOptions); var marker = new google.maps.Marker({ position: { lat: coordinates[0], lng: coordinates[1] }, map: map, title: 'Marker Title' }); } else { // Add the 'no-data' class if data-src doesn't exist element.classList.add('no-data'); } } var script = document.createElement('script'); script.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyBIrgq5dZQ8haJIfKHbGco90OpDwYLiXwA&callback=initMap'; script.async = true; script.defer = true; document.head.appendChild(script); if (document.body.classList.contains('page-Main_Page')) { if (document.cookie.indexOf('popupClosed=true') === -1) { var popup = document.createElement('div'); popup.className = 'popup'; var popupContent = document.createElement('span'); popup.innerHTML = '<span><h>Content Note</h><p>As a database of 19th-century material, some of the texts in this Wiki may contain racist, offensive, and discriminatory language and imagery.</p> <a class="button">okay</a></span>'; document.body.insertBefore(popup, document.body.firstChild); popup.style.display = 'block'; popup.addEventListener('click', function () { popup.style.display = 'none'; document.cookie = 'popupClosed=true; expires=' + new Date(Date.now() + 30 * 24 * 60 * 60 * 1000).toUTCString(); // Set cookie to expire in one year }); } }