var map = null; 
var type1 = [];
var type2 = [];
var type3 = [];
function Toggle (markers, val) {
  for (i=0; i<markers.length; i++) {
    if (markers[i].getMap() == val) markers[i].setMap(null);
    else markers[i].setMap (val);
  }
}
var customIcons = {
   1: {
		icon: 'icos/redlightcamera9.bmp'
   },
   2: {
		icon: 'icos/policecar_3.BMP'
   },
   3: {
		icon: 'icos/icon_specs_cons.jpg'
   }
};
function load() {
  map = new google.maps.Map(document.getElementById("map"), {
  center: new google.maps.LatLng(42.766111, 25.2392500),
  zoom: 7,
  mapTypeId: 'roadmap',
  disableDefaultUI: true,
  panControl: false,
  streetViewControl: false,
  zoomControl: true,
  zoomControlOptions: {
  style: google.maps.ZoomControlStyle.LARGE,
  position: google.maps.ControlPosition.RIGHT_TOP
  },
  mapTypeControl: true,
  mapTypeControlOptions: {
  style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR
  },
});
  var infoWindow = new google.maps.InfoWindow;
  downloadUrl("xmlgen.php", function(data) {
  var xml = data.responseXML;
  var markers = xml.documentElement.getElementsByTagName("marker");
  for (var i = 0; i < markers.length; i++) {
    var latitude = markers[i].getAttribute("latitude");
    var longtitude = markers[i].getAttribute("longtitude");
    var type = markers[i].getAttribute("type");
    var speed_limit = markers[i].getAttribute("speed_limit");
    var description = markers[i].getAttribute("description");
    var point = new google.maps.LatLng(
     parseFloat(markers[i].getAttribute("latitude")),
     parseFloat(markers[i].getAttribute("longtitude")));
    var html = "<b>" + "<img src=\"icos/"+ speed_limit + ".bmp\">" + "</b> <br/>" + latitude + "<br/>" + longtitude + "<br/>" + description + "<br/>";
    var icon = customIcons[type] || {};
    var marker = new google.maps.Marker({
   map: null,
   position: point,
   icon: icon.icon
    });
	
    bindInfoWindow(marker, map, infoWindow, html);
	if ( type == 1) { type1.push (marker); }
	if ( type == 2) { type2.push (marker); }
	if ( type == 3) { marker.setMap (map); type3.push (marker); }
  }
   });
}
function bindInfoWindow(marker, map, infoWindow, html) {
   google.maps.event.addListener(marker, 'click', function() {
  infoWindow.setContent(html);
  infoWindow.open(map, marker);
   });
}
function downloadUrl(url, callback) {
   var request = window.ActiveXObject ?
    new ActiveXObject('Microsoft.XMLHTTP') :
    new XMLHttpRequest;

   request.onreadystatechange = function() {
    if (request.readyState == 4) {
    request.onreadystatechange = doNothing;
    callback(request, request.status);
  }
 };
   request.open('GET', url, true);
   request.send(null);
}
function doNothing() {}

