Geolocation

by Aqilah Misuary

HTML

<p>Click the button to get your coordinates.</p>

<button onclick="getLocation()">Map</button>
<button onclick="getmoveLocation()">Coordinates</button>

<p id="geolocation"></p>

<div id="mapholder"></div>

<p id="time"></p>

<button onclick="getElementById('time').innerHTML=Date()">Time</button>

JavaScript

var x = document.getElementById("geolocation");

function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
    } else { 
        x.innerHTML = "Geolocation is not supported by this browser.";
    }
}

function getmoveLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.watchPosition(shownumPosition);
    } else { 
        x.innerHTML = "Geolocation is not supported by this browser.";}
    }

function shownumPosition(position) {
    x.innerHTML="Latitude: " + position.coords.latitude + 
    "<br>Longitude: " + position.coords.longitude;	
}

function showPosition(position) {
    var latlon = position.coords.latitude + "," + position.coords.longitude;
    var img_url = "http://maps.googleapis.com/maps/api/staticmap?center="
    +latlon+"&zoom=14&size=400x300&sensor=false";
    
    document.getElementById("mapholder").innerHTML = "<img src='"+img_url+"'>";
}

function showError(error) {
    switch(error.code) {
        case error.PERMISSION_DENIED:
            x.innerHTML = "User denied the request for Geolocation."
            break;
        case error.POSITION_UNAVAILABLE:
            x.innerHTML = "Location information is unavailable."
            break;
        case error.TIMEOUT:
            x.innerHTML = "The request to get user location timed out."
            break;
        case error.UNKNOWN_ERROR:
            x.innerHTML = "An unknown error occurred."
            break;
    }
}