

	// GOOGLE MAPS
	
	
	// PANO
	 function initialize() {
      var myPano = new GStreetviewPanorama(document.getElementById("pano"));
      fenwayPark = new GLatLng(40.745978,-73.976587);
	  
	   //fenwayPark = new GLatLng(40.755775,-73.972235);
	   
	   
      myPOV = {yaw:0,pitch:5};
      myPano.setLocationAndPOV(fenwayPark, myPOV);
    }
	
	
	
	
	
	// STANDARD MAP
    var map;
    var start;
    var panorama;
    var markers;
    var currentMarkerNum;
    var client;
	var geocoder;
	
	var noPano = false;
 	var noAddress = false; 
 
 	var address; 
	
 	// FOR PANO ROTATE
 	var timer; 
	var timer2; 
	var currentYaw = 0;
	var currentPitch = 15;
	
	var currentZoom = 2; 
	//var dontAnimate = false; 
 
 
 
 
 	// GET URL PARAMETERS
 	function gup( name )
	{
	  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
	  var regexS = "[\\?&]"+name+"=([^&#]*)";
	  var regex = new RegExp( regexS );
	  var results = regex.exec( window.location.href );
	  if( results == null )
		return "";
	  else
		return results[1];
	}



 
/* function updateMap(ll){
		
		var latlong = ll; 
		
		alert(latlong); 
		//map.setLatLng(latlong);
		
		map.setCenter(latlong, currentZoom);
	  
	  
    }
	*/
	
	
	
	
    function startMap() {
     
		address = decodeURI(gup('address'));
		
		
		
		makeMap(); 
		
	}
	
	
	 
	function makeMap(){
		
		currentZoom = 2; 
		noPano = false ; 
		
		
		/*if( address == ""){ 
					address = "USA"; 
					noAddress = true; } 
			else { 
				noAddress = false; 
				
				
			}
		*/
		clearInterval(timer); 
		clearInterval(timer2); 
		
		
	 if (GBrowserIsCompatible()) {
        var opts = { onMarkersSetCallback: processMarkers, resultList : G_GOOGLEBAR_RESULT_LIST_SUPPRESS, showOnLoad: true};
        
		map = new GMap2(document.getElementById("map"), {googleBarOptions: opts});
        
		start = new GLatLng(34.04526, -118.2856);
       
	   // map.setCenter(start, 13);
        //map.enableGoogleBar();
        //map.addControl(new GSmallMapControl());
        //map.addOverlay(new GStreetviewOverlay());
		
		map.setMapType(G_HYBRID_MAP);
		map.backgroundColor = 0x000000; 
		
		
		geocoder = new GClientGeocoder();

		
		
        client = new GStreetviewClient();
		
		  if (geocoder) {
				
				geocoder.getLatLng(
				  address,
				  function(point) {
					if (!point) {
					 
					// alert(address + " not found");
					 
					 	noAddress = true; 
						 setAddressFlash();
					
					} else {
					
					map.setCenter(point, currentZoom);
					
					var marker = new GMarker(point);
					  map.addOverlay(marker);
					
						showPanoramaForMarker(marker);
					  //marker.openInfoWindowHtml(address);
					}
				  }
				);
			  }

      }
	  
	}
	
	

	function newAddress(a){
		
		//alert("newaddress:"+a); 
		noAddress = false; 
		noPano = false; 
		
		address = a ; 
		makeMap(); 
		
	}
	
	


    function processMarkers(m) {
      markers = m;
      for (var i = 0; i < markers.length; i++) {
        addListener(markers[i].marker);
      }
      showPanoramaForMarker(markers[0].marker);
    }

    function addListener(marker) {
      GEvent.addListener(marker, 'click', function() {
       showPanoramaForMarker(marker);
      });
    }

    
	
	
	function showPanoramaForMarker(marker) {
      if (!panorama) {
        panorama = new GStreetviewPanorama(document.getElementById("pano"));
      }
	  
      
	  client.getNearestPanorama(marker.getLatLng(), onResponse);
	  // client.getNearestPanorama(start, onResponse);
	
	 
	// alert("address:"+address); 
	 
	 if( !noAddress ){
	 
		startZooming();  
	  	
	 }	  
	 
	 
	
	//	getFlashMovie("landing_page").playStealth(address, marker.getLatLng().lat, marker.getLatLng().lng, noAddress ); 
	 setAddressFlash();
	  
	  
    }

	
	function setAddressFlash(){
		// alert("Set Address flash:noaddress - "+noAddress);
		getFlashMovie("landing_page").playStealth(address, noAddress ); 
	
	}
	
	

	function setPanoFlash(){
		
		//alert("start flash:"+noPano);	
		getFlashMovie("landing_page").setPano(noPano); 
	  
	}



    function onResponse(response) {
     
	 	//alert("pnao response"); 
		
		
		 if (response.code != 200) {
			//alert('No nearby panorama. Try new search or location.');
			noPano = true;
			setPanoFlash(); 
			//getFlashMovie("landing_page").setPano(noPano); 
			
		  } else if (response.code == 200) {
		 	
			noPano = false;
			setPanoFlash(); 
		
		var latlng = new GLatLng(response.Location.lat, response.Location.lng);
				panorama.setLocationAndPOV(latlng);
			
				panorama.setPov( { pov: new GPov({yaw:0, pitch:-45})   }); 
			
				//noPano = false;
			
		  }
	  
	  
	  
	  
	  
    }
	
	
	
	
	
	function getFlashMovie(movieName) {  
		 var isIE = navigator.appName.indexOf("Microsoft") != -1;  
	
		 return (isIE) ? window[movieName] : document[movieName]; 
	 
	 }  
	
	
	
	
	function spin() {
	  currentYaw += 1;
	  panorama.panTo({yaw:currentYaw, pitch:currentPitch});
	}
	
	
	
	function startSpin(){
		
		 timer = window.setInterval(spin, 68);
		
		
	}
	
	
	function stopSpin(){
		
		clearInterval(timer); 
		clearInterval(timer2); 
		
		//document.getElementById("maps_container").style.zIndex = 5; 
		
	}
	
	
	function zoomMap(){
		currentZoom += 4; 
		map.setZoom(currentZoom); 
	}
	
	
	
	function startZooming(){
		
		 timer2 = window.setInterval(zoomMap, 8000);
		 
	}
	
	
	
