﻿
function adminMapPicker(the_lat, the_lng, zoom, element) {

    var map = new GMap2(document.getElementById("admin_map"));

    map.addControl(new GSmallMapControl());
    map.setCenter(new GLatLng(52.274432, 0.296631), zoom);

    if ((the_lat) && (the_lat + "x" != "x")) {

        if ((zoom) && (zoom + "x" == "x")) { zoom = 7; }
        map.setCenter(new GLatLng(the_lat, the_lng), zoom);
        var venueMarker = new GMarker(new GLatLng(the_lat, the_lng, zoom));
        map.addOverlay(venueMarker);
    }

    GEvent.addListener(map, "zoomend", function(oldLevel, newLevel) {

        // *** Get the existing location data
        var strExistingData = document.getElementById(element).value;

        //    alert(strExistingData);
        //    alert(oldLevel);
        //    alert(newLevel);

        // *** Set the element value to be the current location data with the old zoom level replaced with the new zoom level
        document.getElementById(element).value = strExistingData.replace("/" + oldLevel + "$", "/" + newLevel + "$")

        //alert(document.getElementById(element).value);

    });
    
    GEvent.addListener(map, "click", function(overlay, point) {

        map.clearOverlays();

        if (point) {
            map.addOverlay(new GMarker(point));
            map.panTo(point);

            //alert(element);

            document.getElementById(element).value = point.lat() + "/" + point.lng() + "/" + map.getZoom() + "$";
           // alert(document.getElementById(element).value);
        }

    });
}


