function initialize() {

    if (!GBrowserIsCompatible()) return false;
    
    var point = new GLatLng(_lat, _lng);
    
    var map = new GMap2(document.getElementById("map_canvas"));
    map.setCenter(point, _zoom);
    map.setUIToDefault();
    map.addControl(new GLargeMapControl());
    map.addControl(new GOverviewMapControl());

	marker = new GMarker(point, {clickable: false, draggable: true});

	GEvent.addListener(marker, 'dragend', function() {
        //alert(marker.getLatLng());
        saveLatLng(marker.getLatLng('address'), map.getZoom());
    });
	map.addOverlay(marker);

	GEvent.addListener(map, 'click', function(overlay, point) {
		if(overlay)
			return;

		marker.setLatLng(point);
		saveLatLng(marker.getLatLng('address'), map.getZoom());
	});
}


function saveLatLng(latlng, zoom) {
    $('_lat').value = latlng.lat();
    $('_lng').value = latlng.lng();
    $('_zoom').value = zoom;
}

