function attach_info_window(map, marker, events, infowindow) { /* * https://developers.google.com/maps/documentation/javascript/infowindows * https://stackoverflow.com/questions/11106671/google-maps-api-multiple-markers-with-infowindows */ let window_content = `

${events[0].location.address}

`; for (key in events) { window_content += `

${events[key].title}

`; }; window_content += `
`; marker.addListener('click', () => { let view_center = map.getCenter(); // height must be half css value (mp_info_windows.css -> '--size: XXXpx;') let window_offset = { width: 0, height: 275 }; infowindow.setOptions({ //disableAutoPan: true, disableAutoPan: false, content: window_content, /* dimensions */ //maxWidth: 400, //minWidth: 400, /* center window */ position: view_center, pixelOffset: window_offset, //shouldFocus: false, }); infowindow.open(map); }); } /* event : {} - heure_de_debut : ""; - heure_de_fin : ""; - categorie : ""; - date : ""; - pays : ""; - ville : ""; - adresse : ""; - prenom : ""; - nom : ""; - irl : bool; - id : x; - index : x (default null); - title : ""; - url : ""; - location : {} - street : ""; - city : ""; - country : ""; - address : ""; - approximate : bool; - coordinates : {} - lat : x; - lng : x; */