    var map;
    var geocoder;
    var centralPoint = new GLatLng(51.0636, 17.0120);
    var dz = 7;
    var baseIcon = new GIcon(G_DEFAULT_ICON);
    baseIcon.iconSize = new GSize(50, 27);
    //baseIcon.shadowSize = new GSize(50,27);
    baseIcon.image = "images/gmap/icon_bonus_50_27_trans.png";
   // baseIcon.shadow = "images/gmap/icon_bonus_shadow.png"
    baseIcon.shadow = null;
    baseIcon.iconAnchor = new GPoint(18,24);
    baseIcon.infoWindowAnchor = new GPoint(18,24);
    
    var bwIcon = new GIcon(G_DEFAULT_ICON);
    bwIcon.iconSize = new GSize(20,20);
    bwIcon.image = "images/gmap/icon_bw.png";
    bwIcon.iconAnchor = new GPoint(10,10);
    bwIcon.infoWindowAnchor = new GPoint(10,10);
    bwIcon.shadow = null;
    
    function initialize() {
      if (GBrowserIsCompatible()) {
    	map = new GMap2(document.getElementById("map_canvas"));
    	
        map.setMapType(G_NORMAL_MAP);
        //map.addControl(new GLargeMapControl3D());
    	//map.setUIToDefault();
    	map.addControl(new GLargeMapControl3D());
    	map.addControl(new GHierarchicalMapTypeControl())
        map.setCenter(centralPoint,dz);
 
        geocoder = new GClientGeocoder();
        
        GDownloadUrl("includes/googlemap_genxml.php", function(data) {
      	  var xml = GXml.parse(data);
      	  var markers = xml.documentElement.getElementsByTagName("marker");
      	  for (var i = 0; i < markers.length; i++) {
      		var id = markers[i].getAttribute("id");
      	    var nazwa = markers[i].getAttribute("nazwa");
      	    var kod = markers[i].getAttribute("kod");
      	    var miasto = markers[i].getAttribute("miasto");
      	    var ulica = markers[i].getAttribute("adres"); 
      	    var tel = markers[i].getAttribute("tel");
      	    var mail = markers[i].getAttribute("mail");
            var otwarcie = markers[i].getAttribute("otwarcie");
             
      	    var html = '<center><b>' + nazwa + '</b><BR>' + ulica + '<br>' + miasto + ', '+ kod + '<BR>tel.'+ tel + '<BR><a href="mailto:'+ mail + '@sklepybonus.pl" class="mail">' + mail + '@sklepybonus.pl</a><br/><br/>'+ otwarcie +'</center>';
      	    var html2 = '<center><b>' + miasto + '</b><BR>' + ulica + '<BR>' + kod + '</center>';
      	    //var html3 = '<center><b>Siedziba sieci BONUS</b><BR>ul. Robotnicza 50<br>' + miasto + ', '+ kod + '<BR>tel.'+ tel + '<BR><a href="mailto:'+ mail + '@sklepybonus.pl" class="mail">' + mail + '@sklepybonus.pl</a></center>'
      	    var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
      	                            parseFloat(markers[i].getAttribute("lng")));
      	    var marker;
      	    if (id == 57) {marker = createMarkerBW(point, html);}
      	    else {marker = createMarker(point, html);}
      	    map.addOverlay(marker);
      	    var sidebarEntry = createSidebarEntry(marker, html2);
      	    var mapSidebar = document.getElementById("map_sidebar");
      	    mapSidebar.appendChild(sidebarEntry);
      	    
      	   // var bwMarker = createMarker(centralPoint, html3, 'icon:bwIcon')
      	  }
      	});
      }
    } 
    
    function createMarker(point, html) {
    	markerOptions = {icon:baseIcon};
    	var marker = new GMarker(point, markerOptions);
     	GEvent.addListener(marker, 'click', function() {
    	        marker.openInfoWindowHtml(html);
    	        map.setZoom(11);
    	        map.panTo(point);
    	});
		return marker;
	}
    
    function createMarkerBW(point, html) {
    	markerOptions = {icon:bwIcon};
    	var marker = new GMarker(point, markerOptions);
     	GEvent.addListener(marker, 'click', function() {
    	        marker.openInfoWindowHtml(html);
    	        map.setZoom(11);
    	        map.panTo(point);
    	});
		return marker;
	}
    
    function animateTo() {
        var pozycjaid = document.getElementById('selSklepy1').elements[0].options[document.getElementById('selSklepy1').elements[0].selectedIndex].value;
        //alert('bla');
        GDownloadUrl("includes/googlemap_genxml.php?id="+pozycjaid, function(data) {
        		var xml = GXml.parse(data);
        		var markers = xml.documentElement.getElementsByTagName("marker");
        		var point = new GLatLng(parseFloat(markers[0].getAttribute("lat")),
    									parseFloat(markers[0].getAttribute("lng")));
        		map.setZoom(9);
        		map.panTo(point);
        		
        });
       
      }
    
    function createSidebarEntry(marker, html) {
    	var div = document.createElement('div');
     	div.innerHTML = html;
    	div.style.cursor = 'pointer';
    	div.style.padding = '5px 0';
    	div.style.borderBottom = '1px solid #ccc';
    	GEvent.addDomListener(div, 'click', function (){
    		GEvent.trigger(marker, 'click');    		
    	});
    	GEvent.addDomListener(div, 'mouseover', function() {
    	    div.style.backgroundColor = '#ff0';
    	});
    	GEvent.addDomListener(div, 'mouseout', function() {
    	    div.style.backgroundColor = '#fff';
    	});
    	return div;
    }
    
    function zoomToCenter() {
    	map.setCenter(centralPoint,dz);
    }
    
/*
   

    function addAllMarkers(){
        map.clearOverlays();
    	var objSelect = document.getElementById('selSklepy1').elements[0];;
    	var objStr = '';

        for (var i=3;i<=objSelect.options.length-1;i++) {
        	 objStr = objSelect.options[i].value;	 
        	 setTimeout("addMarkerFromAddress(var objStr);",5000);
        }
    }

    function addMarkerFromAddress(address) {
      	 if (geocoder) {
             geocoder.getLatLng(
               address,
               function(point) { 
            	   var marker = new GMarker(point);
                   map.addOverlay(marker);
               }
         );
      	 } else {
          	 setTimeout("addMarkerFromAddress(address);",5000);
      	 }
    }
         
    

    function addMarker() {
        address = document.forms[0].sklep.value;
        geocoder.getLocations(address, addMarkerToMap);   
    }
    
*/
