var poimapitems;
var poi_wnd = {'szolgaltatas':'', 'esemeny':'', 'hasznos':'', 'cegkereso':''};
var poi_listpcsid = '';
var poiKH = 0;
var poi_selectedfomenu = '';
var poiKeresText = '';
var poiTerkep = {};

///////////////////////////////////////////////////////////////////////////////
function poiClear(source){
	var objInput = document.getElementById(source+'keresmit-input');
	var objInputHol = document.getElementById(source+'kereshol-input');
	objInput.dtSetValue('', false);
	objInputHol.dtSetValue('', false);
	}

///////////////////////////////////////////////////////////////////////////////
function poi_ShowHide(source, visible, favisible){
	var objResult = document.getElementById(source+'-result');
	if(!visible) objResult.innerHTML = '';
	objResult.className = 'szolgaltatas-result';
	setDisplay(objResult, (visible) ?'block' :'none');
	setDisplay('poiFaSwitch1-'+source, (favisible) ?'none' :'block');
	setDisplay('poiFaSwitch2-'+source, (favisible) ?'block' :'none');
	if(map) map.symbolDel('poi');
	hideSymbolHint();
	hideSymbolBubble();
	if(visible) alignScrollContents();
	}

///////////////////////////////////////////////////////////////////////////////
function poi_FA(source, dontswitch){
	poi_ShowHide(source, false, true);
	if(!dontswitch) switchTab(source);
	poi_wnd[source] = 'fa';
	poi_listpcsid = '';
	poiKH = 0;
	if(map) map.symbolDel('poi');
	hideSymbolHint();
	hideSymbolBubble(true);

	var ajax = AjaxRequest(PATH_SERVER+LANG+'/poi/?source='+source);
	document.getElementById(source+'-result').innerHTML = ajax.responseText;
	poi_ShowHide(source, true, true);
//	if(window.PNGfix) PNGfix(source+'-result', true);
	if(poi_selectedfomenu){
		var pcsid = poi_selectedfomenu;
		poi_selectedfomenu = '';
		poi_SelectFomenu(pcsid);
		}
	}

function poi_SelectFomenu(pcsid){
	if(poi_selectedfomenu){//becsuk
		setClassName('poifomenu'+poi_selectedfomenu, 'poi_fomenu');
		setDisplay('poifomenucsop'+poi_selectedfomenu, 'none');
		if(poi_selectedfomenu==pcsid){poi_selectedfomenu = ''; return;}//ugyan arra klikk, akkor nem kell nyitni
		poi_selectedfomenu = '';
		}
	setClassName('poifomenu'+pcsid, 'poi_fomenu_selected');
	setDisplay('poifomenucsop'+pcsid, 'block');
	poi_selectedfomenu = pcsid;
	}

function poi_LIST(source, pcsid,offset, dontswitch){
	if(!map.mapData.LIM) return;
	poi_ShowHide(source, false, true);
	if(!dontswitch) switchTab(source);
	poi_wnd[source] = 'list';
	poi_listpcsid = pcsid;

	var ajax = AjaxRequest(PATH_SERVER+LANG+'/poi/list/?source='+source+'&pcsid='+pcsid+'&LIM='+map.mapData.LIM.join(',')+'&offset='+offset+'&kh='+poiKH);
	document.getElementById(source+'-result').innerHTML = ajax.responseText;
	poi_ShowHide(source, true, true);
//	if(window.PNGfix) PNGfix(source+'-result', true);
	poi_ShowMapItems(source);
	}

function poi_LISTTK(source, piid, dontswitch){
	poi_ShowHide(source, false, false);
	if(!dontswitch) switchTab(source);
	poi_wnd[source] = 'listtk';
	poi_listtkid = piid;

	var ajax = AjaxRequest(PATH_SERVER+LANG+'/poi/listtk/?source='+source+'&piid='+piid);
	document.getElementById(source+'-result').innerHTML = ajax.responseText;
	poi_ShowHide(source, true, false);
//	if(window.PNGfix) PNGfix(source+'-result', true);
	poi_ShowMapItems(source);
	}

function poi_KERES(source, str,offset,dontswitch,nohol){
	if(!offset) offset = 0;
	poi_ShowHide(source, false, false);
	var hol;
	var objInput = document.getElementById(source+'keresmit-input');
	if(objInput && !str){
		str = objInput.dtGetValue();
//		if(str){
			var objInputHol = document.getElementById(source+'kereshol-input');
			if(objInputHol.dtGetValue() && (objInputHol.dtModified || !nohol)){
				cimSearch(source+'kereshol', 'poikeres');
				return;
				}
//			}
		}
	if(str) poiKeresText = str;
	if(poiKeresText.length<=0){
		if(poi_listpcsid) poi_LIST(source, poi_listpcsid,0);
		else poi_FA(source);
		}
	else {
		if(objInput) objInput.dtSetValue(str, false);
		if(!dontswitch) switchTab(source);
//		if(poi_listpcsid) var pcsid = poi_listpcsid;
//		else if(poi_selectedfomenu && document.getElementById('kerestip_csak') && document.getElementById('kerestip_csak').checked) var pcsid = poi_selectedfomenu;
//		else var pcsid = '';
		var pcsid = '';
		poi_wnd[source] = 'keres';
		poi_listpcsid = pcsid;

		var ajax = AjaxRequest(PATH_SERVER+LANG+'/poi/keres/?source='+source+'&LIM='+map.mapData.LIM.join(',')+'&pcsid='+pcsid+'&str='+encodeURIComponent(poiKeresText)+'&offset='+offset+'&kh='+poiKH);
		document.getElementById(source+'-result').innerHTML = ajax.responseText;
		poi_ShowHide(source, true, false);
//		if(window.PNGfix) PNGfix(source+'-result', true);
		poi_ShowMapItems(source);
		}
	}

function poi_ShowMapItems(source){
	if(!window.map) return;
	var found_bubbleauto = false;
	var objData = document.getElementById(source+'-data');
	poimapitems = (objData && objData.innerHTML) ?eval('(' +objData.innerHTML+ ')') :null;
	map.symbolDel('poi');
	if(!poimapitems) return;
	var data = null;
	var items = [];
	for(var i=poimapitems.length-1; i>=0; i--){
		data = poimapitems[i];
		poimapitems[i].poiid = data.pcsid+'_'+data.piid;
//		{"piid":252046,"pieovx":641997,"pieovy":179914,"pimup":4,"pirank":100,"pcsid":7755,"piname":"1-es Sz\u00e1m\u00fa Orvosi Rendel\u0151","piname_alt":null,"piaddr":"2400 Duna\u00fajv\u00e1ros, Vasm\u0171 \u00fat 10","piphone":null,"piphone2":null,"pifax":null,"piemail":null,"piweb":null,"pilogo":null,"pilogow":30,"pilogoh":30,"pistaticmap":1,"pidatapage_visible":1,"pidatapage_link":null}
		items.push({ type:'poi', id:'poi'+data.poiid, data:{poidata:data, wkrd:[data.pieovx,data.pieovy], symbnum:'2-'+source, symbclass:data.pcssymbol, flagtext:i+1, title:data.piname, addr:data.piaddr} });
		if(!found_bubbleauto && data.poiid==poiBubbleAutoShow) found_bubbleauto = true;
		}
	map.symbolAddMore(items);
	if(!map.mapData.busy){
		map.alignSymbols();
		}
	if(!found_bubbleauto){
		poiBubbleAutoShow = null;
		symbolBubbleData = null;
		}
	if(poiBubbleAutoShow){
		onFlagClick('poi', 'poi'+poiBubbleAutoShow);
		poiBubbleAutoShow = null;
		}
	}

function poi_ShowFulItems(source){
	if(!window.map) return;
	var objData = document.getElementById('fulpoi-data');
	map.symbolDel('fulpoi');
	var fulpoiitems = (objData && objData.innerHTML) ?eval('(' +objData.innerHTML+ ')') :null;
	if(!fulpoiitems) return;
	var data = fulpoiitems[source];
	if(!data) return;
	fulpoiitems[source].poiid = data.pcsid+'_'+data.piid;
	map.symbolAdd( 'fulpoi', 'poi'+data.poiid, {poidata:data, wkrd:[data.pieovx,data.pieovy], symbnum:'2-'+source, symbclass:'', flagtext:'', title:data.piname, addr:data.piaddr} );
	if(!map.mapData.busy) map.alignSymbols();
	}

function poi_terkeppoi(source, pcsid, reload){
	if(!window.map) return;
	var show = (reload || (source && pcsid && (poiTerkep.source!=source || poiTerkep.pcsid!=pcsid)) );

	if(poiTerkep.source && poiTerkep.pcsid && !reload){//hide
		if(!reload && isLoading) return;
		var obj = document.getElementById('btnterkeppoi-'+poiTerkep.source+poiTerkep.pcsid);
		obj.className = '';
		map.symbolDel('terkeppoi');
		poiTerkep.pcsid = null;
		poiTerkep.source = null;
		}
	if(show){//show
		if(!reload && isLoading) return;
		mapLoading(true);
		map.symbolDel('terkeppoi');
		poiTerkep.pcsid = pcsid;
		poiTerkep.source = source;
		var ajax = AjaxRequest(PATH_SERVER+LANG+'/poi/terkeppoi/?source='+poiTerkep.source+'&pcsid='+poiTerkep.pcsid+'&LIM='+map.mapData.LIM.join(','));
		poiTerkep.poiitems = (ajax && ajax.responseText) ?eval('(' +ajax.responseText+ ')') :null;

		var data = null;
		var items = [];
		for(var i=poiTerkep.poiitems.length-1; i>=0; i--){
			data = poiTerkep.poiitems[i];
			poiTerkep.poiitems[i].poiid = data.pcsid+'_'+data.piid;
//			{"piid":252046,"pieovx":641997,"pieovy":179914,"pimup":4,"pirank":100,"pcsid":7755,"piname":"1-es Sz\u00e1m\u00fa Orvosi Rendel\u0151","piname_alt":null,"piaddr":"2400 Duna\u00fajv\u00e1ros, Vasm\u0171 \u00fat 10","piphone":null,"piphone2":null,"pifax":null,"piemail":null,"piweb":null,"pilogo":null,"pilogow":30,"pilogoh":30,"pistaticmap":1,"pidatapage_visible":1,"pidatapage_link":null}
			items.push({ type:'terkeppoi', id:'poi'+data.poiid, data:{poidata:data, wkrd:[data.pieovx,data.pieovy], symbnum:3, symbclass:'3-'+data.pcssymbol, flagtext:'', title:data.piname, addr:data.piaddr, nohint:true} });
//			if(!found_bubbleauto && data.poiid==poiBubbleAutoShow) found_bubbleauto = true;
			}
		map.symbolAddMore(items);
//		alert(poiTerkep.poiitems[0].symbolObject);
		if(!map.mapData.busy) map.alignSymbols();
		var obj = document.getElementById('btnterkeppoi-'+poiTerkep.source+poiTerkep.pcsid);
		if(obj) obj.className = 'aktiv';
		mapLoading();
		}
	}
