
//<![CDATA[
var myclick;
var boxclick;
    function mapload(){
		var gmarkers = [];
		var gicons = [];
		
		
		var icons = [];
		
		
		for (var i = 1; i<=16; i++){
			var number = i < 10 ? "0"+i : i;
		  var icon = new google.maps.MarkerImage("/_widgets/GoogleMapListings/images/map-icon/marker"+number+"re.png",
			 new google.maps.Size(50, 43),
			 new google.maps.Point(0, 0),
			 new google.maps.Point(9, 30)
		  );
		  
		  var shadow = new google.maps.MarkerImage("/_widgets/GoogleMapListings/images/map-icon/markershadowre.png",
			new google.maps.Size(30, 20),
			new google.maps.Point(0, 0),
			new google.maps.Point(9, 30)
		  );
		  
		  icon.infoWindowAnchor = new google.maps.Point(9, 2);
		  icon.infoShadowAnchor = new google.maps.Point(18, 25);
		  icon.transparent = "/_widgets/GoogleMapListings/images/map-icon/markerTransparent.png";
		  icon.printImage = "/_widgets/GoogleMapListings/images/map-icon/gif/marker"+number+"re.gif";
		  icon.mozPrintImage = "/_widgets/GoogleMapListings/images/map-icon/gif/marker"+number+"re.gif";
		  
		  gicons["marker"+number+"re"] = [icon,shadow];
		}
		
		
		  var map = new google.maps.Map(document.getElementById("map-listing"),{
			"center": new google.maps.LatLng(35.570643013793,-92.177172157008),
			"zoom": 10,
			  navigationControl: true,
			  navigationControlOptions: 
				{style: google.maps.NavigationControlStyle.DEFAULT,
				 position: google.maps.ControlPosition.BOTTOM_LEFT },
			  mapTypeControl: true,
			  mapTypeControlOptions: 
				{style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
				 position: google.maps.ControlPosition.TOP_RIGHT },

			  scaleControl: true,
			   scaleControlOptions: {
					position: google.maps.ControlPosition.BOTTOM_LEFT
			  }, 
			  mapTypeId: google.maps.MapTypeId.roadmap, 
			  draggable: (($.browser.mobile) ? false : true), 
              scrollwheel: false,
			  disableDoubleClickZoom: false,
			  keyboardShortcuts: true

		  });
          
          
          var styles = [
  {
    stylers: [
      { hue: "#B29572" },
      { saturation: -20 }
    ]
  },{
    featureType: "road",
    elementType: "geometry",
    stylers: [
      { lightness: 100 },
      { visibility: "simplified" }
    ]
  },{
    featureType: "road",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  }
];

map.setOptions({styles: styles});
          
          
          
		  var infowindow = new google.maps.InfoWindow();

		
		
		  function createMarker(point,name,html,category) {
		  
			var marker = new google.maps.Marker({
				  position: point, 
				  map: map,
				  icon: gicons[category][0],
				  shadow: gicons[category][1]
			  });   
			
			marker.mycategory = category;                                 
			marker.myname = name;
			
			google.maps.event.addListener(marker, 'click', (function(marker) {
				return function() {
					infowindow.setContent("<div class='infowin-content'>"+html+"<\/div>");
					infowindow.open(map, marker);
					$(".infowin-content").parent().css('overflow','hidden').parent().css('overflow','hidden');
				}
			})(marker));
			
			gmarkers.push(marker);
			
			
			return marker;
		  }
		  
		  
		  function show(category) {
			for (var i=0; i<gmarkers.length; i++) {
			  if (gmarkers[i].mycategory == category) {
				gmarkers[i].setVisible(true);
			  }
			}
			
			document.getElementById(category+"box").checked = true;
		  }
		  
		  
		  function hide(category) {
			for (var i=0; i<gmarkers.length; i++) {
			  if (gmarkers[i].mycategory == category) {
				gmarkers[i].setVisible(false);
			  }
			}
			
			document.getElementById(category+"box").checked = false;
			
			infowindow.close();
		  }
		  
		  
		  boxclick = function (box,category) {
			if (box.checked) {
			  show(category);
			} else {
			  hide(category);
			}
			
			makeSidebar();
		  }

		  myclick = function (i) {
			google.maps.event.trigger(gmarkers[i],"click");
		  }
		  
		  
		  var bounds = new google.maps.LatLngBounds();
		  
		  
		  function makeSidebar() {
			var html = "";
			for (var i=0; i<gmarkers.length; i++) {
			  if (gmarkers[i].getVisible()) {
				html += '<a class="btn btn-dark btn-sm" href="javascript:myclick(' + i + ')">' + gmarkers[i].myname + '<\/a>';
			  }
			}
			//document.getElementById("MAPside_bar").innerHTML = html;
			$('#MAPside_bar').html(html);
		  }
		  
		function parseXML(xml){
			var xmlDoc = $(xml);
			xmlDoc.find('marker').each(function(){
			
					
				  var lat = parseFloat($(this).attr("lat"));
				  var lng = parseFloat($(this).attr("lng"));
				  var point = new google.maps.LatLng(lat,lng);
				  var address = $(this).attr("address");
				  var name = $(this).attr("name");
				  var html = "<b>"+name+"<\/b>"+address;
				  var category = $(this).attr("category");
				  
				  var marker = createMarker(point,name,html,category);
				  marker.setMap(map);
				  
				  bounds.extend(point);
			});

			
			map.fitBounds(bounds);

			
			show("marker01re");
			show("marker02re");
			show("marker03re");
			show("marker04re");
			show("marker05re");
			show("marker06re");
			show("marker07re");
			show("marker08re");
			show("marker09re");
			show("marker10re");
			show("marker11re");
			show("marker12re");
			show("marker13re");
			show("marker14re");
			show("marker15re");
			show("marker16re");

			
			
			makeSidebar();
			
		  }

		$.ajax({
		  type: "get",
		  url: "/MapXml/carmlsDATA/residential/26009115-26008571-26010646-26010657-26008710-25018185-26012534-26008424-26003977-26004529-26002343-25042689-26003903-26011718-25047423-26010747-25047938-25012219-25043099-26007639-.xml", 
		  dataType: "xml",
		  success: parseXML,
		  complete: function( xhr, status )
			{
			  if( status == 'parsererror' )
			  {

				xmlDoc = null;

				
				
				
				if( window.DOMParser )
				{
				  parser=new DOMParser();
				  xmlDoc=parser.parseFromString( xhr.responseText,"text/xml" ) ;
				}
				else 
				{
				  xmlDoc=new ActiveXObject( "Microsoft.XMLDOM" ) ;
				  xmlDoc.async = "false" ;
				  xmlDoc.loadXML( xhr.responseText ) ;
				}
				parseXML( xmlDoc ) ;
			  }
			},
		  error: function(){
		  }
		});
	}
// ]]>
window.onload = function (){
mapload()
}