//<![CDATA[
 var panoClient;
 var marker;
  
function initialize() {
            var myPano = new GStreetviewPanorama(document.getElementById("pano"));
              GEvent.addListener(myPano, "error", handleNoFlash);
              var map = new GMap2(document.getElementById("map_canvas"));
       
              map.setCenter(new GLatLng(37.4419, -122.1419), 13);
              svOverlay = new GStreetviewOverlay();
              map.addOverlay(svOverlay);
              var options = {
             searchFormHint : "Schools"
                };
     map.addControl(new google.maps.LocalSearch(options));
            
      }

function handleNoFlash(errorCode) {
      if (errorCode == FLASH_UNAVAILABLE) {
        alert("Error: Flash doesn't appear to be supported by your browser");
        return;
      }
    } 
function createMarker(point,html,address,image,price,city,vtour) {

        panoClient = new GStreetviewClient();    
        var baseIcon = new GIcon();
	baseIcon.image = "icon3.png";
	baseIcon.iconSize = new GSize(32, 32);
        baseIcon.iconSize=new GSize(32,32);
	baseIcon.shadowSize=new GSize(56,32);
        baseIcon.shadow = "icon10s.png";
        baseIcon.iconAnchor=new GPoint(16,32);
        baseIcon.infoWindowAnchor=new GPoint(20,0);

            
        var marker = new GMarker(point,baseIcon );
        var img= "<img src=homeimg.php?imname=" + image + " height=100 width=100>";
        var link = "<a href=" + "'" + address + "'" + ">" + html + "<br>" + img + "<br> $" + price + "<br>" + city + ",         Oklahoma</a>"; 	
 function showPanoData(panoData) {
      if (panoData.code != 200) {
        GLog.write('showPanoData: Server rejected with code: ' + panoData.code);
        return;
      }
      var angle = computeAngle(marker.getLatLng(), panoData.location.latlng);
      myPano.setLocationAndPOV(panoData.location.latlng, {yaw: angle});
    }


    GEvent.addListener(marker, "mouseover", function(latlng) {
panoClient.getNearestPanorama(point, showPanoData); 
});

GEvent.addListener(marker, "mouseover", function() { marker.openInfoWindowHtml(link,price,city);} );


GEvent.addListener(marker, "dblclick", function() { map.setCenter(point,16); });

GEvent.addListener(marker, "doubleclick", function() { map.setCenter(new GLatLng(37.4419, -122.1419), 13); });
return marker;
   	}

function getMarks(url) { /* pass url during the call. */
	map.closeInfoWindow(); /*close any InfoWindows that happen to be open  */
	 var request = GXmlHttp.create(); /* use the XML methods  */
    	request.open("GET", url, true);
    	var geocoder = new GClientGeocoder();

        request.onreadystatechange = function() {
     	if (request.readyState == 4) {	
     

                
                var xmlDoc = request.responseXML; /* php returns 'XML' */
		var markers = xmlDoc.documentElement.getElementsByTagName("marker"); 
		for (var loop1=0;loop1<markers.length;loop1++){
			var lat = parseFloat(markers[loop1].getAttribute("lat"));  /* data is string. */
			var lng = parseFloat(markers[loop1].getAttribute("lng")); 
			var addy = markers[loop1].getAttribute("address") + " , " +             markers[loop1].getAttribute("city");
		        var point = new GLatLng(lat,lng);
                     
			var address = markers[loop1].getAttribute("address");
			var html = markers[loop1].getAttribute("html");
			var price = markers[loop1].getAttribute("price");
			var city = markers[loop1].getAttribute("city");
			var image = markers[loop1].getAttribute("image");
                        var vtour = markers[loop1].getAttribute("vtour");
			var marker = createMarker(point,html,address,image,price,city,vtour);
			
                        map.addOverlay(marker);
                        
			}
		}
		};
	request.send(null);
}
    
    function computeAngle(endLatLng, startLatLng) {
      var DEGREE_PER_RADIAN = 57.2957795;
      var RADIAN_PER_DEGREE = 0.017453;

      var dlat = endLatLng.lat() - startLatLng.lat();
      var dlng = endLatLng.lng() - startLatLng.lng();
      // We multiply dlng with cos(endLat), since the two points are very closeby,
      // so we assume their cos values are approximately equal.
      var yaw = Math.atan2(dlng * Math.cos(endLatLng.lat() * RADIAN_PER_DEGREE), dlat)
             * DEGREE_PER_RADIAN;
      return wrapAngle(yaw);
   }

   function wrapAngle(angle) {
    if (angle >= 360) {
      angle -= 360;
    } else if (angle < 0) {
     angle += 360;
    }
    return angle;
  };


//]]>