function naGMapsGeocodeUpdateLatLng(point){
	$('geocodeForm_geoLat').value = point.lat();
    $('geocodeForm_geoLng').value = point.lng();
}


function addAddressToMap(response) {
  if (!response || response.Status.code != 200) {
  	 displayFeedback($('geocodeFeedback'), 'Adresse/Ort konnte leider nicht gefunden werden', 'error');
  } else {
    place = response.Placemark[0];
    point = new GLatLng(place.Point.coordinates[1],
                        place.Point.coordinates[0]);
    
    naGMapsGeocodeUpdateLatLng(point);
    
    marker.setPoint(point);
    
    map.setCenter(point, 15);

    $('geocodeFormSaveBtn').show();
    
    displayFeedback($('geocodeFeedback'), place.address + ' gefunden!', 'ok');
  } 
}

function displayFeedback(div, message, type)
{
	if(type == 'error')
	{
		if(div.hasClassName('ok')){
	  		div.removeClassName('ok');
	  	}
	  	div.addClassName('error');
	}
	else
	{
		if(div.hasClassName('error')){
	  		div.removeClassName('error');
	  	}
	  	div.addClassName('ok');
	}
    div.update(message);
    div.show();
}



// showLocation() is called when you click on the Search button
// in the form.  It geocodes the address entered into the form
// and adds a marker to the map at that location.
function showLocation(address) {
  geocoder.getLocations(address, addAddressToMap);
}


function naInitMarkerIconsForGeocodingUsers(){
	naMapIconUserFOn = new GIcon(G_DEFAULT_ICON);
  	naMapIconUserFOn.image = globalBaseUrl + '/images/shared/maps/female-online.png';
  	naMapIconUserFOn.shadow = globalBaseUrl + '/images/shared/maps/female-shadow.png';
  	naMapIconUserFOn.iconSize = new GSize(20, 34);
	naMapIconUserFOn.shadowSize = new GSize(37, 34);
  	naMapIconUserFOn.infoWindowAnchor = new GPoint(9, 12);

    naMapIconUserFOff = new GIcon(G_DEFAULT_ICON);
  	naMapIconUserFOff.image = globalBaseUrl + '/images/shared/maps/female-offline.png';
  	naMapIconUserFOff.shadow = globalBaseUrl + '/images/shared/maps/female-shadow.png';
  	naMapIconUserFOff.iconSize = new GSize(20, 34);
	naMapIconUserFOff.shadowSize = new GSize(37, 34);
  	naMapIconUserFOff.infoWindowAnchor = new GPoint(9, 12);
        	
    naMapIconUserMOn = new GIcon(G_DEFAULT_ICON);
  	naMapIconUserMOn.image = globalBaseUrl + '/images/shared/maps/male-online.png';
  	naMapIconUserMOn.shadow = globalBaseUrl + '/images/shared/maps/male-shadow.png';
  	naMapIconUserMOn.iconSize = new GSize(20, 34);
	naMapIconUserMOn.shadowSize = new GSize(37, 34);
  	naMapIconUserMOn.infoWindowAnchor = new GPoint(9, 12);

    naMapIconUserMOff = new GIcon(G_DEFAULT_ICON);
  	naMapIconUserMOff.image = globalBaseUrl + '/images/shared/maps/male-offline.png';
  	naMapIconUserMOff.shadow = globalBaseUrl + '/images/shared/maps/male-shadow.png';
  	naMapIconUserMOff.iconSize = new GSize(20, 34);
	naMapIconUserMOff.shadowSize = new GSize(37, 34);
  	naMapIconUserMOff.infoWindowAnchor = new GPoint(9, 12);
  	
}

function naInitMarkerIconsForGeocodingLocations(){
	naMapIconLoc = new GIcon(G_DEFAULT_ICON);
  	naMapIconLoc.image = globalBaseUrl + '/images/shared/maps/dot.png';
  	naMapIconLoc.shadow = globalBaseUrl + '/images/shared/maps/shadow.png';
  	naMapIconLoc.iconSize = new GSize(20, 34);
	naMapIconLoc.shadowSize = new GSize(37, 34);
  	naMapIconLoc.infoWindowAnchor = new GPoint(9, 12);
}



