
function initialize_2(){
    alert('HERE!!');
}


        var geocoder, fromAddress, homePoint, homePointLat, homePointLng;
		var addresses = new Array();


	    function initialize() {
			var i;
			var a;
			var total_elem;
			var address;
			var canvas;
			var identity;
			var t = document.getElementsByTagName('INPUT');
			geocoder = new GClientGeocoder();
			total_elem = form1.elements.length;
			fromAddress = document.getElementById('homeAddress').value;
			calculateFromAddress(fromAddress);
			
			for (i = 1; i < t.length; i++) {
                /* a = i.toString(); */
			    if (t[i].name == 'address') {
			        address = t[i].value;
			        identity = t[i].title;
			        canvas = 'map_canvas_' + identity;

			        if (GBrowserIsCompatible()) {
			            var map = new GMap2(document.getElementById(canvas));
			            map.setCenter(new GLatLng(0, 0), 15);
			            showAddress(address, map, identity);
			        }
			    }
			}	
        }

        function showAddress(address, map, id) 
		{
            if (geocoder) 
			{
				geocoder.getLatLng(address,	function(point) 
											{
												if (!point) 
												{
													alert(address + " not found");
												} 
												else 
												{
													/* alert(point); */
											  
													map.setUIToDefault();
													map.setCenter(point, 15);
													var marker = new GMarker(point);
													map.addOverlay(marker);
													
													calculateDistance(address, id); 
												}
											});
            }
        }
		
		function calculateDistance(address, id) 
		{
            if (geocoder) 
			{
                geocoder.getLatLng(address, function(point) 
											{
												if (!point) 
												{
													alert(address + " not found");
												} 
												else 
												{
													var distanceMI = homePoint.distanceFrom(point, 3959).toFixed(1);
													var distanceKM = (distanceMI * 1.609344).toFixed(1);

													document.getElementById('address_display_' + id).style.display = 'table-cell';
													document.getElementById('results_' + id).innerHTML = 'DISTANCE: ' + distanceMI + ' MI / ' + distanceKM + ' KM';
													document.getElementById('distance_' + id).value = distanceMI;
												}
											});
            }
		}
		
		function calculateFromAddress(address) 
		{
            if (geocoder) 
			{
				geocoder.getLatLng(address,	function(point) 
											{
												if (!point) 
												{
													alert(address + " not found");
												} 
												else 
												{
													homePoint = point;
												}
											});
            }
        }
		
		function assignGridValues()
		{
			var i;
			var a;
			var total_elem;
			var TAddress;
			var canvas;
			var identity;
			var fAddress;
			var t = document.getElementsByTagName('INPUT');
			/* geocoder = new GClientGeocoder(); */
			total_elem = form1.elements.length;
			/* fAddress = document.getElementById('homeAddress').value;
			calculateFromAddress(fromAddress); */
			
			for (i = 1; i < t.length; i++) {
                /* a = i.toString(); */
			    if (t[i].name == 'address') {
			        TAddress = t[i].value;
			        identity = t[i].title;
					
					getDistance(TAddress, identity);
						
			    }
			}
		}	
		
		
		
		function getDistance(toAddress, id)
		{
			var fromPoint, toPoint;
			var distanceMI;
			var geo = new GClientGeocoder();
			var fAddress = document.getElementById('homeAddress').value;
			
			distanceMI = 0;
			
			/*
			if (id == 1)
			{
				alert(fAddress);
			}
			*/
			
			if (geo)
			{
				geo.getLatLng(fAddress,  	function(fromPoint)
											{
												if (!fromPoint)
												{
													/* alert(fAddress + " not found."); */
												}
												else {
												
			
				geo.getLatLng(toAddress, 	function(toPoint)
											{
												if (!toPoint)
												{
													/* alert(toAddress + " not found."); */
												}	
												else
												{
													distanceMI = fromPoint.distanceFrom(toPoint, 3959).toFixed(1);
													document.getElementById('distance_' + id).value = distanceMI;
													
													/* document.getElementById('results_' + id).innerHTML = distanceMI */
												}
											});}});
			}
			
			/* return(distanceMI); */
		}
		
		


/* ================ TEST CODE */
	    function initialize_3() {
			var i;
			var a;
			var total_elem;
			var address;
			var canvas;
			var identity;
			var t = document.getElementsByTagName('INPUT');
			geocoder = new GClientGeocoder();
			total_elem = form1.elements.length;
			fromAddress = document.getElementById('homeAddress').value;
			calculateFromAddress(fromAddress);
			
			for (i = 1; i < t.length; i++) {
                /* a = i.toString(); */
			    if (t[i].name == 'address') {
			        address = t[i].value;
			        identity = t[i].title;
			        canvas = 'map_canvas_' + identity;

			        if (GBrowserIsCompatible()) {
					
						calculateDistance_3(address, identity);
						
						/*
			            var map = new GMap2(document.getElementById(canvas));
			            map.setCenter(new GLatLng(0, 0), 15);
			            showAddress(address, map, identity);
						*/
			        }
			    }
			}	
        }

		function calculateDistance_3(address, id) 
		{
            if (geocoder) 
			{
                geocoder.getLatLng(address, function(point) 
											{
												if (!point) 
												{
													alert(address + " not found");
												} 
												else 
												{
													var distanceMI = homePoint.distanceFrom(point, 3959).toFixed(1);

													document.getElementById('distance_' + id).value = distanceMI;
													
													addresses[id][0] = id;
													addresses[id][1] = address;
													addresses[id][2] = distanceMI;
													
													document.write("id: " + addresses[id][0] + "; address: " + addresses[id][1] + "distance: " + addresses[id][2] + "<br>");
												}
											});
            }
		}
		

		


