function dodajMarker(el, wys, szer, opcje, url) {	var marker = new GMarker(new GLatLng(wys, szer), opcje);	el.addOverlay(marker);}function dodajIkone(wys, szer, wysC, szerC, url, urlC) {	var ikona = new GIcon();  	ikona.image = url;  	ikona.shadow = urlC;  	ikona.iconSize = new GSize(wys, szer);  	ikona.infoWindowAnchor = new GPoint(wys/2, szer/2);  	ikona.iconAnchor = new GPoint(wys/2, szer);  	ikona.shadowSize = new GSize(wysC, szerC);	return ikona;  }

function handleErrors(){
   if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
     alert("Nie znaleziono miejsca na ziemi o podanym adresie. Możliwe że adres jest zbyt nowy (niezaindexowany przez Google) lub źle podany. \nGoogle zwrócił błąd: " + gdir.getStatus().code);

   else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
     alert("Geokodowanie lub wyszukiwanie trasy zakończyło się błędem, niestety powód jest nieznany w tym momencie. \nGoogle zwrócił błąd: " + gdir.getStatus().code);
	   
   else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
     alert("Brakuje parametru HTTP q. Oznacza to że został podany pusty adres. \nGoogle zwrócił błąd: " + gdir.getStatus().code);

   else if (gdir.getStatus().code == G_GEO_BAD_KEY)
     alert("Nieprawidłowy kod Google Maps. \nGoogle zwrócił błąd: " + gdir.getStatus().code);

   else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
     alert("Nieprawidłowa odpowiedź serwera Google. \nGoogle zwrócił błąd: " + gdir.getStatus().code);
    
   else alert("Nieznany błąd Google Maps.");
}
function goMapaStart(element, minfo, mbutton, mvalue, pozX, pozY)	{
	var mapa = new GMap2(document.getElementById(element),{mapTypes: [G_NORMAL_MAP, G_SATELLITE_MAP]});	var centrum = new GLatLng(pozX, pozY);
	var dir = new GDirections(mapa, document.getElementById(minfo));
   GEvent.addListener(dir, "error", handleErrors);
	mapa.setCenter(centrum, 15);	dodajMarker(
		mapa, pozX, pozY, 
		{			title: '',			icon: dodajIkone(				20, 34,				0, 0, 
				"http://www.google.com/intl/en_ALL/mapfiles/marker.png",				""	
			)		},		''	);

	document.getElementById(mbutton).onclick = function () {
		dir.load("from: " + document.getElementById(mvalue).value + " to: " + pozX + ', ' + pozY, { "locale": 'pl_PL' });
		return false;
	}

	if (element != 'mapka_google_small') {
		mapa.addControl(new GLargeMapControl());
		mapa.addControl(new GMapTypeControl());
	}}
function goMapaNewWindow(adres) {
	var options = '';
	options += 'channelmode=no,';
	options += 'directories=no,';
	options += 'fullscreen=no,';
	options += 'location=no,';
	options += 'menubar=no,';
	options += 'resizable=no,';
	options += 'scrollbars=no,';
	options += 'status=no,';
	options += 'titlebar=no,';
	options += 'toolbar=no,';
	options += 'width=800,';
	options += 'height=600,';
	options += 'left='+ (Math.round((screen.width - 800)/2)) + ',';
	options += 'top='+ (Math.round((screen.height - 600)/2));
	var okienko = window.open(''+adres, '', ''+options);
	return false;
}

