 
 function ShowMap( Elem, Latitude, Longtude, Zoom , Opis, Placeid) {
    this.latitude  = Latitude;
    this.longtude  = Longtude;
    this.zoom   = Zoom;
    this.element= Elem;
    this.opis = Opis;
    this.placeid = Placeid;
    this.show();
}

function ShowCityMap( Elem ) {
this.element= Elem;
	this.show();
}    


function CloseObjects(placeid) {
this.placeid = placeid;
}

//define server paths:
var baseUrl = "http://hotelpolen.com";
var imageUrl = baseUrl + "/storage/images/googlemap/";
var bookingUrl = baseUrl + "/hotels/hotel_";


CloseObjects.prototype = new GControl();
CloseObjects.prototype.initialize = function(map) {
    var container = document.createElement("div");
    var zoomInDiv2 = document.createElement("div");
    var pl = this.placeid;
    this.setButtonStyle_(zoomInDiv2);
    container.appendChild(zoomInDiv2);

    var bb=document.createElement('b');
    bb.appendChild(document.createTextNode("Print"));
    with(bb.style) {
        borderBottom="1px solid #B0B0B0";
        borderRight="1px solid #B0B0B0";
        display="block";
        paddingTop="1px";
        fontWeight="normal";
    }
    zoomInDiv2.appendChild(bb);

    GEvent.addDomListener(zoomInDiv2, "click", function() {
        var z=map.getZoom();
        var c=map.getCenter();
        var okno=window.open('/printmap.php?glan='+c.lat()+'&glon='+c.lng()+'&zoom='+z+'&placeid='+pl,'GoogleMap','width=500,height=300,scrollbars=no,top=10,left=10');

    }
    );
    
    map.getContainer().appendChild(container);
    return container;
}
CloseObjects.prototype.getDefaultPosition = function() {
    return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(7, 7));
}
CloseObjects.prototype.setButtonStyle = function(button) {
    with(button.style) {
        paddingLeft="1px";
        border="1px solid black";
        cursor="pointer";
        color="#000";
        backgroundColor="#fff";
        font="12px Arial";
        width="67px";
        textAlign="center";
        marginBottom="1px";
    }
}

GMapTypeControl.prototype.getDefaultPosition=function() {
    return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(80, 7));
}

ShowMap.prototype.show = function() {
    if (GBrowserIsCompatible()) {
	var map   = new GMap2( this.element );
	var point = new GLatLng( this.latitude, this.longtude );
	map.setCenter( point, this.zoom );
	map.addControl(new GLargeMapControl());
	map.addControl(new GMapTypeControl());

    scale = new GScaleControl(); 
    scale.printable=function(){return true}; 
    map.addControl(scale); 
   
    map.addControl(new CloseObjects(this.placeid));
							//		map.addControl(new GMapTypeControl());
							
		var icon = new GIcon();
		icon.image = imageUrl + "h.png";
		icon.shadow = imageUrl + "shadow50.png";
		icon.iconSize = new GSize(20, 30);
		icon.shadowSize = new GSize(22, 20);
		icon.iconAnchor = new GPoint(6, 20);
		icon.infoWindowAnchor = new GPoint(5, 1);						
							
	var marker = new GMarker(point , icon)
	map.addOverlay( marker );
	var opisik = this.opis;
	GEvent.addListener(marker, "click", function() {
	        marker.openInfoWindowHtml(opisik);
	});
	
   }	
}

var map;

var gmarkers = [];
var htmls = [];
var i = 0;
var y =0;
var side_bar_html = "";
var side_bar_html2 = "<ul class=hotelList>";


  function myclick(i) {

        gmarkers[i].openInfoWindowHtml(htmls[i]);
      }
ShowCityMap.prototype.show = function() {

	var map;
	var side_bar_html = '';
	var tmp_city = ''; 
	
  if (GBrowserIsCompatible()) {
		//alert("akuku");
  		var map = new GMap2(this.element);
  		map.addControl(new GLargeMapControl());
  		map.addControl(new GMapTypeControl());
  		
  	//	map.setCenter(new GLatLng(52.2337923731491, 21.014324426651), 13);
		map.setCenter(new GLatLng(cityx, cityy), cityzoom);
		// ikona
		var icon = new GIcon();
		icon.image = imageUrl + "h.png";
		icon.shadow = imageUrl + "shadow50.png";
		icon.iconSize = new GSize(20, 34);
		icon.shadowSize = new GSize(37, 34);
		icon.iconAnchor = new GPoint(6, 20);
		icon.infoWindowAnchor = new GPoint(5, 1);

		function createMarker(point, name, street, image, rating, id, price,  icon,city) 
		{  
			var marker = new GMarker(point, icon);  
			
			html = "";
				html = html + "<div class=googleMarker>";
				html = html + "<p class=hotelName>"+name+"</p>";
				html = html + "<p>"+city+"</p>";
				html = html + "<p><img class=miniFoto width=70 height=60 src= http://www.odkryjpolske.pl/admin/datastore/upload/place/"+image+" /></p>";
				if(rating != '')
				html = html + "<p>standard: "+rating+"</p>";
				html = html + "<p class=hotelAddress>"+street+"</p>";
				if(price != '')
				html = html + "<p>Preise ab: <span class=price>"+price+" PLN</span></p>";
				html = html + "<p><a class=bookOnline href=" + bookingUrl + id +".html>Buchen</a></p>";
				html = html + "</div>";
			
			GEvent.addListener(marker, "click", 
				function() {   
			
				html = "";
				html = html + "<div class=googleMarker>";
				html = html + "<p class=hotelName>"+name+"</p>";
				html = html + "<p>"+city+"</p>";
				html = html + "<p><img class=miniFoto width=70 height=60 src= http://www.odkryjpolske.pl/admin/datastore/upload/place/"+image+" /></p>";
				if(rating != '')
				html = html + "<p>standard: "+rating+"</p>";
				html = html + "<p class=hotelAddress>"+street+"</p>";
				if(price != '')
				html = html + "<p>Preise ab: <span class=price>"+price+" PLN</span></p>";
				html = html + "<p><a class=bookOnline href=" + bookingUrl + id +".html>Buchen</a></p>";
				html = html + "</div>";
				
			marker.openInfoWindowHtml(html);});
			
			
			{
				if(miasto == '' ||  miasto == 'gdansk' || miasto=='gdynia' || miasto=='sopot' || miasto=='pozostale')
			    {
					if (city != tmp_city)
						side_bar_html2 += '<li class=\"hotelListHeader\">'+ city+'</li>';
					side_bar_html2 += '<li><a href="javascript:myclick(' + i + ')">' + name + ' ' + city  + '</a></li>';
			    }
			    else
					
				 side_bar_html2 += '<li><a href="javascript:myclick(' + i + ')">' + name + '</a></li>';
			}
			
			
			tmp_city = city;
			gmarkers[i] = marker;
	        htmls[i] = html;
    		i++;

			
			return marker;
		
		}

    

		GDownloadUrl("http://www.hotelpolen.com/cos.php?miasto="+miasto+"&opcja="+opcja+"&searchword="+searchword, function(data) {
		 
    
          var xml = GXml.parse(data);
      
          var markers = xml.documentElement.getElementsByTagName("marker");
		  
		  
		   if (markers.length != 0)
				{
					side_bar_html += "<h3>" + markers.length + " hotels gefunden</h3>";
					
				}
		   else
				{
				if (searchword!="")
					{side_bar_html += "<h3 class=notFound>Nicht gefunden: " +searchword+"</h3>";
					}
				else {
					side_bar_html +="<h3 class=notFound>Nicht gefunden</h3>";					}
				}
          for (var i = 0; i < markers.length; i++) 
          {
				
            var name  = GXml.value(markers[i].getElementsByTagName("name")[0]);
	    	var oldRating  = GXml.value(markers[i].getElementsByTagName("rating")[0]);
	    	var rating  = oldRating.replace(/\*/gi, "<img src=\""+ imageUrl +"star.gif\" alt=\"*\"/>");
	    	var cityname  = GXml.value(markers[i].getElementsByTagName("cityname")[0]);
	    	var street  = GXml.value(markers[i].getElementsByTagName("street")[0]);
	    	var image  = GXml.value(markers[i].getElementsByTagName("image")[0]);   
	       
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),parseFloat(markers[i].getAttribute("lng")));

            map.addOverlay(createMarker(point,name, street, image, rating, markers[i].getAttribute("id"),markers[i].getAttribute("price"), icon, cityname ));              

          }
		  
		 
          side_bar_html2 += '</ul>';
          document.getElementById("hotellink").innerHTML = side_bar_html;
	  document.getElementById("hotellink2").innerHTML = side_bar_html2;
        });
        
  }
} 


