function getDirectionsNow()
{
	user_addr= document.directions_form.address.value;

	GMapLoad(true);
}
function addressResolved(response) {
	if (response.Status.code == 200)
	{
		var place = response.Placemark[0];
		sprv_lat_long = new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]);
		GMapLoad(false);
	}
}

function GMapPreLoad()
{
	GMapLoad(false);
	//geocoder = new GClientGeocoder();
        //geocoder.setCache(null);	
	//geocoder.getLocations(sprv_address, addressResolved);
}

function GMapLoad(direction_sw)
{
	sprv_lat_long = new GLatLng(27.20720, -80.82990);

        if (GBrowserIsCompatible())
        {
          var map = new GMap2(document.getElementById("gmap"));
          map.setCenter(sprv_lat_long, 8);
	  if (direction_sw != true) {
            var point = sprv_lat_long;
            var infowindow = "<b>Silver Palms RV Resort</b><br>4143 Highway 441 South<br>Okeechobee, Florida 34974<br>Phone: 863-467-5800";
            map.addOverlay(createMarker(point,"/images/map_marker.png",infowindow));

            directionsPanel = document.getElementById("gdirection");
	    directionlinkPanel = document.getElementById("directionlink");
            hidedirectionlinkPanel = document.getElementById("hidedirectionlink");
            directionlinkPanel.style.display = 'block';
            hidedirectionlinkPanel.style.display = 'none';
	    directionsPanel.innerHTML = '';
	  }
          map.addControl(new GLargeMapControl());
          map.addControl(new GMapTypeControl());
          
         if (direction_sw == true) { 
            var directionsPanel;
          
            directionsPanel = document.getElementById("gdirection");
	    directionsPanel.innerHTML= "";
            gdir = new GDirections(map, directionsPanel);
            gdir.clear();
	    
	    gdir.load("from: "+user_addr+" to: "+sprv_address, {"preserveViewport": false });

	    directionlinkPanel = document.getElementById("directionlink");
            hidedirectionlinkPanel = document.getElementById("hidedirectionlink");
	    GEvent.addListener(gdir, "error", handleErrors);
	    gdir_holder= gdir;
	    GEvent.addListener(gdir, "load", replaceMapMarkers);
	    GEvent.addListener(gdir, "addoverlay", replaceDirMarkers);
	  }
	}
}

function replaceMapMarkers()
{
	var icon= gdir.getMarker(1).getIcon();
	icon.image= '/images/map_marker.png';
	icon.iconSize = new GSize(27, 49);
}
function replaceDirMarkers()
{
	for (var i=0; i<document.images.length; i++)
	{
		if(document.images[i].src.indexOf('icon_greenB') > -1)
		{
			document.images[i].src= '/images/map_marker.png';
			document.images[i].height= 49;
			document.images[i].width= 27;
			document.images[i].hspace= 4;
			document.images[i].vspace= 2;
		}
	}
}


function createIcon(icon_image)
{
  var icon = new GIcon();
  icon.image = icon_image;
  icon.iconSize = new GSize(27,49);
  icon.iconAnchor = new GPoint(11,55);
  icon.infoWindowAnchor = new GPoint(9, 2);
  icon.infoShadowAnchor = new GPoint(18, 25);
  return icon;
}

function createMarker(point, icon_image, infowindow)
{
  var icon= createIcon(icon_image);

  var marker = new GMarker(point, icon);
  GEvent.addListener(marker, "mouseover", function() {
    marker.openInfoWindowHtml(infowindow);
  });
  return marker;
}

function handleErrors()
{
	document.getElementById("gdirection").innerHTML = '<br><strong>Sorry, we couldn\'t find directions for the address: '+user_addr+'</strong> code:'+gdir.getStatus().code;
}
function clearDefault(el)
{
	if(el.value == el.defaultValue)
	{
		el.value="";
	}
}
