	
	// globalni promenne pro mapy
	var mapOne		= null;	
	var mapTwo		= null;			
	var geocoder	= null;
	
	// inicializace google map
	function initialize( pGlobalVar, pElementId, pAddress, pZoomLevel ){
		if (GBrowserIsCompatible()) {

			var defaultMap = new GLatLng(49.817492, 15.472962);	// ceska republika

			pGlobalVar = new GMap2(document.getElementById( pElementId ));
			geocoder = new GClientGeocoder();

			// vychozi souradnice pro googlemaps
			pGlobalVar.setCenter(defaultMap, 7);
			pGlobalVar.setUIToDefault();
			//GEvent.addListener(map.getInfoWindow(),"closeclick", function(){ map.setCenter(defaultMap, 7); });

			// nastaveni standartni ikony						
			baseIcon = new GIcon(G_DEFAULT_ICON);
			baseIcon.shadow = "";
			baseIcon.iconSize = new GSize(26, 32);
			baseIcon.iconAnchor = new GPoint(13, 32);

			// generovani znacky do mapy
			generateAddress(pGlobalVar, pAddress, pZoomLevel);

		}
	}
	
	// --------------------------
	
	// muzes si dodelat parametr pro detailnejsi popis
	function showAddress( pMarker ){
		if( geocoder ){

			point = pMarker.getPoint();

			geocoder.getLocations( point, function(address){

				if( address ){
					var newFullAddress = address.Placemark[0];
					var newAddress = newFullAddress.address;									
					var newAddressArray = newAddress.split(", ",2);

					var newStreet = newAddressArray[0];
					var newCity = newAddressArray[1];
				}

				// generovani informacni bubliny
				pMarker.openInfoWindowHtml("<p><strong>"+ newStreet +"</strong><br />"+ newCity +"</p>");

			});

		}
	}		
		
	// --------------------------
	
	function createMarker(pGlobalVar, pMarker, pZoomLevel ){

		var point = pMarker.getPoint();
		var zoomLevel = pZoomLevel;
		if( zoomLevel == null ){ zoomLevel = customZoomLevel; }		

		pGlobalVar.clearOverlays();							// smazani vsech znacek
		pGlobalVar.addOverlay(pMarker);						// pridani nove znacky na mapu
		pGlobalVar.setCenter(point, zoomLevel);				// vycentrovani mapy
		
		showAddress( pMarker );
		
		GEvent.addListener( pMarker, "click", function() { showAddress( pMarker ); });

	}	
	
	// --------------------------
	
	function generateAddress( pGlobalVar, pAddress, pZoomLevel ){
		if (geocoder) {

			// sestaveni cele adresy
			var address = pAddress;
			geocoder.getLatLng( address, function(point) {

				// adresa neexistuje
				if (!point){
					alert("Adresa "+ address + " nebyla nenalezena!\nZadejte správnou adresu.");
				} 

				// adresa existuje, vytvor interaktivni znacku
				else{ 
					// vytvoreni interaktivni znacky
					createMarker( pGlobalVar, new GMarker(point), pZoomLevel );
				}

			});				
		}
	}
	
	// --------------------------		
