var marker=null;
var map=null;
var geocoder=null;

function initialize(){
    if(GBrowserIsCompatible()){
        $("#mapa").css("height","200px");
        $("#mapa").fadeIn("fast");
        map=new GMap2(document.getElementById("mapa"));
        map.addControl(new GSmallMapControl());
        geocoder=new GClientGeocoder()
    }
}

function showAddress(B){
    if(map==null){initialize()}

    var A=$("#"+B).val();
    if(geocoder){
        geocoder.getLatLng(A,function(C){
            if(!C){
                alert("La direccion no ha sido encontrada")
            }else{
                map.setCenter(C,13);
                if(marker!=null){
                    map.removeOverlay(marker)
                }
                marker=new GMarker(C,{draggable:true});
                $("#mapa_mensaje").html("La posici&oacute;n en el mapa ha sido <strong>almacenada</strong> (<a href='javascript:deleteMap()'>Borrar</a>)");
                $("#mapa_mensaje").fadeIn("slow");
                $("#coordenadas").attr("value",C.toUrlValue());
                GEvent.addListener(marker,"dragend",function(){
                    var D=marker.getPoint();
                    $("#coordenadas").attr("value",D.toUrlValue());
                    $("#mapa_mensaje").html("La posici&oacute;n en el mapa ha sido <strong>modificada</strong> (<a href='javascript:deleteMap()'>Borrar</a>)")
                });
                GEvent.addListener(map,"click",function(D,E){
                    marker.setPoint(E);$("#coordenadas").attr("value",E.toUrlValue());
                    $("#mapa_mensaje").html("La posici&oacute;n en el mapa ha sido <strong>modificada</strong> (<a href='javascript:deleteMap()'>Borrar</a>)")
                });
                map.addOverlay(marker);
                GEvent.addListener(marker,"dragstart",function(){
                    map.closeInfoWindow()
                })
            }
        })
    }
}

function deleteMap(){
    map=null;
    $("#coordenadas").val("");
    $("#mapa_mensaje").html("La posici&oacute;n en el mapa ha sido <strong>borrada</strong>");
    $("#mapa_mensaje").fadeIn("slow");
    $("#mapa").fadeOut("slow",function(){
        $("#mapa").css("height","10px")
    })
}