var mapa;



function mapLoad(type, zoom, lat, lng, show, start_show, click_show, mini_show, title, city, code, address, phone, mail, discription) 

{ 

    if(GBrowserIsCompatible())

    {

        mapa = new GMap2(document.getElementById("gMap"));  

        mapa.setCenter(new GLatLng(lat, lng), zoom); 

		mapa.addMapType(G_PHYSICAL_MAP);

		if(type == 0)mapa.setMapType(G_NORMAL_MAP);

		if(type == 1)mapa.setMapType(G_SATELLITE_MAP);

		if(type == 2)mapa.setMapType(G_HYBRID_MAP);

		if(type == 3)mapa.setMapType(G_PHYSICAL_MAP);

		mapa.addControl(new GLargeMapControl()); 

		mapa.addControl(new GMapTypeControl());

		mapa.addControl(new GScaleControl()); 

		if(mini_show == 1)mapa.addControl(new GOverviewMapControl());

		

		if(show == 1)

		{

			var marker = addGeneral(lat, lng, title, city, code, address, phone, mail, discription);

		

    	    if(click_show == 1)

			{

       		 	GEvent.addListener(marker, "click" , function(){

        			marker.openInfoWindowHtml(marker.txt);

        		});

				if(start_show == 1)GEvent.trigger(marker, 'click');

			}

		}

		

		throwMarkers();

	}

}



function addGeneral(lat, lng, title, city, code, address, phone, mail, discription) 

{

  	var icon = 'http://maps.google.com/mapfiles/kml/pal3/icon56.png';

	var text = '<div class="marker"><p class="title">'+title+'</p>'+'<p class="address">'+code+' '+city+'</p>'+'<p class="address">'+address+'</p>'+'<p class="phone">'+phone+'</p>'+'<p class="mail"><a href="mailto:'+mail+'">'+mail+'</a></p>'+'<p class="text">'+discription+'<br /><br /><img src="templates/img/gLogo.jpg" /></p></div>';

	var mIcon = new GIcon();

	mIcon.image = icon;

	mIcon.shadow = icon.replace('.png', 's.png');

	mIcon.iconSize = new GSize(32, 32);

	mIcon.infoWindowAnchor = new GPoint(16,16);

	mIcon.iconAnchor = new GPoint(16,16);

	mIcon.shadowSize = new GSize(59, 32);

	var marker	=	new GMarker(new GLatLng(lat,lng),{title: title, icon: mIcon});

	marker.txt	=	text;

	mapa.addOverlay(marker);

	return marker;

}



function throwMarkers()

{

	markery=[];

	

	GDownloadUrl('index.php?p=throwMarkers', function(data,responseCode) 

	{

		if(responseCode==200) 

		{

			var xml = GXml.parse(data);

			var markers = xml.documentElement.getElementsByTagName("marker");

			if (markers.length>0) 

			{

				for(var i=0; i<markers.length; i++)	

				{alert(i);

					var text = '<div class="marker"><p class="title">'+markers[i].getAttribute("title")+'</p>'+'<p class="address">'+markers[i].getAttribute("code")+markers[i].getAttribute("city")+'</p>'+'<p class="address">'+markers[i].getAttribute("address")+'</p>'+'<p class="phone">'+markers[i].getAttribute("phone")+'</p>'+'<p class="mail"><a href="mailto:'+markers[i].getAttribute("mail")+'">'+markers[i].getAttribute("mail")+'</a></p>'+'<p class="text">'+markers[i].getAttribute("discription")+'</p></div>';

					var marker = addMarker(parseFloat(markers[i].getAttribute("lat")), parseFloat(markers[i].getAttribute("lng")), markers[i].getAttribute("title"), text);

					markery.push(marker);

				}

			}

		}

		else 

		{

			alert('Nie można zaimportować danych XML');

		}

	});



}



function addMarker(lat, lng, name, text) 

{

	var marker	=	new GMarker(new GLatLng(lat,lng),{title: name});

	marker.txt	=	text;

	mapa.addOverlay(marker);

	GEvent.addListener(marker,"click",function()

	{

		marker.openInfoWindowHtml(marker.txt);

		mapa.panTo(marker.getPoint());

	});

	return marker;

}



function mapLoadAdmin(zoom, lat, lng, general) 

{ 

    if(GBrowserIsCompatible())

    {

        mapa = new GMap2(document.getElementById("gMapAdmin"));  

        mapa.setCenter(new GLatLng(lat, lng), zoom); 

		mapa.addMapType(G_PHYSICAL_MAP);

		mapa.setMapType(G_NORMAL_MAP);

		mapa.addControl(new GLargeMapControl()); 

		mapa.addControl(new GMapTypeControl());

		mapa.addControl(new GOverviewMapControl());

		mapa.addControl(new GScaleControl());  

		

		addMarkerAdmin(lat,lng,{title: 'Przeciągnij mnie', draggable: true});

		

		GEvent.addListener(mapa,'click',function(som, point) {

			if (point) {

				marker.setLatLng(point);

				GEvent.trigger(marker,'drag');

			}			

		}); 

		

		if(general)

		{

			GEvent.addListener(mapa,'zoomend', function(old, zoom) {

				document.getElementById("zoom").value=zoom; 			

			});

		}

	}

}



function addMarkerAdmin(lat,lng,opcje)

{	

	marker = new GMarker(new GLatLng(lat,lng),opcje);

	mapa.addOverlay(marker);

	

	 GEvent.addListener(marker,'drag',function ()  

	 {  

		 var lat = marker.getPoint().lat();  

		 var lng = marker.getPoint().lng();  

		 document.getElementById("lat").value=lat; 

		 document.getElementById("lng").value=lng; 

	 });

	 GEvent.trigger(marker,'drag');

}




