function Markers(fType){

// map.closeInfoWindow();
map.getInfoWindow().hide() 
   if (document.getElementById(fType).checked==false) { // hide the marker
      for (var i=0;i<gmarkers.length;i++) {
         if (gmarkers[i].type==fType)  {
            map.removeOverlay(gmarkers[i]);
         }
      }
   } else { // show the marker again
      for (var i=0;i<gmarkers.length;i++) {
         if (gmarkers[i].type==fType)  {
            map.addOverlay(gmarkers[i]);
         }
      }
   }
}
  //]]> 

  //<![CDATA[
// global variables
var gmarkers=[];
var markerText=[];
var markerStr="";
var map;
var request;
var bounds = new GLatLngBounds();
var baseIcon = new GIcon();
baseIcon.image = "paw.png";
baseIcon.shadow = "";
baseIcon.iconSize = new GSize(20, 20);
baseIcon.iconAnchor = new GPoint(10, 10);
baseIcon.infoWindowAnchor = new GPoint(10, 10);

var icons=[];

function facilityIcons(facilityType) {
   var fType;
   if ((facilityType=="generic") || (facilityType==null)) { 
      fType = "Omarker"; 
   } else { 
      fType = facilityType; 
   }
   if (!icons[facilityType]) {
      var icon = new GIcon(baseIcon);
      icon.image = "images/icons/" + fType +".png";
      icons[facilityType]=icon;

   } 
   return icons[facilityType];
}
	

function addMarker(lng, lat, title, iconStr, subtitle, url, photo,podcast) {
   var point = new GLatLng(lat, lng);
   bounds.extend(point);
   var icon = facilityIcons(iconStr);
   var marker = new GMarker(point, icon);
   gmarkers.push(marker);
   marker.type = iconStr; 
   GEvent.addListener(marker, "click", function () {
      var text = "<div><div align=\"center\" class=\"";
	  if(photo.length>0){
	  	text += "popup";
	  }
	  else{
	    text += "popupSm";
	  }
	  
	  text += "\"><table height=100% style='text-align:center'><tr><td valign=middle align=center><b>"+title +"</b>";
	  if(subtitle.length>0){
	   	text += "<br>" + subtitle;
	   }

	  if(photo.length>0){
	  	text += "<br><br><img src=\"" + photo + "\"/>";
	  }
	  
	  if(url.length>0){
	  	text += "<br><a href=" + url + " target=_blank>More Information</a> - ";
	  }
	  else text += "<br>";
	  
	  /*if(podcast.length>0){
	  	text += "<a href=" + podcast + " target=_blank>Audio Tour</a><br />";
	  }*/
	  
	  text += "<a href=\"http://maps.google.com/maps?z=16&saddr=&daddr=" + lat + "," + lng + "\" target =\"_blank\">Directions";
	  text += "</td></tr></table></div></div>";
      marker.openInfoWindowHtml(text);
   });

	//if((iconStr != "paw") && (iconStr != "admin") && (iconStr != "dining") && (iconStr != "housing") && (iconStr != "rec") && (iconStr != "academic") && (iconStr != "other")){
	if((iconStr != "paw") && (iconStr != "admin") && (iconStr != "dining") && (iconStr != "housing") && (iconStr != "rec") && (iconStr != "other")){
   		map.addOverlay(marker);
	}
}

function processXML() { 
   if (request.readyState == 4) {
      if (request.status != 200) {
         alert("file not found:"+request.status);
         return;
      }
      var xmlDoc = request.responseXML;
      if (!xmlDoc) {
         alert("invalid xml file");
         return;
      }
      markers = xmlDoc.documentElement.getElementsByTagName("marker");
	  
	  for (var i=0; i < markers.length; i++) {
         var fType= markers[i].getAttribute("icon");
         addMarker(parseFloat(markers[i].getAttribute("lng")), parseFloat(markers[i].getAttribute("lat")), markers[i].getAttribute("title"),fType, markers[i].getAttribute("subtitle"), markers[i].getAttribute("url"), markers[i].getAttribute("photo"), markers[i].getAttribute("podcast"));
		
	  }
   }
}  


function openMarker(i){
	GEvent.trigger(gmarkers[i],"click");
}
				
function makeMap() {
   map = new GMap2(document.getElementById("map"));
	//map.addControl(new GLargeMapControl());
	map.addControl(new GLargeMapControl(),new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(-10,-60))); 
	map.addControl(new GMapTypeControl());
	map.setCenter(new GLatLng( 34.67744967895435, -82.83712863922119), 16);
	map.setMapType(G_SATELLITE_MAP);
	map.getPane(G_MAP_FLOAT_SHADOW_PANE).style.visibility="hidden"; 

   request = GXmlHttp.create(); 
   request.open("GET", "places.xml", true); 
   request.onreadystatechange = processXML;
   request.send(null);
}	
			
  //]]> 
