   var WINDOW_HTML = '<div style="width: 210px; padding-right: 10px"><a>Lokalizacja wybranego obiektu<\/a><\/div>';

    
   function LoadMap(x,y,zoom, dataFormName, editable, map_canvas)
   {

	if (!map_canvas) map_canvas = "map_canvas"; //default map layer id
	   	
	var err = 0;
	//if (x=='') { x = 50.061712; err= -1; }; //default point
	//if (y=='') { y = 19.937353; err= -1; };
	//if (zoom=='' || err == -1) zoom = 13;
	
	if (x=='') { x = 52.908902; err= -1; }; //default point
	if (y=='') { y = -3.515625; err= -1; };
	if (zoom=='' || err == -1) zoom = 1;
	
	x = parseFloat(x);
	y = parseFloat(y);
	zoom = parseInt(zoom);
	   
	//var x=50.061712;
	//var y=19.937353;
	//var zoom=13;
   
    if (GBrowserIsCompatible()) 				// Do Map if Compatible Browser only
    {
     map = new GMap2(document.getElementById(map_canvas),{draggableCursor: 'crosshair', draggingCursor: 'pointer'}) ;
     map.addControl(new GLargeMapControl());


     var MapTypes = map.getMapTypes();
     MapTypes[0].getName= function() { return "Mapa";}
     MapTypes[1].getName = function() { return "Satelitarna";}
     MapTypes[2].getName = function() { return "Hybrydowa";}
     map.addControl(new GMapTypeControl());
     map.addControl(new GScaleControl()) ;
     map.addControl(new GOverviewMapControl()) ;
     var latlng = new GLatLng(x,y) ; // Memphis Airport
     map.setCenter(latlng,zoom);

     map.setMapType(G_HYBRID_MAP);

     map.checkResize(); //chcek for IE7

     if (err >= 0) {
     
	     var marker = new GMarker(new GLatLng(x,y));
	     map.addOverlay(marker);
	     GEvent.addListener(marker, "click", function() {
	       marker.openInfoWindowHtml(WINDOW_HTML);
	     });

 	 }
 	 
	 //map.panTo(marker);
     
	 if (editable) {
	
	     GEvent.addListener(map, 'click', function(overlay, point)	// Add a click listener
	     {
	      if (overlay)
	      {
	      } else if (point) 
	      {
	       addpoint( point, dataFormName ) ;
	      }
	     });

	     GEvent.addListener(map, 'zoomend', function(oldLevel, newLevel)	// Add a click listener
	     {
		    document.forms[dataFormName].elements['googlemaps_zoom'].value = map.getZoom();
		    //dodac centowanie do markera
     		//alert(new GLatLng(document.forms[dataFormName].elements['googlemaps_XY'].value));
     		//map.setCenter(latlng,zoom);
     		//alert(new GLatLng(document.forms[dataFormName].elements['googlemaps_XY'].value));
	     });
	     
	     
	     
     }


    } else
    {
     document.getElementById(map_canvas).innerHTML = "<h1>Browser not compatible with Google Maps. Sorry...</h1>" ;
    }
   }


   function addpoint( point, dataFormName ) 
   {
    //document.data.markerdata.value += point.toUrlValue() + "\n" ;
    //alert(point.toUrlValue()) ;
    
    document.forms[dataFormName].elements['googlemaps_zoom'].value = map.getZoom();
    document.forms[dataFormName].elements['googlemaps_XY'].value = point.toUrlValue();
    
    //alert(document.forms[dataFormName].elements['googlemaps_zoom'].value) ;
    //alert(document.forms[dataFormName].elements['googlemaps_XY'].value) ;
    
    datadraw(dataFormName);
    
   }
   
   // Draw the markers associated with the points clicked...

   function datadraw(dataFormName) 
   {
    map.clearOverlays() ;
    var wrkar = [] ;
    if ( document.forms[dataFormName].elements['googlemaps_XY'].value )			// Check for markerdata
    {
     wrkar = dataparse( document.forms[dataFormName].elements['googlemaps_XY'].value ) ;
     for (var i = 0; i < wrkar.length; i++)
     {
	  var marker = new GMarker(wrkar[i])
      map.addOverlay( marker ) ;
      
       GEvent.addListener(marker, "click", function() {
         marker.openInfoWindowHtml(WINDOW_HTML);
       });
      
      
     }
    }    
   }   
   
   
   // Parse the textarea data into a points array...   
   function dataparse( points )
   {
    points = points.substr(0,points.length - 1) ;
    var linar = points.split("\n") ;				// Break each point by line break
    var wrkar = [] ;
    var pntar = [] ;
    for (var i = 0; i < linar.length; i++)
    {
     wrkar = linar[i].split(",",2) ;				// Break each point into x and y
     pntar.push( new GLatLng(parseFloat(wrkar[0]), parseFloat(wrkar[1])) ) ; 
    }
    return pntar ;
   }   

/*
    var WINDOW_HTML = '<div style="width: 210px; padding-right: 10px"><a href="./signup.html">Przyłącz się<\/a> do Google Maps API lub <a href="./documentation/index.html">przeczytaj więcej o API<\/a>.<\/div>';

    if (GBrowserIsCompatible()) {
      var map = new GMap2(document.getElementById("map_canvas"));
      //map.addControl(new GSmallMapControl());

		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());
		map.addControl(new GScaleControl()) ;
		map.addControl(new GOverviewMapControl()) ;


      map.setCenter(new GLatLng(37.4328, -122.077), 13);
      var marker = new GMarker(new GLatLng(37.4228, -122.085));
      map.addOverlay(marker);
      GEvent.addListener(marker, "click", function() {
        marker.openInfoWindowHtml(WINDOW_HTML);
      });
      marker.openInfoWindowHtml(WINDOW_HTML);
    }
*/
