// Simple Google Maps

	// dzieki temu obiektowi mapa zawsze bedzie wyswietlac wszystkie markery
	var area = new GLatLngBounds();

	// lista markerow, ktore potem hurtowo wyswietlimy
	var markers = [];

    // obiekt mapy
	var map = null;

	function google_map(element_id, coords , ccnt, maxZoom ) {

      if (GBrowserIsCompatible()) {
      	// tworzymy mape
      	map_constainer = document.getElementById(element_id);
      	
        map = new GMap2(map_constainer);

        // dodajemy kontrolki:
		// - suwak powiekszenia i polozenia mapy
        map.addControl(new GLargeMapControl());
         map.addControl(new GMapTypeControl());  

        // - minimapka w prawym dolnym rogu
        // map.addControl(new GOverviewMapControl());
        
        // for (i=0;i<coords.length;i++)
        for (i=0;i<ccnt;i++)
		{
			addMarker(coords[i][0], coords[i][1]);
		}

        // ustawiamy mapke tak, aby byly widoczne wszystkie markery
        var newZoom = map.getBoundsZoomLevel(area);
        newZoom = (newZoom>maxZoom?maxZoom:newZoom);
		var newPoint = area.getCenter();
		map.setCenter(newPoint,newZoom);
      }
    }

    // funkcja dodajaca marker na mapie
    function addMarker(latlng, desc) {
		// dodajemy do obiektu odpowiadajacego za rozmiar widoku kolejne punkty
		area.extend(latlng);

		// tworzymy nowy marker na podstawie wspolrzednych w tablicy
		marker = new GMarker(latlng);

		marker.desc = desc;//+"<br /><a onclick='removeMarker("+markers.length+");'>usuĹ� marker</a>";

		// co sie dzieje po kliknieciu na ktorys z markerow?
		GEvent.addListener(marker, "click", function() {
			// wyswietlamy opis, w ktorym moze znalezc sie html
			this.openInfoWindowHtml(this.desc);
      	});

		// co sie dzieje po najechaniu na ktorys z markerow?
		GEvent.addListener(marker, "mouseover", function() {
			// wyswietlamy opis, w ktorym moze znalezc sie html
			this.openInfoWindowHtml(this.desc);
      	});

      	/*GEvent.addListener(marker, "mouseout", function() {
			// zamykamy okienko z opisem
			this.closeInfoWindow();
      	});*/

      	// dodajemy marker do wewnÄ�trznej tablicy markerĂłw
      	markers.push(marker);

      	// dodajemy marker na mapie
      	map.addOverlay(marker);

      	return marker;
	}
