var panoClient;
var display_section;

/*common Icons used on the Map*/
var Marker_Icon = new GIcon();
Marker_Icon.image = icon_marker;
Marker_Icon.iconAnchor = new GPoint(5,20);
Marker_Icon.infoWindowAnchor = new GPoint(5,1);


function createMarker(point, htmlContent, ico) 
{
   

   var marker = new GMarker(point,eval(ico));
   if(point=="(0, 0)")
	{
		GEvent.addListener(marker, "load", function() {
		marker.openInfoWindowHtml(htmlContent);
	   });
	}
	else
	{
	   GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml(htmlContent);
	   });
	}  
   
   return marker;
}// end of  function   
 


   
function handleNoFlash(errorCode) 
{
      if (errorCode == 603) 
	  {
			alert("Error: Flash doesn't appear to be supported by your browser");
			return;
      }
} 

function showAddress(lat,lng,address) 
{ 	
	//alert("lat=>"+lat+" lang=>"+lng+" address=>"+address);
	if (GBrowserIsCompatible()) 
	{ 
		
		var map = new GMap2(document.getElementById("map"));
		map.addControl(new GSmallMapControl());
	//	map.addControl(new GMapTypeControl());
		var point = new GLatLng(lat,lng);
	  map.setCenter(point, 15);
	 
		
		if(validateaddress(point,lat,lng,map))
		{
			
		tabbed_array="<table border='0'><tr><td align='left' class='frmlabel3'>"+address+"</td></tr></table> ";
		map.addOverlay(createMarker(point, tabbed_array,eval(Marker_Icon)));
		}
		

		

	   

		/*Code added to chk if Street View is supported*/
		panoClient = new GStreetviewClient();
		panoClient.getNearestPanorama(point, function(panoData)
		{
			
			
			if (panoData.code != 200) 
			{
				var map_full = new GMap2(document.getElementById("map_full"));
	   			map_full.addControl(new GSmallMapControl());
				map_full.addControl(new GMapTypeControl());
				map_full.setCenter(point, 15);
				if(validateaddress(point,lat,lng,map_full))
				{
				map_full.addOverlay(createMarker(point, tabbed_array,eval(Marker_Icon)));
				}
				display_section = "full";
				
			 
			}
			else
			{
				//plot top map
				var map_complete = new GMap2(document.getElementById("map_complete"));
	   			map_complete.addControl(new GSmallMapControl());
				map_complete.addControl(new GMapTypeControl());
				map_complete.setCenter(point, 15);
				map_complete.addOverlay(createMarker(point, tabbed_array,eval(Marker_Icon)));
				
				//plot strret view
				var myPano = new GStreetviewPanorama(document.getElementById("pano"));
				GEvent.addListener(myPano, "error", handleNoFlash);
				svOverlay = new GStreetviewOverlay(); 
				myPano.setLocationAndPOV(point);
				display_section = "partial";
				//	return "1";
					
			}	
		});
		/*alert(panoData);
		alert(support);
		if(support == "1")
		{
				var myPano = new GStreetviewPanorama(document.getElementById("pano"));
				GEvent.addListener(myPano, "error", handleNoFlash);
				svOverlay = new GStreetviewOverlay(); 
				myPano.setLocationAndPOV(point);
		}
		else
		{
			 alert("not supported");
		}*/
		//panoClient.getPanoramaById(panoData.point.panoId, processReturnedData);
    


					
				//	map.addOverlay(svOverlay);
				
					
					//  document.getElementById("map_complete").style.display="block";
//					  document.getElementById("pano").style.height = "217px";
				//	  document.getElementById("pano").style.display = "block";
					//  document.getElementById("pano").style.visibility = "visible";
        

				
		
		
	}
}
//]]>

/*function showAddress(address) 
{  
	if (GBrowserIsCompatible())	
	{  
		
		var map = new GMap2(document.getElementById("map"));
		
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		
	}
}*/


function display_map(visibility)
	{
		//alert(display_section);
		if(visibility == 1)
		{
			if(display_section == "partial")
			{
				document.getElementById("map_without_street").style.display = "none";
				document.getElementById("map_with_street").style.display="block";
				document.getElementById("pano").style.display = "block";
				document.getElementById("container_otherpro_holder").style.display = "none";
				LoadData();
			}
			else if(display_section == "full")
			{
				 document.getElementById("map_with_street").style.display="none";
				 document.getElementById("pano").style.display = "none";
				 document.getElementById("map_without_street").style.display = "block";		
			     document.getElementById("map").style.display = "none";
				 LoadData();
			}
		}
		else
		{
				   document.getElementById("map_with_street").style.display="none";
				 document.getElementById("pano").style.display = "none";
				 document.getElementById("map_without_street").style.display = "none";
				 document.getElementById("map").style.display = "block";
				 document.getElementById("container_otherpro_holder").style.display = "";
				 LoadData();
		}
	}

function validateaddress(point,lat,lng,map)
{
	
	if(lat=="0.000000"||lng=="0.000000")
		{
		
		tabbed_array="<table border='0'><tr><td align='left' class='frmlabel3'>Property address can't be geocoded.</td></tr></table> ";
		map.openInfoWindowHtml(point, tabbed_array);
		map.addOverlay(createMarker(point, tabbed_array,eval(Marker_Icon)));
		
		return false;
		}
		else
			return true;
}