﻿// JScript File
/* * * * * * * * * * * Google map scripts * * * * * * * * */
   
// Check to see if this browser can run the Google API
var gmarkers = [];
var htmls = [];
var to_htmls = [];
var from_htmls = [];
var i=0;

// A function to create the marker and set up the event window
function createMarker(point,name,html) {
  var marker = new GMarker(point);

  // The info window version with the "to here" form open
  to_htmls[i] = html + '<br>Directions: <b>To here</b> - <a href="javascript:fromhere(' + i + ')">From here</a>' +
	 '<br>Start address:<form action="http://maps.google.com/maps" method="get" target="_blank">' +
	 '<input type="text" SIZE=40 MAXLENGTH=40 name="saddr" id="saddr" value="" /><br>' +
	 '<INPUT value="Get Directions" TYPE="SUBMIT">' +
	 '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() + 
			// "(" + name + ")" + 
	 '"/>';
  // The info window version with the "to here" form open
  from_htmls[i] = html + '<br>Directions: <a href="javascript:tohere(' + i + ')">To here</a> - <b>From here</b>' +
	 '<br>End address:<form action="http://maps.google.com/maps" method="get"" target="_blank">' +
	 '<input type="text" SIZE=40 MAXLENGTH=40 name="daddr" id="daddr" value="" /><br>' +
	 '<INPUT value="Get Directions" TYPE="SUBMIT">' +
	 '<input type="hidden" name="saddr" value="' + point.lat() + ',' + point.lng() +
			// "(" + name + ")" + 
	 '"/>';
  // The inactive version of the direction info
  html = html + '<br>Directions: <a href="javascript:tohere('+i+')">To here</a> - <a href="javascript:fromhere('+i+')">From here</a>';

  GEvent.addListener(marker, "click", function() {
	marker.openInfoWindowHtml(html);
  });
  
  gmarkers[i] = marker;
  htmls[i] = html;
  i++;
  return marker;
}

// functions that open the directions forms
function tohere(i) {
  gmarkers[i].openInfoWindowHtml(to_htmls[i]);
}
function fromhere(i) {
  gmarkers[i].openInfoWindowHtml(from_htmls[i]);
}

// Display the map, with some controls and set the initial location 
function loadMap(eltMap, lat, lng, cemetN, addr) 
{
	//check if the browser is complated with Google MP API
	if(GBrowserIsCompatible()) 
	{
		var map = new GMap2(document.getElementById(eltMap));//holds the Area where the Map will be loaded
		
		if(map != null) 
		{
			map.addControl(new GLargeMapControl());
			map.addControl(new GMapTypeControl());
			map.setCenter(new GLatLng( lat,lng), 14);

			var html = '<b>' + cemetN + '</b>' + '<br /><b>Address: </b>' + addr;
			// Set up markers with info windows 
			var point = new GLatLng( lat,lng);
			var marker = createMarker(point,cemetN,html)
			map.addOverlay(marker);
			
			// create tips on marker
			marker.openInfoWindowHtml(html);
		}//end of if
	}//end of if
  }//end of loadMap()
  
  // Display the map, with some controls and set the initial location 
function loadMapCity(eltMap, lat, lng, cemetN, addr) 
{
	//check if the browser is complated with Google MP API
	if(GBrowserIsCompatible()) 
	{
		var map = new GMap2(document.getElementById(eltMap));//holds the Area where the Map will be loaded
		
		if(map != null) 
		{
			map.addControl(new GLargeMapControl());
			map.addControl(new GMapTypeControl());
			map.setCenter(new GLatLng( lat,lng), 14);

			var html = '<b>' + cemetN + '</b>';
			// Set up markers with info windows 
			var point = new GLatLng( lat,lng);
			var marker = createMarker(point,cemetN,html)
			map.addOverlay(marker);
			
			// create tips on marker
			marker.openInfoWindowHtml(html);
		}//end of if
	}//end of if
  }//end of loadMap()

// Display the map, with some controls and set the initial location 
// To A Hidden Div
function loadMapToHiddenDiv(eltholder,eltMap, lat, lng, cemetN, addr) 
{
	  var holderMap = document.getElementById(eltholder);
	  
	  
	  if(holderMap != null)
	  {
		  holderMap.style.display = (holderMap.style.display =='block') ? 'none' : 'block';
		  
		  if(GBrowserIsCompatible() && holderMap.style.display =='block') 
		  {
			  var map = new GMap2( document.getElementById(eltMap));
			  
			  if(map != null) 
			  {
				  map.addControl(new GLargeMapControl());
				  map.addControl(new GMapTypeControl());
				  map.setCenter(new GLatLng( lat,lng), 14);
  
				  var html = '<strong>' + cemetN + '</strong>' + '<br /><strong>Address: </strong>' + addr;
				  // Set up markers with info windows 
				  var point = new GLatLng( lat,lng);
				  var marker = createMarker(point,cemetN,html)
				  map.addOverlay(marker);
				  
				  // create tips on marker
				  marker.openInfoWindowHtml(html);
			  }//end of if
		  }//end of if
	  }//end of if
  }//end of loadMapToHiddenDiv()