function selectSearchText(fieldName,defaultText)
{
if ($(fieldName).value == defaultText) $(fieldName).value ="";
}

function restoreSearchText(fieldName,defaultText)
{
if ($(fieldName).value == "") $(fieldName).value = defaultText;
}

function doGoogleSearch()
{
var searchString = $('gSearch').value;
var geocoder = new GClientGeocoder();
//geocoder.getLatLng(searchString, newPoint );
geocoder.getLocations(searchString, decodeAddress );
}

function decodeAddress(response)
{
var aPlace = response.Placemark[0];
aPoint = new GLatLng(aPlace.Point.coordinates[1], aPlace.Point.coordinates[0]);
newPoint(aPoint);
address = aPlace.address;
addressBase = aPlace.AddressDetails.Country;

try {placeLN = addressBase.AdministrativeArea.SubAdministrativeArea.Locality.LocalityName;}catch(e){placeLN = "";}
try {placeSAN = addressBase.AdministrativeArea.SubAdministrativeArea.SubAdministrativeAreaName;}catch(e){placeSAN = "";}
try {placeAAN = addressBase.AdministrativeArea.AdministrativeAreaName;}catch(e){placeAAN = "";}
try {placeCNC = addressBase.CountryNameCode;}catch(e){placeCNC = "";}
try {placeTN = addressBase.AdministrativeArea.SubAdministrativeArea.Locality.Thoroughfare.ThoroughfareName;}catch(e){placeTN = "";}
$('gAddress').innerHTML = placeTN;
$('gTown').innerHTML = placeLN;
$('gProvince').innerHTML = "("+placeSAN+")";
doCopyData();
}

function newPoint(geoLoc)
{
map.setCenter(geoLoc, 15, G_NORMAL_MAP );
                map.clearOverlays();
                map.addOverlay(new GMarker(geoLoc)); 
$('gLat').innerHTML = geoLoc.lat();
$('gLng').innerHTML = geoLoc.lng();
}

function doCopyData()
{
    $('PointAddress').value = $('gAddress').innerHTML;
    $('PointCity').value = $('gTown').innerHTML+", "+$('gProvince').innerHTML;
    $('PointLatitude').value = $('gLat').innerHTML;
    $('PointLongitude').value = $('gLng').innerHTML;
}

