var map;
var gmarker = new Array();
var imarker;
var searchsquare;
var zone = 3;
var LastMmarker;
var TempMmarker;
var DetWinPrior = 0;
var searchmode;

function load(srcmode) {
	document.getElementById('regmap').style.display = "block";
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById('regmap'));
		//map.setCenter(new GLatLng(47.5052837, 19.0634207), 15);
		map.setMapType(G_NORMAL_MAP);
		map.removeMapType(G_SATELLITE_MAP);
		var mapTypeControl = new GMapTypeControl();
		var mapMoveControl = new GSmallMapControl();
		var topLeft = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(5,10));
		//map.addControl(mapMoveControl, topLeft);

		//var bottomLeft = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(100,100));
		//var mapScaleControl = new GScaleControl() 
		//map.addControl(mapScaleControl, bottomLeft);
		
		    function TextualZoomControl() {
		    }
		    TextualZoomControl.prototype = new GControl();

		    // Creates a one DIV for each of the buttons and places them in a container
		    // DIV which is returned as our control element. We add the control to
		    // to the map container and return the element for the map class to
		    // position properly.
		    TextualZoomControl.prototype.initialize = function(map) {
		      var container = document.createElement("div");

		      var buttoncontainer = document.createElement("div");
		      buttoncontainer.className = "regmap_buttons_container";
		      //this.setButtonStyle_(buttoncontainer);
		      container.appendChild(buttoncontainer);
		      //zoomOutDiv.appendChild(document.createTextNode("Zoom Out"));
		      
		      var zoomInImg = document.createElement("img");
		      zoomInImg.src = "images/ico2_plus.gif";
		      zoomInImg.className = "ico";
		      GEvent.addDomListener(zoomInImg, "click", function() {
			map.zoomIn();
		      });
		      GEvent.addDomListener(zoomInImg, "mouseover", function() {
			zoomInImg.src = "images/ico2_plus_hov.gif";
		      });
		      GEvent.addDomListener(zoomInImg, "mouseout", function() {
		        zoomInImg.src = "images/ico2_plus.gif";
		      });
		      
		      var zoomOutImg = document.createElement("img");
		      zoomOutImg.src = "images/ico2_minus.gif";
		      zoomOutImg.className = "ico";
		      GEvent.addDomListener(zoomOutImg, "click", function() {
			map.zoomOut();
		      });		      
		      GEvent.addDomListener(zoomOutImg, "mouseover", function() {
			zoomOutImg.src = "images/ico2_minus_hov.gif";
		      });
		      GEvent.addDomListener(zoomOutImg, "mouseout", function() {
		        zoomOutImg.src = "images/ico2_minus.gif";
		      });		      


		      var zoneInImg = document.createElement("img");
		      zoneInImg.src = "images/ico2_plus.gif";
		      zoneInImg.className = "ico";
		      GEvent.addDomListener(zoneInImg, "click", function() {
			searchsizecalc(1);
		      });
		      GEvent.addDomListener(zoneInImg, "mouseover", function() {
			zoneInImg.src = "images/ico2_plus_hov.gif";
		      });
		      GEvent.addDomListener(zoneInImg, "mouseout", function() {
		        zoneInImg.src = "images/ico2_plus.gif";
		      });
		      
		      var zoneOutImg = document.createElement("img");
		      zoneOutImg.src = "images/ico2_minus.gif";
		      zoneOutImg.className = "ico";
		      GEvent.addDomListener(zoneOutImg, "click", function() {
			searchsizecalc(-1);
		      });		      
		      GEvent.addDomListener(zoneOutImg, "mouseover", function() {
			zoneOutImg.src = "images/ico2_minus_hov.gif";
		      });
		      GEvent.addDomListener(zoneOutImg, "mouseout", function() {
		        zoneOutImg.src = "images/ico2_minus.gif";
		      });

		      var row1 = document.createElement("div");
		      row1.className = "regmap_button_row";
		      var row2 = document.createElement("div");
		      row2.className = "regmap_button_row";
		      var row3 = document.createElement("div");
		      row3.className = "regmap_button_row_text";
		      
		      var rowText1 = document.createElement("div");
		      rowText1.className = "regmap_button_text";	
		      rowText1.appendChild(document.createTextNode("Zoom:"));		      

		      var rowText2 = document.createElement("div");
		      rowText2.className = "regmap_button_text";		      
		      rowText2.appendChild(document.createTextNode("Zóna:"));		      

		      row3.appendChild(document.createTextNode("Zóna középre!"));
		      GEvent.addDomListener(row3, "click", function() {
			delmapsearchzone(); document.getElementById("mapsearchzone_ch").checked = "true"; addmapsearchzone();
		      });
		      
		      buttoncontainer.appendChild(row2);
		      row2.appendChild(rowText2);
		      row2.appendChild(zoneOutImg);
		      row2.appendChild(zoneInImg);
		      
		      buttoncontainer.appendChild(row1);
		      row1.appendChild(rowText1);
		      row1.appendChild(zoomOutImg);
		      row1.appendChild(zoomInImg);	

		      buttoncontainer.appendChild(row3);	      

		      map.getContainer().appendChild(container);
		      return container;
		    }

		    // By default, the control will appear in the top left corner of the
		    // map with 7 pixels of padding.
		    TextualZoomControl.prototype.getDefaultPosition = function() {
		      return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(0, 0));
		    }

		    function TextualSearchControl() {
		    }
		    TextualSearchControl.prototype = new GControl();

		    // Creates a one DIV for each of the buttons and places them in a container
		    // DIV which is returned as our control element. We add the control to
		    // to the map container and return the element for the map class to
		    // position properly.
		    TextualSearchControl.prototype.initialize = function(map) {
		      var container2 = document.createElement("div");

		      var inputcontainer = document.createElement("div");
		      inputcontainer.className = "regmap_input_container";
	      
		      
		      var inputholder = document.createElement("input");
		      inputholder.value = "keresés a térképen";
		      inputholder.className = "input";
		      inputholder.id = "Sumaddress";
		      
		      //inputholder.onkeypress = function() { var e = (event ? event : window.event); if ((e.keyCode ? e.keyCode : e.charCode ? e.charCode : e.which) == 13) document.getElementById('Sumaddressbutton').onclick(); }
		      
		      GEvent.addDomListener(inputholder, "click", function() {
			if (inputholder.value == "keresés a térképen") inputholder.value = "";
		      });	      

		      var searchbutton = document.createElement("div");
		      searchbutton.appendChild(document.createTextNode("Ugrik"));	
		      searchbutton.className = "button";
		      GEvent.addDomListener(searchbutton, "click", function() {
			showpoint(2,2);
		      });	      


		      
		      container2.appendChild(inputcontainer);
		      inputcontainer.appendChild(inputholder);
		      inputcontainer.appendChild(searchbutton);

		      map.getContainer().appendChild(container2);
		      return container2;
		    }

		    // By default, the control will appear in the top left corner of the
		    // map with 7 pixels of padding.
		    TextualSearchControl.prototype.getDefaultPosition = function() {
		      return new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(0, 16));
		    }



		if (srcmode == 'napimenu') var topRight = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(1,0));
		if (srcmode != 'napimenu') var topRight = new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(0,0));

        	if (srcmode == 'napimenu') map.addControl(new TextualZoomControl());
        	if (srcmode != 'napimenu') map.addControl(mapMoveControl, topLeft);
        	if (srcmode != 'detailed' && srcmode != 'reg') map.addControl(new TextualSearchControl());

		map.addControl(mapTypeControl, topRight);			
		
		
		
	}

	return map;
}

function showAddress(address,showicon) {
	var geocoder = new GClientGeocoder();
	geocoder.getLatLng(address,
		function(point) {
			if (!point) {
				//alert("'" + address + "' ilyen cím nem található");
				//correct_addresssearch(false);
				//map.setCenter(getuserpoints(), 14);
			} else {
				map.setCenter(point, 13);
				if (showicon == 1) {
					imarker.setLatLng(point);
					GEvent.trigger(imarker, "dragend"); 
				}
				if (showicon == 2) {
					if (document.getElementById("mapsearchzone_ch").checked) {
						delmapsearchzone();
						addmapsearchzone();
					}
				}
				
			}				
			/*if (showicon == 1) {
				var marker = new GMarker(point, {draggable: true});
				map.addOverlay(marker);
				writelatlng(marker.getLatLng());
				GEvent.addListener(marker,"dragend",
					function() {
					marker.closeInfoWindow();
					writelatlng(marker.getLatLng());
					marker.openInfoWindowHtml('Az új pozíció mentve!<br>Az icon áthelyezésével, vagy új cím meg-<br>adásával pontosíthatja a megjelölést!');
					}
				);
				GEvent.addListener(marker,"dragstart",
					function() {
					marker.closeInfoWindow();
					}
				);
				marker.openInfoWindowHtml(address + '<br>Az icon áthelyezésével pontosíthatja a megjelölést!');
			
			}
			else {
				if (document.getElementById("mapsearchzone_ch").checked) {
					delmapsearchzone();
					addmapsearchzone();
				}
				//document.getElementById("mapsearchzone_ch").checked = true;
			}*/
			
		}
	);
}


function showpoint(forceaddress,showicon) {
	if (showicon == -1) map = load('reg');

	if (forceaddress == '2') { 
		if (document.getElementById("Sumaddress").value != '') showAddress('Magyarország, ' + document.getElementById("Sumaddress").value,showicon);
	}

	if (forceaddress == '1') { 
		var str = '';
		if (document.getElementById("City").value != '') str += document.getElementById("City").value + ', ';
		if (document.getElementById("City").value == 'Budapest' || document.getElementById("City").value == '') {
			if (document.getElementById("District").value == '1') str += 'I. kerület, ';
			if (document.getElementById("District").value == '2') str += 'II. kerület, ';
			if (document.getElementById("District").value == '3') str += 'III. kerület, ';
			if (document.getElementById("District").value == '4') str += 'IV. kerület, ';
			if (document.getElementById("District").value == '5') str += 'V. kerület, ';
			if (document.getElementById("District").value == '6') str += 'VI. kerület, ';
			if (document.getElementById("District").value == '7') str += 'VII. kerület, ';
			if (document.getElementById("District").value == '8') str += 'VIII. kerület, ';
			if (document.getElementById("District").value == '9') str += 'IX. kerület, ';
			if (document.getElementById("District").value == '10') str += 'X. kerület, ';
			if (document.getElementById("District").value == '11') str += 'XI. kerület, ';
			if (document.getElementById("District").value == '12') str += 'XII. kerület, ';
			if (document.getElementById("District").value == '13') str += 'XIII. kerület, ';
			if (document.getElementById("District").value == '14') str += 'XIV. kerület, ';
			if (document.getElementById("District").value == '15') str += 'XV. kerület, ';
			if (document.getElementById("District").value == '16') str += 'XVI. kerület, ';
			if (document.getElementById("District").value == '17') str += 'XVII. kerület, ';
			if (document.getElementById("District").value == '18') str += 'XVIII. kerület, ';
			if (document.getElementById("District").value == '19') str += 'XIX. kerület, ';
			if (document.getElementById("District").value == '20') str += 'XX. kerület, ';
			if (document.getElementById("District").value == '21') str += 'XXI. kerület, ';
			if (document.getElementById("District").value == '22') str += 'XXII. kerület, ';
			if (document.getElementById("District").value == '23') str += 'XXIII. kerület, ';
		}
		if (document.getElementById("Street").value != '') str += document.getElementById("Street").value + ' ';
		if (document.getElementById("Number").value != '') str += document.getElementById("Number").value;
		document.getElementById("Sumaddress").value = str;
		if (str != '') { 
			document.getElementById("Sumaddressbutton").onclick();
		}
		//else SearchInit();
	}
	else {
		if ((document.getElementById("gLat").value == '' || document.getElementById("gLat").value == '0') && forceaddress == '0') {
			showlatlng(47.5052837, 19.0634207);
		}
		else {
			if (document.getElementById("gLat").value != '' && document.getElementById("gLng").value != '' && forceaddress == '0') {
				showlatlng(document.getElementById("gLat").value,document.getElementById("gLng").value);
			}
		}
	}

}




function showlatlng(dataLat,dataLng) {
	var nlatlng = new GLatLng(dataLat, dataLng);
	imarker = new GMarker(nlatlng, {draggable: true});
	map.setCenter(nlatlng, 14);
	map.addOverlay(imarker);
	writelatlng(imarker.getLatLng());

	GEvent.addListener(imarker,"dragend",
		function() {
		imarker.closeInfoWindow();
		writelatlng(imarker.getLatLng());
		imarker.openInfoWindowHtml('Az új pozíció mentve!<br>Az icon áthelyezésével, vagy új cím<br>megadásával pontosíthatja a megjelölést!');
		}
	);
	GEvent.addListener(imarker,"dragstart",
		function() {
		imarker.closeInfoWindow();
		}
	);
	imarker.openInfoWindowHtml('<br>Az icon áthelyezésével pontosíthatja a megjelölést!');
}



function writelatlng(nummer) {
	document.getElementById("buildnum").innerHTML = nummer;
	str = document.getElementById("buildnum").innerHTML;
	var nums=str.split(",");
	nums[0] = nums[0].replace("(","");
	nums[1] = nums[1].replace(")","");
	document.getElementById("gLat").value = nums[0];
	document.getElementById("gLng").value = nums[1];
}



function NewCenter_bymarker(gmarkernum,listid) {
	map.setCenter(gmarker[gmarkernum].getLatLng(), 15);
	if (LastMmarker == gmarker[gmarkernum]) LastMmarker = TempMmarker; 
	GEvent.trigger(gmarker[gmarkernum], "click");
	GEvent.trigger(gmarker[gmarkernum], "mouseout");
	var str='';
	
	//writeDetailsMiddle(listid);
}

function addmapsearchzone() {
	var point = map.getCenter();
	writelatlng(point);
	var DefIcon = new GIcon(G_DEFAULT_ICON);
	var DefSize = new GSize(25, 44)
	var DefSHSize = new GSize(37, 44)
	DefIcon.image = "http://www.menuk.hu/images/deficon_nagy4.png";
	DefIcon.shadow = "http://www.menuk.hu/images/deficonSH_nagy5.png";
	DefIcon.iconSize = DefSize;
	DefIcon.shadowSize = DefSHSize;
	DefIcon.iconAnchor = new GPoint(8, 44);
	DefIcon.imageMap = [1,1,1,44,24,44,24,1,1,1]; 

	// Set up our GMarkerOptions object
	var markerOptions = { icon:DefIcon, draggable: true };
	marker = new GMarker(point, markerOptions);
	map.addOverlay(marker);


	GEvent.addListener(marker,"dragend",
		function() {
		marker.closeInfoWindow();
		writelatlng(marker.getLatLng());
		DrawSquare(0);
		}
	);
	GEvent.addListener(marker,"dragstart",
	    function() {
	    marker.closeInfoWindow();
	    map.removeOverlay(searchsquare);
	    }
	);
	DrawSquare(1);
	document.getElementById("mapsearchzone_ch").onclick = function() { forcedelmapsearchzone(); };
	if (document.getElementById("placesearch_ch").checked) submit_on('zone');
}

function addmapsearchzone_plus() {
	var point = map.getCenter();
	writelatlng(point);
	var DefIcon = new GIcon(G_DEFAULT_ICON);
	var DefSize = new GSize(25, 44)
	var DefSHSize = new GSize(37, 44)
	DefIcon.image = "http://www.menuk.hu/images/deficon_nagy4.png";
	DefIcon.shadow = "http://www.menuk.hu/images/deficonSH_nagy5.png";
	DefIcon.iconSize = DefSize;
	DefIcon.shadowSize = DefSHSize;
	DefIcon.iconAnchor = new GPoint(8, 44);
	DefIcon.imageMap = [1,1,1,44,24,44,24,1,1,1]; 

	// Set up our GMarkerOptions object
	var markerOptions = { icon:DefIcon, draggable: true };
	marker = new GMarker(point, markerOptions);
	map.addOverlay(marker);


	GEvent.addListener(marker,"dragend",
		function() {
		marker.closeInfoWindow();
		writelatlng(marker.getLatLng());
		DrawSquare(0);
		}
	);
	GEvent.addListener(marker,"dragstart",
	    function() {
	    marker.closeInfoWindow();
	    map.removeOverlay(searchsquare);
	    }
	);
	DrawSquare(1);
	document.getElementById("mapsearchzone_ch").onclick = function() { forcedelmapsearchzone(); };
	if (document.getElementById("placesearch_ch").checked) submit_on('zone');
}

function delmapsearchzone() {
	if (document.getElementById("mapsearchzone_ch").checked)  {
		map.removeOverlay(marker);
		map.removeOverlay(searchsquare);
		if (document.getElementById("placesearch_ch").checked) submit_off('zone');
		document.getElementById("mapsearchzone_ch").onclick = function() { addmapsearchzone(); };
	}
}

function forcedelmapsearchzone() {
	map.removeOverlay(marker);
	map.removeOverlay(searchsquare);
	if (document.getElementById("placesearch_ch").checked) submit_off('zone');
	document.getElementById("mapsearchzone_ch").onclick = function() { addmapsearchzone(); };
}


function getuserpoints() {
	var point = new GLatLng(document.getElementById("gLat").value, document.getElementById("gLng").value );
	return point;
}


//Init*******************************************
function SearchInit(srcmode) {
	searchmode = srcmode;
	map = load(searchmode);
	if (searchmode == 'napimenu') searchmode = 'menu';
	
	if (document.getElementById("gLat").value != '' && document.getElementById("gLat").value != '0') {
		var point = new GLatLng(document.getElementById("gLat").value, document.getElementById("gLng").value );
	}
	else {
		if (document.getElementById("gLat_user").value != '' && document.getElementById("gLat_user").value != '0') {
			var point = new GLatLng(document.getElementById("gLat_user").value, document.getElementById("gLng_user").value );
		}
		else var point = new GLatLng(47.5052837, 19.0634207);
	}
	
	var size = document.getElementById("searchsize").value;
	var mapZoom = 13;
	//if (size >= 3000) mapZoom = 13;
	if (size >= 10000) mapZoom = 12;
	if (size >= 15000) mapZoom = 11;
	if (size >= 25000) mapZoom = 10;
	if (size <= 500) mapZoom = 14;
	map.setCenter(point, mapZoom);
	WriteSearchSize_text(size);
	
    	if (document.getElementById("p_mapsearchzone_ch").checked) DrawSquare_Past();


	//if (!document.getElementById("p_mapsearch_ch").checked) closeaddsearch();	



    	if (document.getElementById("mapsearchzone_ch").checked) { 
		addmapsearchzone();
	}    
    
	SetMarkers();
}

function SetMarkers() {
  	var MIcon = new GIcon(G_DEFAULT_ICON);
    	MIcon.image = "http://www.menuk.hu/images/Micon_nagy7.png";
    	MIcon.shadow = "http://www.menuk.hu/images/noshadow.gif";
    	var MSize = new GSize(20,22)
    	MIcon.iconSize = MSize;
    	var MSize = new GSize(2,2)
    	MIcon.shadowSize = MSize;
    	//MIcon.imageMap = [5,9,0,21,19,21,18,10,5,9]; 
    	MIcon.imageMap = [0,0,0,22,20,22,20,0,0,0]; 
	MIcon.iconAnchor = new GPoint(8, 22);
    	var ig = document.getElementById("sumplaces").innerHTML;
    
    	for (var i = 1; i <= ig; i++) {
    		var point = new GLatLng(document.getElementById("placelat" + i).innerHTML,document.getElementById("placelng" + i).innerHTML);
    		if (i == 1 && document.getElementById("cimsearch_ch").checked) { map.setCenter(point, 12); delmapsearchzone(); addmapsearchzone_plus(); }
    		if (i == 1 && !document.getElementById("cimsearch_ch").checked  && !document.getElementById("mapsearchzone_ch").checked) { map.setCenter(point, 12); }
    		var markerOptions = { icon:MIcon, title:""+i };
    		gmarker[i] = new GMarker(point, markerOptions);


		if (document.getElementById("searchsize").value != 'showplace') {
			Mmarkerextwindow(gmarker[i]);
			Mmarkerdefclicklistener(gmarker[i]);
			Mmarkerdeflisteners(gmarker[i]);
			MmarkerDetailswindow(gmarker[i],0);

			
			if (i == 1) { 
				point = new GLatLng('0','0'); 
				gmarker[0] = new GMarker(point,markerOptions);
				TempMmarker = gmarker[0];
				LastMmarker = TempMmarker;
				map.addOverlay(gmarker[0]);
				gmarker[0].hide();
			}
		}
    		map.addOverlay(gmarker[i]);
    		if (ig == 1 && (document.getElementById("cimsearch_ch").checked || !document.getElementById("mapsearchzone_ch").checked)) map.setZoom(15);
    	}
}

function Mmarkerdefclicklistener(Mmarker) {
	GEvent.addListener(Mmarker,"click",
		function() {
			DetWinPrior = 0;
			if (LastMmarker == Mmarker) {
				GEvent.clearListeners(Mmarker, "mouseout");
				GEvent.clearListeners(Mmarker, "mouseover");
				Mmarkerdeflisteners(Mmarker);
				MmarkerDetailswindow(Mmarker,0);
				GEvent.trigger(Mmarker, "mouseout");
				GEvent.trigger(Mmarker, "mouseover");
				LastMmarker = TempMmarker;
				return '1';
			}
		
			if (LastMmarker != Mmarker) {
				if (map.getZoom() < 13) map.setCenter(Mmarker.getLatLng(), 15);
				Mmarker.setImage("http://www.menuk.hu/images/Micon_nagy7_clicked.png");
				GEvent.clearListeners(Mmarker, "mouseout");
				GEvent.clearListeners(Mmarker, "mouseover");
				Mmarkerextwindow(Mmarker);
				MmarkerDetailswindow(Mmarker,1);
				
				GEvent.clearListeners(LastMmarker, "mouseover");
				Mmarkerdeflisteners(LastMmarker);
				Mmarkerextwindow(LastMmarker);
				MmarkerDetailswindow(LastMmarker,0);
				GEvent.trigger(LastMmarker, "mouseout"); 	
				LastMmarker = Mmarker;
			}
			GEvent.trigger(Mmarker, "mouseover");
			DetWinPrior = 1;
		}
	);
}

function Mmarkerdeflisteners(Mmarker) {


	GEvent.addListener(Mmarker,"mouseover",
	    function() {
		//this.openInfoWindowHtml(this.getTitle());
		Mmarker.setImage("http://www.menuk.hu/images/Micon_nagy7_over.png");
		//GEvent.trigger(Mmarker, "click"); 
	    }
	);
	
	GEvent.addListener(Mmarker,"mouseout",
	    function() {
		Mmarker.setImage("http://www.menuk.hu/images/Micon_nagy7.png");
	    }
	);
}


function Mmarkerextwindow(Mmarker) {
	if (searchmode == 'menu') Mmarkerextwindow_menu(Mmarker);
	if (searchmode == 'place') Mmarkerextwindow_place(Mmarker);
}

function MmarkerDetailswindow(Mmarker,clicked) {
	if (searchmode == 'menu') MmarkerDetailswindow_menu(Mmarker,clicked);
	if (searchmode == 'place') MmarkerDetailswindow_place(Mmarker,clicked);
}

function Mmarkerextwindow_menu(Mmarker) {
	GEvent.addListener(Mmarker, 'mouseover', function() {
		var j;
		var str = '';

		str += " <b>" + document.getElementById('pnamewithimg'+Mmarker.getTitle()).innerHTML  + "</b>";
		
		if (document.getElementsByName('listid'+Mmarker.getTitle()).length != 0) {
			str += ' (Listában: ';
			for(j=0;  j<document.getElementsByName('listid'+Mmarker.getTitle()).length; j++) {
				if (j != 0) str += ',';
				str += "<span style='color: #cb8a0e; font-weight: bold;'>" + document.getElementsByName('listid'+Mmarker.getTitle())[j].innerHTML + ".</span>";
			}
			str += ')';
		}	
	
		Mmarker.openExtInfoWindow(
			map,
			"extInfoWindow_coolBlues",
			"<div>" + str + "</div>",
			{beakOffset: 1}
		); 
	});
	
	GEvent.addListener(Mmarker,"mouseout",
		    function() {
			map.closeExtInfoWindow();
		    }
	);
}

function MmarkerDetailswindow_menu(Mmarker,clicked) {
	GEvent.addListener(Mmarker, 'mouseover', function() {
		if (DetWinPrior == 0) {
			var listid = document.getElementById('listid'+Mmarker.getTitle()).innerHTML;
			var pid = document.getElementById('placeid'+Mmarker.getTitle()).innerHTML;
			document.getElementById('details_container').style.display = 'block';
			var str = '';
			var name = '';
			var num = 0;
			str += "<div class='pname'>";
			str += 		"<a href='index.php?a=place&pid=" + pid + "'>";
			if (clicked == 1) str += '<font style="color: #cb8a0e; text-decoration: underline;">';
			str += 		document.getElementById('pname'+Mmarker.getTitle()).innerHTML;
			if (clicked == 1) str += '</font>';
			str +=		"</a>";
			str += "</div>";
			str += "<div class='middle' id='details_middle_text'>";
			str += "</div>";
			str += "<div class='menus'>";

				if (document.getElementsByName('listid'+Mmarker.getTitle()).length != 0) {
			str +=		"További menük itt: <br>";	
					for(var j=0;  j<document.getElementsByName('listid'+Mmarker.getTitle()).length; j++) {
						if (j != 0) str += '  ';
						name = 'listid'+Mmarker.getTitle();
						num = document.getElementsByName(name)[j].innerHTML;
						//str += "<a onclick='showMenu("+num+")'>";
						str += "<a name='details_menus_as' id='details_menus_a"+num+"'onclick='writeDetailsMiddle("+num+")'>" + num + ".</a> ";
						str += "<a class='mname' name='details_menusname_as' id='details_menusname_a"+num+"'onclick='writeDetailsMiddle("+num+")'>" + document.getElementById('shorttext'+num).innerHTML+"</a><br>";
					}
				}

			str += "</div>";
			str += "<div class='clear'></div>";
			document.getElementById('details').innerHTML = str;
			writeDetailsMiddle(listid);
		}
	});
}


function Mmarkerextwindow_place(Mmarker) {
	GEvent.addListener(Mmarker, 'mouseover', function() {
		var j;
		var str = '';

		str += " <b>" + document.getElementById('pnamewithimg'+Mmarker.getTitle()).innerHTML  + "</b>";
		
		if (document.getElementsByName('listid'+Mmarker.getTitle()).length != 0) {
			str += ' (Listában: ';
			for(j=0;  j<document.getElementsByName('listid'+Mmarker.getTitle()).length; j++) {
				if (j != 0) str += ',';
				str += "<span style='color: #cb8a0e; font-weight: bold;'>" + document.getElementsByName('listid'+Mmarker.getTitle())[j].innerHTML + ".</span>";
			}
			str += ')';
		}	
	
		Mmarker.openExtInfoWindow(
			map,
			"extInfoWindow_coolBlues",
			"<div>" + str + "</div>",
			{beakOffset: 1}
		); 
	});
	
	GEvent.addListener(Mmarker,"mouseout",
		    function() {
			map.closeExtInfoWindow();
		    }
	);
}



function MmarkerDetailswindow_place(Mmarker,clicked) {
	GEvent.addListener(Mmarker, 'mouseover', function() {
		if (DetWinPrior == 0) {
			var listid = document.getElementById('listid'+Mmarker.getTitle()).innerHTML;
			var pid = document.getElementById('placeid'+Mmarker.getTitle()).innerHTML;
			document.getElementById('details_container').style.display = 'block';
			var str = '';
			var name = '';
			var num = 0;
			str += "<div class='pname'>";
			str += 		"<a href='index.php?a=place&pid=" + pid + "'>";
			if (clicked == 1) str += '<font style="color: #cb8a0e; text-decoration: underline;">';
			str += 		document.getElementById('pname'+Mmarker.getTitle()).innerHTML;
			if (clicked == 1) str += '</font>';
			str +=		"</a>";
			str += "";
			str += "</div>";
			str += "<div class='middle' id='details_middle_text'>";
			//if (document.getElementsByName('listid'+Mmarker.getTitle()).length != 0) {
				str += ' Listában: ';
				for(j=0;  j<document.getElementsByName('listid'+Mmarker.getTitle()).length; j++) {
					if (j != 0) str += ',';
					str += "<a onclick='showMenu("+listid+")' style='font-weight: normal; text-decoration: none;'>";
					str += "<span style='color: #cb8a0e; font-weight: bold; text-decoration: none;'>" + listid + ". (Mutat)</span>";
					str += "</a>";
				}
				str += '';
			//}				
			str += "</div>";			
			str += "<div class='clear'></div>";
			document.getElementById('details').innerHTML = str;
		}
	});
}


function writeDetailsMiddle(listid) {

	var str='';
	str += "<div class='row'><b>"+listid+". Menü:</b> (";
	str += "<a onclick='showMenu("+listid+")' style='font-weight: normal'>";
	str += "listában mutat";
	str += "</a>)</div>";
	str += 		"<div class='row'>Menü:<b>" + document.getElementById('shorttext'+listid).innerHTML + "</b></div>";
	str += 		"<div class='row'>Ár: <b>" + document.getElementById('price'+listid).innerHTML + " (" + document.getElementById('startendtime'+listid).innerHTML + ")</b></div>";


	if (document.getElementsByName('details_menus_as').length != 0) {
		for(var j=0;  j<document.getElementsByName('details_menus_as').length; j++) {
			document.getElementsByName('details_menus_as')[j].style.color = '#d6ba85';
			document.getElementsByName('details_menusname_as')[j].style.color = '#739f65';
			document.getElementsByName('details_menus_as')[j].style.fontWeight = 'normal';
		}
	}
	document.getElementById('details_menus_a'+listid).style.color = '#cb8a0e';
	document.getElementById('details_menusname_a'+listid).style.color = '#2d5221';
	document.getElementById('details_menus_a'+listid).style.fontWeight = 'bold';
	
	document.getElementById('details_middle_text').innerHTML = str;
}



function DrawSquare(where) {
	
	if (document.getElementById('mapsearchzone_ch').checked) {

		if (where == 0) {
			if (document.getElementById("gLat").value != '' && document.getElementById("gLat").value != '0') {
				var point = new GLatLng(document.getElementById("gLat").value, document.getElementById("gLng").value );
			}
			else var point = new GLatLng(document.getElementById("gLat_user").value, document.getElementById("gLng_user").value );
		}
		else var point = map.getCenter();
		var elat = point.lat();
		var elng = point.lng();

		var size = document.getElementById("searchsize").value;
		var sizelat = size;
		var sizelng = size * 1.476190476;
		sizelat = sizelat/300000;
		sizelng = sizelng/300000;
	    searchsquare = new GPolygon([
			new GLatLng(elat - sizelat,elng - sizelng),
			new GLatLng(elat - (-sizelat),elng - sizelng),
			new GLatLng(elat - (-sizelat),elng - (-sizelng)),
			new GLatLng(elat - sizelat,elng - (-sizelng)),
			new GLatLng(elat - sizelat,elng - sizelng)
	    ], "#ffffff", 2, 0.6, "#123456", 0.3);

	    map.addOverlay(searchsquare);
	}
}

function DrawSquare_Past() {
	var point = map.getCenter();

	var elat = point.lat();
	var elng = point.lng();

	var size = document.getElementById("searchsize").value;
	var sizelat = size;
	var sizelng = size * 1.5;
	sizelat = sizelat/300000;
	sizelng = sizelng/300000;
    var pastsquare = new GPolygon([
		new GLatLng(elat - sizelat,elng - sizelng),
		new GLatLng(elat - (-sizelat),elng - sizelng),
		new GLatLng(elat - (-sizelat),elng - (-sizelng)),
		new GLatLng(elat - sizelat,elng - (-sizelng)),
		new GLatLng(elat - sizelat,elng - sizelng)
    ], "#ffffff", 2, 0.4, "#77c682", 0.25);

    map.addOverlay(pastsquare);
}


function searchsizecalc(much) {
	if (document.getElementById('mapsearchzone_ch').checked) {
		map.removeOverlay(searchsquare);
		var cursize = document.getElementById("searchsize").value;
		var mapzoom = map.getZoom();
		if (cursize < 500 && cursize > 0) much = much * 100;
		if (cursize == 500 && much < 0) much = much * 100;
		if (cursize == 500 && much > 0) much = much * 250;
		if (cursize == 750) much = much * 250;
		if (cursize == 1000 && much < 0) much = much * 250;
		if (cursize == 1000 && much > 0) much = much * 500;		
		if (cursize > 1000 && cursize < 2000) much = much * 500;
		if (cursize == 2000 && much < 0) much = much * 500;
		if (cursize == 2000 && much > 0) much = much * 1000;
		if (cursize > 2000 && cursize < 5000) much = much * 1000;
		if (cursize == 5000 && much < 0) much = much * 1000;
		if (cursize == 5000 && much > 0) much = much * 5000;
		if (cursize > 5000) much = much * 5000;
		
		var newsize = cursize - (-much);
		
		if (newsize > 25000) newsize = 25000;
		if (newsize < 100) newsize = 100;

		if (newsize == 25000 && newsize>cursize && mapzoom >= 11) map.setZoom(10);
		if (newsize == 10000 && newsize>cursize && mapzoom >= 13) map.setZoom(11);
		if (newsize == 3000 && newsize>cursize && mapzoom >= 14) map.setZoom(13);
		if (newsize == 1500 && newsize>cursize && mapzoom >= 15) map.setZoom(14);	
		if (newsize == 1000 && newsize>cursize && mapzoom >= 16) map.setZoom(15);
		if (newsize == 400 && newsize>cursize && mapzoom >= 17) map.setZoom(16);

		document.getElementById("searchsize").value = newsize;
		WriteSearchSize_text(newsize);
		DrawSquare('0');
	}
}



function WriteSearchSize_text(num) {
	var msg = '';
	if (num < 1000) msg = num + "m";
	if (num >= 1000) msg = num/1000 + "km";
	document.getElementById("searchsize_text").value = msg;
}
	
	
function mapzoomin() {
	map.setZoom(map.getZoom() + 1);
}

function mapzoomout() {
	map.setZoom(map.getZoom() - 1);
}

