Gli strumenti forniti da Google sono sempre più utilizzati per integrare i portali web con servizi sempre più interessanti.
Tra i più utilizzati e apprezzati dagli utenti, vi sono sicuramente le google map, ovvero le mappe che indicano l’esatta posizione di un indirizzo o di una locazione geografica.
Oramai su quasi tutte le pagine “Contatti” sparse per il mondo è presente tale servizio: l’utilizzo è molto semplice, e la documentazione ricca, anche se per specifiche personalizzazioni bisogna impegnarsi un poco ( giustamente
).
Ad esempio, potremmo avere la necessità di inserire nelle nostre pagine una mappa di google che, a
seconda dell’indirizzo passato (e quindi dinamicamente), visualizzi la posizione desiderata con un “marker” e le informazioni relative.
Lo script per implementare tale meccanismo è il seguente:
<script type=“text/javascript”>
var map = null;
var geocoder = null;
function load() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById(“map”));
var latitude = 45.05872;
var longitude = 7.723114;
var zoom = 13;
var location = new GLatLng(latitude, longitude);
// var marker = new GMarker(location);
// map.addOverlay(marker);
map.setCenter(location, zoom);
geocoder = new GClientGeocoder();
showAddress(address);
}
}
function showAddress(address) {
if (geocoder) {
geocoder.getLatLng(
address,
function(point) {
if (!point) {
$(“#nomap”).text(‘indirizzo non disponibile’);
} else {
map.setCenter(point, 13);
var marker = new GMarker(point);
map.addOverlay(marker);
// marker.openInfoWindowHtml(address);
}
}
);
}
}
window.onload = load;
window.onunload = GUnload;
</script>
<div id=“nomap” style=“color: red;”></div>
<div id=“map” style=“width: 300px; height: 200px;”></div>
Il codice HTML delle ultime due righe crea due div: il primo serve per visualizzare un messaggio di
warining nel caso in cui l’indirizzo passato non sia stato trovato dal motore di ricerca, il secondo serve per la visualizzazione della mappa.
Lo script è composto da due funzioni: load() e showAddress(address). La funzione load viene richiamata al caricamento della pagina, ed è ovviamente il cuore di questo script: si occupa di settare tutti i paramentri necessari, tra cui il settaggio dell’id del div che conterrà la mappa (map).
Eseguite tutte le assegnazioni del caso, viene infine richiamata la seconda funzione importante,
showAddress(address).
Questa ha un parametro, address, che potremmo ad esempio generare e passare con computazioni proveniente da pagine php, che è proprio l’indirizzo che verrà visualizzato sulla mappa attraverso l’uso dei marker settati nella prima funzione.
L’indirizzo è un parametro, ed è quindi dinamico: ogni qualvolta la pagina verrà ricaricata, leggerà l’indirizzo attualmente impostato e lo passerà allo script, che si occuperà di visualizzarlo sulla mappa.
