function showBtnReposition() {
    $('#btnReposition').style.display = 'inline';
}

function hideBtnReposition() {
    $('#btnReposition').style.display = 'none';
}

function showMapAndGeocode() {
    $('#fs_geolocation').slideDown('slow', function () {
        sLastAddress = sAddressToGeocode;
        myGeocodeAndAddDraggableMarker();
    });
}

function showMapWithPoint(aPoint) {
    $('#fs_geolocation').slideDown('slow', function () {
        addMarkerByLatLng(aPoint);
    });
}

function hideMapAndResetGeocode() {
    /* NOTA: rimuovi il marker e resetta lat e long qui */
    $('#fs_geolocation').slideUp();
    if (initialized) {
        myClearMarkers();
        $('#lat').val('');
        $('#lng').val('');
    }
}

function getFormAddress() {
	
    /* Determina le vars */
    var myIndirizzo = $.trim($('#indirizzo').val());
    var myCitta = $.trim($('#citta').val());
    var myCap = $.trim($('#cap').val());
    var myProvinciaId = $.trim($('#province_id').val());
    var myProvinciaTxt = $.trim($("#province_id option:selected").text());
	
    var addr = [];
    addr.push(myIndirizzo);
    addr.push(myCitta);
    addr.push(myCap);
    addr.push(myProvinciaId);
    addr.push('IT');
    return addr.join(', ');
}

/* Viene lanciata sul cambiamento di indirizzo */
function addressChanged() {

    /* Determina le vars */
    var myIndirizzo = $.trim($('#indirizzo').val());
    var myCitta = $.trim($('#citta').val());
    var myProvinciaId = $('#province_id').val();

    /* Esce se indirizzo non abbastanza completo */
    if (myProvinciaId=='' || myCitta=='' || myIndirizzo=='') {
        hideMapAndResetGeocode();
        sLastAddress = '';
        return;
    }

    /* Compone indirizzo da geocodificare */
    sAddressToGeocode = getFormAddress();

    /* Inizializza la mappa (se deve), fa apparire il fieldset con la mappa */
    if (sAddressToGeocode != sLastAddress)
        showMapAndGeocode();
}

function addMarkerByLatLng(argPoint) {
    initializeMapIfShould();
    myClearMarkers();
    myAddDraggableMarker(argPoint);
    myAutoZoom([argPoint]);
}
