﻿
var map;
function loadMap(latitude, longitude) {
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map"));
        if (latitude == 0 && longitude == 0) {
            latitude = document.getElementById("lat").value;
            longitude = document.getElementById("lng").value;

        }
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        var center = new GLatLng(latitude, longitude);
        map.setCenter(center, 14);
        map.setMapType(G_HYBRID_MAP);

        geocoder = new GClientGeocoder();

        var marker = new GMarker(center, { draggable: true });
        map.addOverlay(marker);
        document.getElementById("lat").value = center.lat();
        document.getElementById("lng").value = center.lng();

        geocoder = new GClientGeocoder();

//        GEvent.addListener(marker, "dragend", function () {
//            var point = marker.getPoint();
//            map.panTo(point);
//            document.getElementById("lat").value = point.lat();
//            document.getElementById("lng").value = point.lng();
//        });

//        GEvent.addListener(map, "moveend", function () {
//            map.clearOverlays();
//            var center = map.getCenter();
//            var marker = new GMarker(center, { draggable: true });
//            map.addOverlay(marker);
//            document.getElementById("lat").value = center.lat();
//            document.getElementById("lng").value = center.lng();

//            GEvent.addListener(marker, "dragend", function () {
//                var point = marker.getPoint();
//                map.panTo(point);
//                document.getElementById("lat").value = point.lat();
//                document.getElementById("lng").value = point.lng();
//            });
 //       });

    } 
}


function showAddress(address) {
   
    var map = new GMap2(document.getElementById("map"));
    map.addControl(new GSmallMapControl());
    map.addControl(new GMapTypeControl());
    map.setMapType(G_HYBRID_MAP);
    if (geocoder) {
        geocoder.getLatLng(
address,
function (point) {
    if (!point) {
        alert(address + " city not found !");
    }
    else {
       document.getElementById("lat").value = point.lat();
       document.getElementById("lng").value = point.lng();
        map.clearOverlays()
        map.setCenter(point, 14);
        var marker = new GMarker(point, { draggable: true });
        map.addOverlay(marker);

        GEvent.addListener(marker, "dragend", function () {
            var pt = marker.getPoint();
            map.panTo(pt);
           document.getElementById("lat").value = pt.lat();
           document.getElementById("lng").value = pt.lng();
        });

        GEvent.addListener(map, "moveend", function () {
            map.clearOverlays();
            var center = map.getCenter();
            var marker = new GMarker(center, { draggable: true });
            map.addOverlay(marker);
           document.getElementById("lat").value = center.lat();
           document.getElementById("lng").value = center.lng();

            GEvent.addListener(marker, "dragend", function () {
                var pt = marker.getPoint();
                map.panTo(pt);
               document.getElementById("lat").value = pt.lat();
               document.getElementById("lng").value = pt.lng();
            });
        });
    } 
}
);
    } 
}


function ResizeMap() {

    google.maps.event.trigger(map, 'resize');
    
  //  showAddress(document.getElementById('Searchaddress').value);

}

function SearchHandler(e,txt) {
    if (e.keyCode == 13) {
    
        showAddress(txt.value);
        return false;
    }
    return true;

}
