var map = null;
var polaEdycji = new Array();
var typGeometri = null;
var tryb = null;
var tabela = null;
var rekordId = null;
var overlay = null;
var boxes = null;
var ids = null;
var layersPan = null;
var tableWykaz = null;	
var obiektWykaz = null;
var decDiv = null;	
var mainDiv = null;
var tabPanel = null;
var mapPanel = null;
var tabelaZaladowana = false;	
var oknoPanel = null;	
var layerTree = null;	
var layers = new Array();
var treePanel = null;
var wybranyPanel = null;
var bLayer = null;
var bEdit = null;
var bSzukaj = null;
var layinfo=null;
var tabeleEdycja = null;
var editPanel = null;
var findPanel = null;
var szukanieAdresuMarker = null;
var sciezkaWdr = '';
var hostWdr = '';
var filtryPanel = null;
var filtry = new Array();
var ladowanie_stan = 0;
var analizyDiv = null;
var analizaDiv = null;
var warstwyInfo = null;
var wmsRysuj = null;
var urlRysuj = null;
var warunekRysuj = ''; 
var page = 0;
var pagesPanel= null;
var pagesSelect = null;
var where = '';
var isThematic = false;
var warstwyCmb = null;
var theSer = null;
var getInfoPanel = null;
var mainBBox = null;
var extPanSO = null;
var extPanWy = null;
var szuObBut = null;
var version = "";
var token = 0;
var them_tab = new Array();
var actionWindow = null;
var actionWindowVisible = false;
var lastCreatedRecordId = null;
var objectData = "";
var obiektAktywny = {identyfikator:"",data:""};
var teryt = '';
var upr_wid = new Array();
var upr_ed = new Array();
var ikonkaWT = '';

	var iGeoDecyzje = false;
var decyzje = {okno:null,controls:new Array()};

var iGeoPlan = false;
var plan = {};

var iGeoGleby = false;
var gleby = {};

var wykaz = {};

var szukajBudynki = false;
var budynki = {okno:null,controls:new Array()};
function warstwaEdytowalna(warstwa){
	if (tabeleEdycja[0] == '*'){
		return true;
	} else {
		for (var j=0;j<tabeleEdycja.length;j++){
			if (warstwa  == tabeleEdycja[j]) return true;
		}
	}
	return false;
}
function znl(value){
	while(value.indexOf("!new_line!")!=-1) value = value.replace("!new_line!","\n");
	return value;
}
function toBool(value){
	if ((value==1)||(value==true)||(value=="1")||(value=="true")||(value=="t")) return true;
	if ((value==0)||(value==false)||(value=="0")||(value=="false")||(value=="f")) return false;
	return false;
}
function boolToInt(value){
	if ((value==1)||(value==true)||(value=="1")||(value=="true")||(value=="t")) return 1;
	if ((value==0)||(value==false)||(value=="0")||(value=="false")||(value=="f")) return 0;
	return '';
}
function onkeyszukaj(evt,fun){
	var keyCode = null; 
	if (!evt)  evt = window.event;
	if( evt.which ) {
		keyCode = evt.which; 
	} else 
	if( evt.keyCode ) { 
	keyCode = evt.keyCode;
	} if( 13 == keyCode ) {
		fun(); 
	}
}
function isInteger(s){
	return Math.floor(s) == s ? true : false;
}
function isEmpty(s){
    return ((s == null) || (s.length == 0))
}
function isDigit (c){
    return ((c >= "0") && (c <= "9"))
}
function isFloat(s){
	var pattern = /^\d+.?\d*$/;
	if ( s.match(pattern)==null )
		return false
	else
		return true;
}
function isDate(data){
	var Y = data.substring(0,4);
	if (isInteger(Y)==false){
		return false;
	}
	var t = data.substring(4,5);
	if (t!='-'){
		return false;
	}	
	var m = data.substring(5,7);
	if (isInteger(m)==false){		
		return fasle;
	}
	var mf = parseFloat(m);
	if ((mf<=0)||(mf>12))	return false;
	
	t = data.substring(7,8);
	if (t!='-'){
		return false;
	}		
	
	var d = data.substring(8,10);
	if (isInteger(d)==false){		
		return false;
	}
	var df = parseFloat(d);
	if ((df<=0)||(df>31))	return false;

	return true;
}
	
function czyscPolaEdycji(){
	for (var i=0;i<polaEdycji.length;i++){
		typ = polaEdycji[i].typ;
		if ((typ=='t')||(typ=='ta')||(typ=='i')||(typ=='f')||(typ=='d')){
			polaEdycji[i].kontrolka.value = '';
		}
		if (typ=='file'){
			polaEdycji[i].kontrolka.value = '';
			polaEdycji[i].kontrolka.filePath = '';			
		}		
		if (typ=='b'){
			polaEdycji[i].kontrolka.checked = false;
		}		
	}
}	
function nowyPunkt(){
	map.removeOverlays();
	var ps = new BEngine.iGML.Overlays.PointStyle({image:'obrazki/marker.png',width:20,height:34,xCenter:10,yCenter:32});
	var pkt = new BEngine.iGML.Overlays.Point(null,null,ps);
	map.addOverlay(pkt);
	pkt.onclick = function(){
		map.setTool('edit',this);
	}
	map.setTool('edit',pkt);
	overlay = pkt;
}
function nowaLinia(){
	map.removeOverlays();
	var lin = new BEngine.iGML.Overlays.Line(new Array(),{width:2,color:'#0f0',opacity:0.8});
	map.addOverlay(lin);
	lin.onclick = function(){
		map.setTool('edit',this);
	}			
	map.setTool('edit',lin);

	overlay = lin;
}
function nowyPoligon(){
	map.removeOverlays();
	var pol = new BEngine.iGML.Overlays.Polygon(new Array(),{lineWidth:1,lineColor:'#f00',lineOpacity:0.8,fillColor:'#f00'});
	map.addOverlay(pol);
	pol.onclick = function(){
		map.setTool('edit',this);
	}			
	map.setTool('edit',pol);
	overlay = pol;
}
function edytujPunkt(x,y){
	map.removeOverlays();
	var ps = new BEngine.iGML.Overlays.PointStyle({image:'obrazki/marker.png',width:20,height:34,xCenter:10,yCenter:32});
	var pkt = new BEngine.iGML.Overlays.Point(x,y,ps);
	map.addOverlay(pkt);
	pkt.onclick = function(){
		map.setTool('edit',this);
	}
	map.setTool('edit',pkt);
	overlay = pkt;
}
function edytujLinie(points){
	map.removeOverlays();
	var lin = new BEngine.iGML.Overlays.Line(points,{width:2,color:'#0f0',opacity:0.8});
	map.addOverlay(lin);
	lin.onclick = function(){
		map.setTool('edit',this);
	}			
	map.setTool('edit',lin);
	overlay = lin;
}
function edytujPoligon(points){
	map.removeOverlays();
	var pol = new BEngine.iGML.Overlays.Polygon(points,{lineWidth:1,lineColor:'#f00',lineOpacity:0.8,fillColor:'#f00'});
	map.addOverlay(pol);
	pol.onclick = function(){
		map.setTool('edit',this);
	}			
	map.setTool('edit',pol);
	overlay = pol;
}
function odznaczAktywnyObiekt(){
	map.removeOverlays();
	overlay = null;
	tryb = null;
	actionWindow.hide();
	actionWindowVisible = false;
	map.hideObjectAction();
	var parametry={sciezka:sciezkaWdr,token:token,id:0};
	BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
		map.refresh(true,'aktywne_obiekty');
	});
}
function anulujEdycje(){
	map.removeOverlays();
	overlay = null;
	tryb = null;
	actionWindow.hide();
	actionWindowVisible = false;
	map.hideObjectAction();
	var parametry={sciezka:sciezkaWdr,token:token,id:0};
	BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
		map.refresh(true,'aktywne_obiekty');
	});
	map.setTool('pointer');
}
	

function tworzEdytujDecyzje(id){
	decyzje.id = id;
	decyzje.okno.show();
	decyzje.czyscFormularz();

	if (id==0){
		decyzje.okno.setText("Tworzenie decyzji"); 
	} else {
		decyzje.okno.setText("Edycja decyzji");
	}	
	
	var parametry={param:"pobierzDecyzje",id:id,sciezka:sciezkaWdr};	
	BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
		var obiekt =eval( "("+obj.responseText+")");;
		setSelectOptions(decyzje.controls['rodzaj_decyzji_id'],obiekt.rodzaje);
		setSelectOptions(decyzje.controls['miejscowosc_id'],obiekt.miejscowosci);
		setSelectOptions(decyzje.obrebSelect,obiekt.obreby);
		
		if (obiekt.numer_decyzji){
			decyzje.controls['numer_decyzji'].value = znl(obiekt.numer_decyzji);
			decyzje.controls['rodzaj_decyzji_id'].value = obiekt.rodzaj_decyzji_id;		
			decyzje.controls['data_wydania'].value = znl(obiekt.data_wydania);		
			decyzje.controls['rodzaj_inwestycji'].value = znl(obiekt.rodzaj_inwestycji);		
			decyzje.controls['wnioskodawca'].value = znl(obiekt.wnioskodawca);		
			decyzje.controls['miejscowosc_id'].value = obiekt.miejscowosc_id;		
			decyzje.controls['adres'].value = znl(obiekt.adres);		
			decyzje.controls['ustalenia'].value = znl(obiekt.ustalenia);		
			decyzje.controls['zmiana'].value = znl(obiekt.zmiana);		
			decyzje.controls['uwagi'].value = znl(obiekt.uwagi);					
			decyzje.controls['dzialki'] = obiekt.dzialki;
			decyzje.odswiezListeDzialek();
		}
	});	
	
	

	

}	
function nowy(){
	if (tabela!=null){
		if (tabela != 'dec_decyzje'){
			
			actionWindow.setText('Tworzenie obiektu');
			if (actionWindowVisible == false) actionWindow.show();
			

			czyscPolaEdycji();
			tryb = 'tworzenie';
			rekordId = null; 
			if (typGeometri == 0) nowyPunkt();
			if (typGeometri == 1) nowaLinia();
			if (typGeometri == 2) nowyPoligon();
		} else {
			tworzEdytujDecyzje(0);		
		}
	} else {
		alert('Wybierz warstwę tematyczną z okna po lewej stronie.');
	}
}	
function czytajRekord(tabela,id,callback){
	

	var parametry={tabela:tabela,id:id,sciezka:sciezkaWdr};
	BEngine.Ajax.post('skrypty/ajax/czytaj_rekord_edycja.php',parametry,function(obj){
		var obiekt =eval( "("+obj.responseText+")");;
		if (obiekt.error == 0){
			callback(obiekt.data);		
		} else {
			alert('Nie ma takiego obiektu');
		}		
	});
	
}	
function edycja(){
	if ((rekordId==null)||(rekordId==0)) {
		alert('Wybierz obiekt do edycji');
		return 0;
	}
	
	if (tabela == 'dec_decyzje'){
		tworzEdytujDecyzje(rekordId);
	
	} else 
	if (tabela == 'glb_kompleks'){
		gleby.edytuj(rekordId);	
	} else {
		if (actionWindowVisible == false) actionWindow.show();
		wczytajPolaEdycja(tabela,function(){	
			actionWindow.setText('Edycja obiektu');
			tryb = 'edycja';
			czytajRekord(tabela,rekordId,function(pola){
				for (var i=0;i<polaEdycji.length;i++){
					var p = polaEdycji[i];
					typ = polaEdycji[i].typ;
					var w = eval("(pola."+p.nazwa+")");
					
					while(w.indexOf("!new_line!")!=-1) w = w.replace("!new_line!","\n");
					
					if ((typ=='t')||(typ=='ta')||(typ=='i')||(typ=='f')||(typ=='d')||(typ=='dir')){
						p.kontrolka.value = w;
					}
					if (typ=='file'){
						var tmp = w.split('/');
						p.kontrolka.value = tmp[tmp.length-1];
					}
					
					if (typ=='b'){
						p.kontrolka.checked = toBool(w);
					}			
				}
				var g = pola.geometria;
				
				if (g.indexOf('POINT')!=-1){
					if (g == 'POINT'){
						nowyPunkt();
					} else {
						var coor = g.substr(6,g.length-7).split(' ');
						//alert(coor[0]+' '+coor[1]);
						edytujPunkt(coor[0],coor[1]);	
					}						
				}
				if (g.indexOf('LINESTRING')!=-1){
					var coor = g.substr(11,g.length-12).split(',');
					var points = new Array();
					for (var i=0;i<coor.length;i++){
						var pp = coor[i].split(' ');
						points.push({x:pp[0],y:pp[1]});
					}
					
					edytujLinie(points);		
				}	
				if (g.indexOf('POLYGON')!=-1){
					var coor = g.substr(9,g.length-11).split(',');
					var points = new Array();
					for (var i=0;i<coor.length;i++){
						var pp = coor[i].split(' ');
						points.push({x:pp[0],y:pp[1]});
					}
					edytujPoligon(points);		
				}		
			
			
			});
		});
	}
}	

function upload(frame,formId,input,callback){
	ae(frame,'load',function(){		
		
		var content = frame.contentWindow.document.body.innerHTML;		
	
		if (content=='0'){
			alert("Nie udało się wgrać pliku");
		} else {
			input.filePath = content;
			callback();
		}	
	});
	document.getElementById(formId).submit();
}

function zatwierdz(){
	var nazwyPol = new Array();
	var typyPol = new Array();

	for (var i=0;i<polaEdycji.length;i++){
		var p = polaEdycji[i];
		nazwyPol.push(p.nazwa);
		typyPol.push(p.typ);
		if (((p.typ=='ta')||(p.typ=='t')||(p.typ=='i')||(p.typ=='f')||(p.typ=='d')||(p.typ=='file'))&&(p.wymagane==true)&&(p.kontrolka.value=='')){
			alert('Pole "'+p.naglowek+'" musi bya wypełnione.');
			return 0;
		}
		if ((p.kontrolka.value!='')&&(p.typ == 'i')&&(isInteger(p.kontrolka.value)==false)){
			alert('Nieprawidłowa wartość w polu "'+p.naglowek+'".');
			return 0;
		}
		if ((p.kontrolka.value!='')&&(p.typ == 'f')&&(isFloat(p.kontrolka.value)==false)){
			alert('Nieprawidłowa wartość w polu "'+p.naglowek+'".');
			return 0;
		}
		if ((p.kontrolka.value!='')&&(p.typ == 'd')&&(isDate(p.kontrolka.value)==false)){
			alert('Nieprawidłowa wartość w polu "'+p.naglowek+'" (np. 2009-11-24, 2009-09-04 12:00).');
			return 0;
		}		
	}

	if (overlay == null){
		alert('Brak geometrii obiektu');
		return 0;
	}
	if ((typGeometri==0) &&(overlay.coord.x==null)){
		alert('Brak geometrii obiektu');
		return 0;	
	}
	if ((typGeometri==1) &&(overlay.points.length<2)){
		alert('Brak geometrii obiektu');
		return 0;	
	}
	if ((typGeometri==2) &&(overlay.points.length<4)){
		alert('Brak geometrii obiektu');
		return 0;	
	}	
	if ((typGeometri==2) &&(overlay.points[0].x!=overlay.points[overlay.points.length-1].x)){
		alert('Nie zamkniety poligon');
		return 0;	
	}		
	
	/* sprawdzanie czy jest plik */
	var polaPlik = new Array();
	var liczbaPlikow = 0;
	for (var i=0;i<polaEdycji.length;i++){
		var p = polaEdycji[i];
		if (p.typ=='file'){
			if (p.kontrolka.value != ''){
				polaPlik.push(p);	
				liczbaPlikow++;	
			}
		}				
	}
	
	if (liczbaPlikow == 0) {
		zapiszDane(nazwyPol,typyPol);
	} else {
		for (var i=0;i<polaPlik.length;i++){
			var p = polaPlik[i];
			upload(p.frame,p.nazwa+'_form',p.kontrolka,function(){
				liczbaPlikow--;
				if (liczbaPlikow == 0) zapiszDane(nazwyPol,typyPol);
			
			});		
		}
	}	
}
function zapiszDane(nazwyPol,typyPol){
	if (rekordId == null) rekordId = 0;
	var parametry={post_tabela:tabela,id:rekordId,post_pola:nazwyPol.join(','),post_typy:typyPol.join(',')};
	var values = new Array();
	for (var i=0;i<polaEdycji.length;i++){
		var p = polaEdycji[i];
		if ((p.typ=='t')||(p.typ=='ta')||(p.typ=='d')){
			var value = p.kontrolka.value;
			values.push(value);			
		}
		if (p.typ=='file'){
			var value = '';		
			if (p.kontrolka.filePath) value = p.kontrolka.filePath;
			values.push(value);			
		}		
		if ((p.typ=='dir')||(p.typ=='i')||(p.typ=='f')){
			var value = p.kontrolka.value;
			values.push(value)			
		}		
		if (p.typ=='b'){
			values.push(boolToInt(p.kontrolka.checked));
		}		
	}
		
	parametry.post_values = values.join('<|>');
	parametry.post_geometria = overlay.asText();
	parametry.post_typ_geometri = typGeometri;
	parametry.sciezka = sciezkaWdr;

	BEngine.Ajax.post('skrypty/ajax/zapisz_rekord.php',parametry,function(obj){
		var obiekt =eval( "("+obj.responseText+")");
		if (obiekt.error == 0){
			//zaladujTabele(tabela,false);
			if (tryb=='tworzenie'){
				czyscPolaEdycji();
				if (typGeometri==0) nowyPunkt();
				if (typGeometri==1) nowaLinia();
				if (typGeometri==2) nowyPoligon();
				lastCreatedRecordId = obiekt.id;
				map.removeOverlays();
				nowy();
				map.refresh();
			}
			if (tryb=='edycja'){
				czyscPolaEdycji();
				map.removeOverlays();
				overlay = null;
				tryb = null;
				recordId = null;
				actionWindow.hide();
				actionWindowVisible = false;
				map.setTool('pointer');
				map.hideObjectAction();
				var parametry={sciezka:sciezkaWdr,token:token,id:0};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
					map.refresh();
				});				
			}
		} 
	});
}
	
function wczytajPolaEdycja(serwis,callback){	
	
	var div = actionWindow.getWorkspaceDiv();
	div.style.overflow = "auto";
	div.innerHTML = '';
	polaEdycji.length = 0;
	var parametry={serwis:serwis,sciezka:sciezkaWdr};
	BEngine.Ajax.post('skrypty/ajax/pola_edycja.php',parametry,function(obj){
		var obiekt =eval( "("+obj.responseText+")");
		if (obiekt.error == 0){
			typGeometri = parseInt(obiekt.typ_geometri);
		
			var pola = obiekt.pola;
			var table = document.createElement('table');
			div.appendChild(table);
			table.style.borderCollapse = 'collapse';
			table.style.width = '95%';
			table.style.padding = '0px';
			table.style.margin = '3px';
			var tbody = document.createElement('tbody');
			table.appendChild(tbody);
	
			for (var i =0;i<pola.length;i++){
				var tr = document.createElement('tr');			
				tbody.appendChild(tr);
				
				var td = document.createElement('td');
				tr.appendChild(td);		
				td.style.fontSize = '11px';
				td.style.textAlign = "left";
				td.style.width = "10px";
				td.style.padding = '3px 3px 4px 3px';
				var naglowek = pola[i].naglowek;
				naglowek = naglowek.replace(" ","&nbsp;");
				td.innerHTML = naglowek+':';
				
				var obiektPole = {nazwa:pola[i].nazwa,naglowek:pola[i].naglowek.replace('&nbsp;',' '),typ:pola[i].typ,wymagane:toBool(pola[i].wymagane)};
				polaEdycji.push(obiektPole);
				var nazwaPola = pola[i].nazwa;
				
				var td = document.createElement('td');
				tr.appendChild(td);		
				td.style.fontSize = '11px';
				td.style.textAlign = "left";
				
				td.align = 'left';
				td.style.padding = '3px 6px 4px 3px';
				var typ = pola[i].typ;	

				if (typ=='file'){

						var divForm = cd('position:relative;width:100%');
						td.appendChild(divForm);
						divForm.innerHTML  = '<iframe name="'+nazwaPola+'_frame" id="'+nazwaPola+'_frame"></iframe><form method="post" id="'+nazwaPola+'_form" name="'+nazwaPola+'_form" action="skrypty/files.php?rand='+Math.random()+'" target="'+nazwaPola+'_frame" enctype="multipart/form-data" style="margin:0px;padding:0px"><input size="19" type="file" name="'+nazwaPola+'_file" id="'+nazwaPola+'_file" style="font-size:11px"/><input type="hidden" name="MAX_FILE_SIZE" value="16000000"/><input type="hidden" name="action" value="uploadToTmp"/><input type="hidden" name="inputName" value="'+nazwaPola+'_file"/></form>';		
						
						
						var frame = document.getElementById(nazwaPola+'_frame');
						frame.style.display = "none";
						
						

						obiektPole.divForm = divForm;
						obiektPole.kontrolka = document.getElementById(nazwaPola+'_file');
						obiektPole.frame = frame;
					
				}				
				
				if ((typ=='t')||(typ=='i')||(typ=='f')||(typ=='d')){
					var input = document.createElement('input');					
					input.style.fontSize = '11px';
					input.style.width = '98%';
					td.appendChild(input);
					obiektPole.kontrolka = input;
				}
				if (typ=='b'){
					var input = document.createElement('input');					
					input.style.fontSize = '11px';
					input.type = 'checkbox'
					td.appendChild(input);
					obiektPole.kontrolka = input;
				}				
				if (typ=='ta'){
					var input = document.createElement('textarea');					
					input.style.fontSize = '11px';
					input.style.width = '98%';
					input.style.height = "60px";
					input.style.fontFamily = 'tahoma';
					td.appendChild(input);
					obiektPole.kontrolka = input;
				}				
				if (typ=='dir'){
					var select = document.createElement('select');					
					select.style.fontSize = '11px';
					td.appendChild(select);
					var sl = pola[i].slownik;
					for (var j=0;j<sl.length;j++){
						select.options[select.length] = new Option(sl[j].nazwa,sl[j].wartosc);
					}
					obiektPole.kontrolka = select;
				}				
			}
		
		
			
			var butDiv = document.createElement('div');
			butDiv.style.position = 'relative';
			butDiv.style.width = '100%';
			butDiv.style.height = '26px';
			
			div.appendChild(butDiv);
			
			var b1 = new BEngine.Controls.Button({x:5,y:2,width:70,height:24,text:'Zatwierdź'},butDiv);
			var b2 = new BEngine.Controls.Button({x:78,y:2,width:70,height:24,text:'Anuluj'},butDiv);
			b1.onclick = function(){
				zatwierdz();
			}
			b2.onclick = function(){
				anulujEdycje();

			}
			if (obiekt.serwis_geometria!=""){
				var b3 = new BEngine.Controls.Button({x:160,y:2,width:140,height:24,text:'Geometria z mapy'},butDiv);
				b3.onclick = function(){
					map.setTool('pointer');
					map.onclick = function(x,y){
						BEngine.Interface.LoadingPanel.show();
						BEngine.Ajax.post('skrypty/ajax/ajax_pobierz_plik.php',{file:"http://uslugi.igeomap.pl/dzialki/dzialki.php?srs=2180&x="+x+"&y="+y},function(obj){
							
							try{
							var obiekt =eval( "("+obj.responseText+")");
							if (obiekt.error=="0"){
								var points = new Array();
								for (var i=0;i<obiekt.geom.length;i+=2){
									points.push({x:obiekt.geom[i],y:obiekt.geom[i+1]});
								}
								edytujPoligon(points);	
								BEngine.Interface.LoadingPanel.hide();
							
							} else { alert('Nie znaleziono geometrii.'); }
							}catch(err){
								alert(err);
							}
							
						});
						
					}
				}
			}		
		}		
		
		if (callback) callback();	
	});	
}	
	
	
function dodajWMS(adres,layers){
	if (layers.length>0){
		var editItem = null	
		var list = new Array();
		list.push(new BEngine.Controls.MenuItem('Szukaj',true,function(item){ 
			pokazSzukaj(item);	
		}));
		if (zalog==true){
			editItem = new BEngine.Controls.MenuItem('Dodaj&nbsp;obiekt',true,function(item){ 
				tabela = item.name;
				rekordId = null;
				tryb = null;
				overlay = null;
				map.setTool('pointer');
	
				wczytajPolaEdycja(tabela,function(){
					nowy();
				});
	
			});
			list.push(editItem);
			

			list.push(new BEngine.Controls.MenuItem('Wykaz&nbsp;obiektów',true,function(item){ 
				wykaz.pokaz(item.name);
	
			}));

			
		}
		
		var menu = new BEngine.Controls.Menu({width:100},list,function(data){
			if (data.editable == true){
				if (editItem!=null) editItem.setEnable(true);
			} else {
				if (editItem!=null) editItem.setEnable(false);
			}
		});
		
		
		
		
		menu.setAutoHidding();
		map.setMenu(menu);
	
		var lay = new Array();
		for (var i=0;i<layers.length;i++){
			var layer = new BEngine.iGML.WMSLayer();
			layer.name = layers[i].nazwa;
			layer.title = layers[i].tytul;
			layer.checked = layers[i].widoczna;
			layer.visibleFrom = layers[i].visFrom;
			layer.visibleTo = layers[i].visTo;			
			layer.queryable = true;
			if (layers[i].icon) layer.icon = layers[i].icon;
			lay.push(layer);
			layer.menuEnabled = true;
			
			layer.editable = warstwaEdytowalna(layer.name);
			
			them_tab.push(layer);
		}
		var wms = new BEngine.iGML.WMSService({},lay);
		wms.name = 'Warstwy tematyczne';
		wms.id = 'warstwy';
		wms.url = adres+"?sciezka="+sciezkaWdr+"";
		wms.version = '1.1.1';
		wms.format = 'image/png';
		if (ikonkaWT!=''){
	
			wms.icon = ikonkaWT;
		}		
		wms.boundingBox = mainBBox;
		wms.expandable = true;	
		wms.thematicService = true;
		map.addService(wms,0);
		theSer = wms;
		//map.createLevels(); 
		//map.refresh();
		
		wmsRysuj = wms;
		urlRysuj = wms.url;
		isThematic = true;
	}	
}


function onClickRekord(tabela,id){
	rekordId = id;
	if (tryb!=null){
		edycja();
	}
}

function wypelnijTabele(){
	tableWykaz.show();
	tableWykaz.setHeaders(obiektWykaz.naglowki);
	tableWykaz.setData(obiektWykaz.data,null,function(){
		ladowanie_stan--;
		if (ladowanie_stan==0)BEngine.Interface.LoadingPanel.hide();
	});
	tableWykaz.setOnClick(function(id){ 
		if (mapPanel.visible==true){ 
			onClickRekord(tabela,id);
			for (var i=0;i<ids.length;i++){
				if (ids[i] == id){
					var b = boxes[i]; 
					 map.setViewFromBox(new BEngine.iGML.Box(b[0],b[1],b[2],b[3]));	
					recordId = id;
					var parametry={tabela:tabela,id:id,sciezka:sciezkaWdr,token:token};
						BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
						var obiekt =eval( "("+obj.responseText+")"); 
						if (obiekt.error == 0){
							showObjectAction(obiekt);
						}
					});
				}
			}	
		}	
	},obiektWykaz.ids,function(){
		ladowanie_stan--;	
        if (ladowanie_stan==0)BEngine.Interface.LoadingPanel.hide();		
	});
	tabelaZaladowana = true;
	BEngine.Interface.LoadingPanel.hide();
	
}
function zaladujTabele(){
	
	var parametry={tabela:tabela,sciezka:sciezkaWdr,page:page};
	if (where!='') { 
		parametry.where = where; 
		page=0; 
		warunekRysuj = tabela+':'+where;		
	} else {
		parametry.where = ''; 
		page=0; 
		warunekRysuj = '';			
	}
	
	map.refresh();
	tabelaZaladowana = false;
	
	BEngine.Interface.LoadingPanel.show();
	ladowanie_stan = 2;

	BEngine.Ajax.post('skrypty/ajax/tabela_z_wykaz.php',parametry,function(obj){
		BEngine.Interface.LoadingPanel.hide();
		try{
		var obiekt =eval( "("+obj.responseText+")");
		if (obiekt.error == 0){
			obiektWykaz = obiekt; 
			boxes = obiekt.boxes;
			ids = obiekt.ids;
			typGeometri = parseInt(obiekt.typ_geometri);
			if (tabPanel.visible==true)
			wypelnijTabele();
			
			
			pagesSelect.options.length = 0;
			var ile = Math.floor(obiekt.count/100.0)+1;			
			for (var i=0;i<ile;i++){
				pagesSelect.options[pagesSelect.options.length] = new Option(i+1,i);
			}
			if (ile>1)
			pagesPanel.show();
			else
			pagesPanel.hide();
			
			for (var i=0;i<pagesSelect.options.length;i++){
				if (pagesSelect.options[i].value == page) pagesSelect.selectedIndex = i;
			}
			pagesSelect.value = page;
			
			
			pagesSelect.onchange = function(){
				page = this.value;
				zaladujTabele();
			}
		
			
		} else {
			BEngine.Interface.LoadingPanel.hide();
		}	
		}catch(err){
			alert('Wystapil problem z aplikacja: '+err+'. Przeraszamy.');
		}
		
	});	
}




function wczytajSerwis(nazwa){
	tabela = nazwa;
	actionWindow.hide();
	actionWindowVisible	= false;	
	map.setTool('pointer');
	map.hideObjectAction();
	var parametry={sciezka:sciezkaWdr,token:token,id:0};
	BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
		map.refresh();
	});
	
	//map.removeOverlays();
	page = 0;
	where = '';
	warunekRysuj = '';
	wmsRysuj.url = urlRysuj;
	rekordId = null;
	tryb = null;
	overlay = null;
	map.setTool('pointer');
	rekordid = null;
	wczytajFiltry(tabela);
	wczytajPolaEdycja(tabela);
	zaladujTabele();
	map.refresh();

}
function wczytajSerwisDecyzje(){
	page = 0;
	map.setTool('pointer');
	rekordid = null;
	overlay = null;
	tryb = null;
	tabela = 'dec_decyzje';
	
}

function wyloguj(){
	window.location = 'index.php?logout';
}

function usun(){
	if ((rekordId==null)||(rekordId==0)) {
		alert('Wybierz obiekt do usunięcia');
		return 0;
	}
	if (confirm('Czy na pewno chcesz usunąć obiekt?')){
		map.removeOverlays();
		overlay = null;
		tryb = null;
		actionWindow.hide();
		actionWindowVisible = false;
		map.hideObjectAction();
	
		var parametry={post_tabela:tabela,id:rekordId,sciezka:sciezkaWdr,token:token};	
		BEngine.Ajax.post('skrypty/ajax/usun_rekord.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");
			if (obiekt.error == 0){
				//zaladujTabele(tabela,false);			
				map.refresh();
				map.setTool('pointer');
			} 
		})	
	}
}

function pokazWarstwy(){
	wybranyPanel = 1;
	bLayer.setCheck(true);
	//layinfo.show();
	treePanel.show();
	editPanel.hide();
	findPanel.hide();	
}
function pokazEdit(){
	wybranyPanel = 2;
	bEdit.setCheck(true);
	
	treePanel.hide();
	editPanel.show();
	findPanel.hide();
}
function pokazSzukaj(warstwa){
	wybranyPanel = 3;
	bSzukaj.setCheck(true);
	//
	//layinfo.hide();
	treePanel.hide();
	editPanel.hide();
	findPanel.show();
	if (warstwa){
		extPanSO.show();
		//warstwa.checked = true;
		warstwyCmb.selectItemByValue(warstwa.name);
		szuObBut.onclick();
	}
}

function administracja(){
	window.location = '/adm/';
}

function analiza0(){
	analizaDiv.innerHTML = '';
	var tab = new BEngine.Controls.TableFrame(2,4,analizaDiv);
	tab.table.style.width = '100%';
	tab.cell(0,0).innerHTML ='Warstwa&nbsp;analizowana:';
	tab.cell(0,1).innerHTML ='Warstwa&nbsp;przecinająca:';
	tab.cell(0,2).innerHTML ='Pole&nbsp;do&nbsp;wpisania&nbsp;wartości:';
	tab.cell(0,3).innerHTML ='Wartość:';	
	tab.cell(0,0).style.width = '100px';
	

	var lay1sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,0));
	var lay2sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,1));
	var lay3sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,2));
	
	var opt = lay1sel.addItem('','-');
	opt.nazwa = '';
	for (var i=0;i<warstwyInfo.length;i++){
		if (warstwyInfo[i].typ==0){
			var opt = lay1sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
			opt.nazwa = warstwyInfo[i].nazwa;
		}
	}	
	
	
	lay1sel.onchange = function(value){
		lay2sel.removeAll();

		for (var i=0;i<warstwyInfo.length;i++){
			if ((warstwyInfo[i].typ==0)&&(warstwyInfo[i].id!=value)){
				var opt = lay2sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
				opt.nazwa = warstwyInfo[i].nazwa;
			}
		}	

		var parametry={table:'tabele_kolumny',sort:'nazwa',sciezka:sciezkaWdr,where:' edycja=true AND tabela='+value};
		BEngine.Ajax.post('skrypty/ajax/pobierz_tabele.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");
			if (obiekt.error == 0){
				lay3sel.removeAll();
				var opt = lay3sel.addItem('','-');
				opt.dataType = '';
				for (var i=0;i<obiekt.data.length;i++){
					var opt = lay3sel.addItem(obiekt.data[i].nazwa,obiekt.data[i].nazwa);
					opt.dataType = obiekt.data[i].typ;
				}
			}
		});	
	}
	var valCtr = null;
	lay3sel.onchange = function(value){
		var typ = this.getItem().dataType;
		tab.cell(1,3).innerHTML = '';
		if ((typ==0)||(typ==1)||(typ==2)||(typ==3)||(typ==5)){
			valCtr = document.createElement('input');
			valCtr.style.fontSize = '11px';
			valCtr.style.width = '100%';
			tab.cell(1,3).appendChild(valCtr);
		}
		if (typ==4){
			valCtr = document.createElement('input');
			valCtr.style.fontSize = '11px';
			valCtr.type='checkbox';
			tab.cell(1,3).appendChild(valCtr);
		}	
		if (typ==6){
			valCtr = new BEngine.Controls.SimpleComboBox([],tab.cell(1,3));
			var parametry={tabela:lay1sel.getItem().nazwa,pole:value,sciezka:sciezkaWdr};
			BEngine.Ajax.post('skrypty/ajax/slownik_wartosci.php',parametry,function(obj){
				try{
				var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
					for (var i=0;i<obiekt.data.length;i++){
						valCtr.addItem(obiekt.data[i][0],obiekt.data[i][1]);
					}
				}
				}catch(err) {
					alert('Wystšpił błšd '+err);
				}
			});	
			
		}		
	}
	var ok  = new BEngine.Controls.SimpleButton('Przeprowadź',analizaDiv);
	ok.onclick = function(){
		var t1 = lay1sel.getItem().nazwa;
		if (t1==''){
			alert('Wybierz wartwę do analizy.');
			return 0;		
		}
		var t2 = lay2sel.getItem().nazwa;
		var p = lay3sel.getValue();
		if (p==''){
			alert('Wybierz pole do wpisania wartości.');
			return 0;
		}
		var t = lay3sel.getItem().dataType;
		var w = null;
		if ((t==0)||(t==1)||(t==2)||(t==3)||(t==5)){
			w = valCtr.value; 
		}
		if ((t==6)){
			w = valCtr.getValue(); 
		}		
		if (t==4){
			w = valCtr.checked; 
		}
		//validacja;
		if ((t==2)||(t==3)){
			//text, można nawet nic nie wpisywac 
		}
		if (t==0){
			if ((isInteger(w)==false)){
				alert('Wartośc nie jest liczba całkowitą.');
				return 0;
			}			
		}
		if (t==1){
			if ((isFloat(w)==false)){
				alert('Wartośc nie jest liczba rzeczywistą.');
				return 0;
			}			
		}		
		if (t==5){
			if ((isDate(w)==false)){
				alert('Wartośc nie jest datą.');
				return 0;
			}			
		}		
		BEngine.Interface.LoadingPanel.show();
		var parametry={analiza:0,tabela1:t1,tabela2:t2,typ:t,pole:p,wartosc:w,sciezka:sciezkaWdr};
		BEngine.Ajax.post('skrypty/ajax/analizy.php',parametry,function(obj){
			BEngine.Interface.LoadingPanel.hide();
			try{
			var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
				
				} else {
					alert('Wystąpił błąd');
				}
			}catch(err) {
				alert('Wystšpił błšd '+err);
			}
		});	
	}
}
function analiza2(){
	analizaDiv.innerHTML = '';
	var tab = new BEngine.Controls.TableFrame(2,5,analizaDiv);
	tab.table.style.width = '100%';
	tab.cell(0,0).innerHTML ='Warstwa&nbsp;analizowana:';
	tab.cell(0,1).innerHTML ='Warstwa&nbsp;przecinająca:';
	tab.cell(0,2).innerHTML ='Pole&nbsp;do&nbsp;wpisania&nbsp;wartości:';
	tab.cell(0,3).innerHTML ='Wartość:';	
	tab.cell(0,4).innerHTML ='Bufor:';	
	tab.cell(0,0).style.width = '100px';
	

	var lay1sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,0));
	var lay2sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,1));
	var lay3sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,2));
	
	var opt = lay1sel.addItem('','-');
	opt.nazwa = '';
	for (var i=0;i<warstwyInfo.length;i++){
		if (warstwyInfo[i].typ==0){
			var opt = lay1sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
			opt.nazwa = warstwyInfo[i].nazwa;
		}
	}	
	
	
	lay1sel.onchange = function(value){
		lay2sel.removeAll();

		for (var i=0;i<warstwyInfo.length;i++){
			if ((warstwyInfo[i].typ==0)&&(warstwyInfo[i].id!=value)){
				var opt = lay2sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
				opt.nazwa = warstwyInfo[i].nazwa;
			}
		}	

		var parametry={table:'tabele_kolumny',sort:'nazwa',sciezka:sciezkaWdr,where:' edycja=true AND tabela='+value};
		BEngine.Ajax.post('skrypty/ajax/pobierz_tabele.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");
			if (obiekt.error == 0){
				lay3sel.removeAll();
				var opt = lay3sel.addItem('','-');
				opt.dataType = '';
				for (var i=0;i<obiekt.data.length;i++){
					var opt = lay3sel.addItem(obiekt.data[i].nazwa,obiekt.data[i].nazwa);
					opt.dataType = obiekt.data[i].typ;
				}
			}
		});	
	}
	var valCtr = null;
	lay3sel.onchange = function(value){
		var typ = this.getItem().dataType;
		tab.cell(1,3).innerHTML = '';
		if ((typ==0)||(typ==1)||(typ==2)||(typ==3)||(typ==5)){
			valCtr = document.createElement('input');
			valCtr.style.fontSize = '11px';
			valCtr.style.width = '100%';
			tab.cell(1,3).appendChild(valCtr);
		}
		if (typ==4){
			valCtr = document.createElement('input');
			valCtr.style.fontSize = '11px';
			valCtr.type='checkbox';
			tab.cell(1,3).appendChild(valCtr);
		}	
		if (typ==6){
			valCtr = new BEngine.Controls.SimpleComboBox([],tab.cell(1,3));
			var parametry={tabela:lay1sel.getItem().nazwa,pole:value,sciezka:sciezkaWdr};
			BEngine.Ajax.post('skrypty/ajax/slownik_wartosci.php',parametry,function(obj){
				try{
				var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
					for (var i=0;i<obiekt.data.length;i++){
						valCtr.addItem(obiekt.data[i][0],obiekt.data[i][1]);
					}
				}
				}catch(err) {
					alert('Wystšpił błšd '+err);
				}
			});	
			
		}		
	}
	var bufCtr = document.createElement('input');
	bufCtr.style.fontSize = '11px';
	bufCtr.value = 0;
	tab.cell(1,4).appendChild(bufCtr);
	
	var ok  = new BEngine.Controls.SimpleButton('Przeprowadź',analizaDiv);
	ok.onclick = function(){
		var t1 = lay1sel.getItem().nazwa;
		if (t1==''){
			alert('Wybierz wartwę do analizy.');
			return 0;		
		}
		var t2 = lay2sel.getItem().nazwa;
		var p = lay3sel.getValue();
		if (p==''){
			alert('Wybierz pole do wpisania wartości.');
			return 0;
		}
		var t = lay3sel.getItem().dataType;
		var w = null;
		if ((t==0)||(t==1)||(t==2)||(t==3)||(t==5)){
			w = valCtr.value; 
		}
		if ((t==6)){
			w = valCtr.getValue(); 
		}
		if (t==4){
			w = valCtr.checked; 
		}
		//validacja;
		if ((t==2)||(t==3)){
			//text, można nawet nic nie wpisywac 
		}
		if (t==0){
			if ((isInteger(w)==false)){
				alert('Wartośc nie jest liczba całkowitą.');
				return 0;
			}			
		}
		if (t==1){
			if ((isFloat(w)==false)){
				alert('Wartośc nie jest liczba rzeczywistą.');
				return 0;
			}			
		}		
		if (t==5){
			if ((isDate(w)==false)){
				alert('Wartośc nie jest datą.');
				return 0;
			}			
		}		
		var b = bufCtr.value;
		if ((isFloat(b)==false)){
			alert('Wartośc w buforze nie jest liczba rzeczywistą.');
			return 0;
		}
			
		BEngine.Interface.LoadingPanel.show();
		var parametry={analiza:2,bufor:b,tabela1:t1,tabela2:t2,typ:t,pole:p,wartosc:w,sciezka:sciezkaWdr};
		BEngine.Ajax.post('skrypty/ajax/analizy.php',parametry,function(obj){
			BEngine.Interface.LoadingPanel.hide();
			try{
			var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
				
				} else {
					alert('Wystąpił błąd');
				}
			}catch(err) {
				alert('Wystšpił błšd '+err);
			}
		});	
	}
}
function analiza1(){
	analizaDiv.innerHTML = '';
	var tab = new BEngine.Controls.TableFrame(2,3,analizaDiv);
	tab.table.style.width = '100%';
	tab.cell(0,0).innerHTML ='Warstwa&nbsp;analizowana:';
	tab.cell(0,1).innerHTML ='Warstwa&nbsp;przecinająca:';
	tab.cell(0,2).innerHTML ='Pole&nbsp;do&nbsp;wpisania&nbsp;długości:';
	tab.cell(0,0).style.width = '100px';
	

	var lay1sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,0));
	var lay2sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,1));
	var lay3sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,2));
	
	var opt = lay1sel.addItem('','-');
	opt.nazwa = '';
	for (var i=0;i<warstwyInfo.length;i++){
		if ((warstwyInfo[i].typ==0)&&(warstwyInfo[i].typ_geometri==2)){
			var opt = lay1sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
			opt.nazwa = warstwyInfo[i].nazwa;
		}
	}	
	
	
	lay1sel.onchange = function(value){
		lay2sel.removeAll();

		for (var i=0;i<warstwyInfo.length;i++){
			if ((warstwyInfo[i].typ==0)&&(warstwyInfo[i].id!=value)&&(warstwyInfo[i].typ_geometri==1)){
				var opt = lay2sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
				opt.nazwa = warstwyInfo[i].nazwa;
			}
		}	

		var parametry={table:'tabele_kolumny',sort:'nazwa',sciezka:sciezkaWdr,where:' edycja=true AND tabela='+value};
		BEngine.Ajax.post('skrypty/ajax/pobierz_tabele.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");
			if (obiekt.error == 0){
				lay3sel.removeAll();
				var opt = lay3sel.addItem('','-');
				opt.dataType = '';
				for (var i=0;i<obiekt.data.length;i++){
					if (obiekt.data[i].typ==1){
						var opt = lay3sel.addItem(obiekt.data[i].nazwa,obiekt.data[i].nazwa);
						opt.dataType = obiekt.data[i].typ;
					}
				}
			}
		});	
	}
	var ok  = new BEngine.Controls.SimpleButton('Przeprowadź',analizaDiv);
	ok.onclick = function(){
		var t1 = lay1sel.getItem().nazwa;
		if (t1==''){
			alert('Wybierz wartwę do analizy.');
			return 0;		
		}
		var t2 = lay2sel.getItem().nazwa;
		if (t2==''){
			alert('Wybierz wartwę do pzrecięcia.');
			return 0;		
		}		
		
		var p = lay3sel.getValue();
		if (p==''){
			alert('Wybierz pole do wpisania długoci (typ danych liczba rzeczywista).');
			return 0;
		}
		
		BEngine.Interface.LoadingPanel.show();
		var parametry={analiza:1,tabela1:t1,tabela2:t2,pole:p,sciezka:sciezkaWdr};
		BEngine.Ajax.post('skrypty/ajax/analizy.php',parametry,function(obj){
			BEngine.Interface.LoadingPanel.hide();
			try{
			var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
				
				} else {
					alert('Wystąpił błąd');
				}
			}catch(err) {
				alert('Wystšpił błšd '+err);
			}
		});	
	}
}
function analiza3(){
	analizaDiv.innerHTML = '';
	var tab = new BEngine.Controls.TableFrame(2,3,analizaDiv);
	tab.table.style.width = '100%';
	tab.cell(0,0).innerHTML ='Warstwa:';
	tab.cell(0,1).innerHTML ='Pole&nbsp;do&nbsp;wpisania&nbsp;wartości:';
	tab.cell(0,2).innerHTML ='Wartość:';	
	tab.cell(0,0).style.width = '100px';
	

	var lay1sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,0));
	var lay3sel = new BEngine.Controls.SimpleComboBox([],tab.cell(1,1));
	
	var opt = lay1sel.addItem('','-');
	opt.nazwa = '';
	for (var i=0;i<warstwyInfo.length;i++){
		if (warstwyInfo[i].typ==0){
			var opt = lay1sel.addItem(warstwyInfo[i].id,warstwyInfo[i].opis);
			opt.nazwa = warstwyInfo[i].nazwa;
		}
	}	
	
	
	lay1sel.onchange = function(value){

		var parametry={table:'tabele_kolumny',sort:'nazwa',sciezka:sciezkaWdr,where:' edycja=true AND tabela='+value};
		BEngine.Ajax.post('skrypty/ajax/pobierz_tabele.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");
			if (obiekt.error == 0){
				lay3sel.removeAll();
				var opt = lay3sel.addItem('','-');
				opt.dataType = '';
				for (var i=0;i<obiekt.data.length;i++){
					var opt = lay3sel.addItem(obiekt.data[i].nazwa,obiekt.data[i].nazwa);
					opt.dataType = obiekt.data[i].typ;
				}
			}
		});	
	}
	var valCtr = null;
	lay3sel.onchange = function(value){
		var typ = this.getItem().dataType;
		tab.cell(1,2).innerHTML = '';
		if ((typ==0)||(typ==1)||(typ==2)||(typ==3)||(typ==5)){
			valCtr = document.createElement('input');
			valCtr.style.fontSize = '11px';
			valCtr.style.width = '100%';
			tab.cell(1,2).appendChild(valCtr);
		}
		if (typ==4){
			valCtr = document.createElement('input');
			valCtr.style.fontSize = '11px';
			valCtr.type='checkbox';
			tab.cell(1,2).appendChild(valCtr);
		}	
		if (typ==6){
			valCtr = new BEngine.Controls.SimpleComboBox([],tab.cell(1,2));
			var parametry={tabela:lay1sel.getItem().nazwa,pole:value,sciezka:sciezkaWdr};
			BEngine.Ajax.post('skrypty/ajax/slownik_wartosci.php',parametry,function(obj){
				try{
				var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
					for (var i=0;i<obiekt.data.length;i++){
						valCtr.addItem(obiekt.data[i][0],obiekt.data[i][1]);
					}
				}
				}catch(err) {
					alert('Wystšpił błšd '+err);
				}
			});	
			
		}		
	}
	var ok  = new BEngine.Controls.SimpleButton('Przeprowadź',analizaDiv);
	ok.onclick = function(){
		var t1 = lay1sel.getItem().nazwa;
		if (t1==''){
			alert('Wybierz wartwę do analizy.');
			return 0;		
		}
		
		var p = lay3sel.getValue();
		if (p==''){
			alert('Wybierz pole do wpisania wartości.');
			return 0;
		}
		var t = lay3sel.getItem().dataType;
		var w = null;
		if ((t==0)||(t==1)||(t==2)||(t==3)||(t==5)){
			w = valCtr.value; 
		}
		if ((t==6)){
			w = valCtr.getValue(); 
		}		
		if (t==4){
			w = valCtr.checked; 
		}
		//validacja;
		if ((t==2)||(t==3)){
			//text, można nawet nic nie wpisywac 
		}
		if (t==0){
			if ((isInteger(w)==false)){
				alert('Wartośc nie jest liczba całkowitą.');
				return 0;
			}			
		}
		if (t==1){
			if ((isFloat(w)==false)){
				alert('Wartośc nie jest liczba rzeczywistą.');
				return 0;
			}			
		}		
		if (t==5){
			if ((isDate(w)==false)){
				alert('Wartośc nie jest datą.');
				return 0;
			}			
		}		
		if (confirm('Czy jesteś pewien? Spowoduje to nadpianie wartości wybranego pola we wszystkich rekordach w tabeli.')){
			BEngine.Interface.LoadingPanel.show();
			var parametry={analiza:3,tabela1:t1,typ:t,pole:p,wartosc:w,sciezka:sciezkaWdr};
			BEngine.Ajax.post('skrypty/ajax/analizy.php',parametry,function(obj){
				BEngine.Interface.LoadingPanel.hide();
				try{
				var obiekt =eval( "("+obj.responseText+")");
					if (obiekt.error == 0){
					
					} else {
						alert('Wystąpił błąd');
					}
				}catch(err) {
					alert('Wystšpił błšd '+err);
				}
			});	
		}
	}
}

function tworzModulGeoPlan(){
	plnDiv = document.createElement('div');
	plnDiv.style.position = 'relative';
	plnDiv.style.border = '1px solid #999';
	plnDiv.style.padding = "5px 8px";
	plnDiv.style.height = "48px";
	plnDiv.style.marginTop = "5px";
	plnDiv.style.backgroundColor = '#ddd';
	editPanel.getWorkspaceDiv().appendChild(plnDiv);
	
	var label = document.createElement('div');
	label.innerHTML = '<b>iGeoPlan</b>';
	plnDiv.appendChild(label);
	
	plan.wypisButton = new BEngine.Controls.Button({x:5,y:28,width:100,height:24,text:'Twórz wypis'},plnDiv);
	plan.rejestrButton = new BEngine.Controls.Button({x:108,y:28,width:70,height:24,text:'Rejestr'},plnDiv);	
	
	plan.wypisButton.onclick = function(){
		plan.tworzWypis();
	}
	plan.rejestrButton.onclick = function(){
		plan.oknoWykaz.show();
		plan.oswiezTabele(0);
	}
	
	if (!plan.oknoWypis){
		/*przygotowanie kontrolek */
		plan.controls = new Array();
		
		plan.oknoWypis = new BEngine.Controls.Window({text:'Wypis z MPZP',startPosition:'CENTER',isMaximizeButton:false,width:360,height:376,sendOnTop:true});
		var div = plan.oknoWypis.getWorkspaceDiv();
		div.style.paddingTop = "5px";
		var styl = ';font-family:arial;font-size:12px';
		
		var tabElm = ct(7,2);
		div.appendChild(tabElm[0]);
		setColumnStyle(tabElm,0,'padding:2px 6px');
		setColumnStyle(tabElm,1,'padding:2px 6px');
		var cells = tabElm[2];
		
		cells[0][0].innerHTML = 'Sygnatura:';
		plan.controls['oznaczenie_dokumentu'] = ctb('','width:160px'+styl);
		cells[0][1].appendChild(plan.controls['oznaczenie_dokumentu']);

		cells[1][0].innerHTML = 'Data&nbsp;wydania:';
		plan.controls['data_wydania'] = ctb('','width:90px'+styl);
		cells[1][1].appendChild(plan.controls['data_wydania']);		
		
		cells[2][0].innerHTML = 'Właściciel:';
		plan.controls['wlasciciel'] = cta('','width:220px;height:70px'+styl);
		cells[2][1].appendChild(plan.controls['wlasciciel']);
		
		cells[3][0].innerHTML = 'Miejscowość:';
		plan.controls['miejscowosc_id'] = csl([],styl);
		cells[3][1].appendChild(plan.controls['miejscowosc_id']);			
		
		var dodajAktywnaDzialke = cd('mediumBlueLink','Dodaj&nbsp;aktywną');
		cells[4][1].appendChild(dodajAktywnaDzialke);		
				
		cells[5][0].innerHTML = 'Działki:';
		var dzialkiDiv = cd('border:1px solid #999;width:218px;height:70px;overflow:auto;padding:3px;background-color:#fff');		
		cells[5][1].appendChild(dzialkiDiv);		
		dzialkiDiv.innerHTML = '';
		plan.dzialkiDiv = dzialkiDiv;
		plan.controls['dzialki'] = new Array();
		
		cells[6][0].innerHTML = 'Skala&nbsp;wydruku:';
		plan.controls['skala'] = csl([{value:"",text:"z planu"},{value:"500",text:"1:500"},{value:"1000",text:"1:1000"},{value:"2000",text:"1:2000"},{value:"5000",text:"1:5000"},{value:"10000",text:"1:10000"}],styl);
		cells[6][1].appendChild(plan.controls['skala']);			
		
		var okButton = new BEngine.Controls.Button({x:5,y:314,width:60,height:24,text:'OK'},div);
		var anulujButton = new BEngine.Controls.Button({x:68,y:314,width:60,height:24,text:'Anuluj'},div);	
		plan.infoDiv = cad(140,317,null,null,150,18);
		div.appendChild(plan.infoDiv);
	
		/** wgrywanie listy miejscowosci i daty*/
		var parametry={param:"init",sciezka:sciezkaWdr};	
		BEngine.Ajax.post('skrypty/ajax/ajax_plan.php',parametry,function(obj){
			try {
				var o =eval( "("+obj.responseText+")");						
				setSelectOptions(plan.controls['miejscowosc_id'],o.miejscowosci);
				plan.controls['data_wydania'].value = o.data;				
			} catch(err){
				alert(err);
			} 
		});	
		
		plan.oknoWypis.hide();
		/* ************************ */
		
		
		/*funkcje*/
		plan.tworzWypis = function(){
			plan.czyscFormularz();
			plan.oknoWypis.show();			
		}
		plan.odswiezListeDzialek = function(){
			plan.dzialkiDiv.innerHTML = '';
			var list = plan.controls['dzialki'];
			for (var i=0;i<list.length;i++){
				var color = '#000';
				if (list[i].geometria == "") color = 'rgb(180,0,0)';
				var div = cd('padding:2px 0px 2px 0px;position:relative;color:'+color,list[i].obrebNazwa+', '+list[i].numer);
				plan.dzialkiDiv.appendChild(div);
				
				var deleteDiv = cad(null,2,0,null,16,16,'color:#f00;cursor:pointer;position:absolute;text-align:center','X');
				deleteDiv.itemIndex = i;				
				div.appendChild(deleteDiv);
				deleteDiv.onclick = function(){
					plan.controls['dzialki'].remove(this.itemIndex);
					plan.odswiezListeDzialek();
				}
			}
			if (list.length==0){
				plan.dzialkiDiv.innerHTML = 'brak';
			} 
		}
		plan.czyscFormularz = function(){
			plan.controls['oznaczenie_dokumentu'].value = '';
			plan.controls['wlasciciel'].value = '';			
			plan.controls['dzialki'].length = 0;
			plan.odswiezListeDzialek();
		}
		
		/* akcje */
		plan.oknoWypis.onclose = function(){
			plan.oknoWypis.hide();
			return false;
		}	
		dodajAktywnaDzialke.onclick = function(){
			if (obiektAktywny.identyfikator == "dzialki"){
				var tmp = obiektAktywny.data.split(";");
				plan.controls['dzialki'].push({obrebNazwa:tmp[2],obrebTeryt:tmp[0],numer:tmp[1],geometria:tmp[3]});	
				plan.odswiezListeDzialek();	
			}
		}	
		anulujButton.onclick = function(){
			plan.oknoWypis.hide();
		}
		okButton.onclick = function(){
			if (plan.controls['oznaczenie_dokumentu'].value==''){
				alert('Wpisz sygnaturę dokumentu');
				return 0;
			}	
			if (plan.controls['data_wydania'].value==''){
				alert('Określ datę wydania');
				return 0;
			}	
			if (isDate(plan.controls['data_wydania'].value)==false){
				alert('Data wydania ma nieprawidłowy format (YYYY-MM-DD)');
				return 0;
			}
			var parametry={param:"tworzWypis",sciezka:sciezkaWdr,token:token};	
			parametry.oznaczenie_dokumentu = plan.controls['oznaczenie_dokumentu'].value;
			parametry.data_wydania = plan.controls['data_wydania'].value;
			parametry.wlasciciel = plan.controls['wlasciciel'].value;
			parametry.miejscowosc_id = plan.controls['miejscowosc_id'].value;
			parametry.skala = plan.controls['skala'].value;
			if (plan.controls['dzialki'].length == 0){
				alert("Wybierz przynajmniej jedną działkę");
				return 0;
			}
			var tmp = new Array();
			var list = plan.controls['dzialki'];
			for (var i=0;i<list.length;i++){
				tmp.push(list[i].obrebNazwa+';'+list[i].obrebTeryt+';'+list[i].numer+';'+list[i].geometria);				
			}			
			parametry.dzialki = tmp.join("|");
			plan.infoDiv.innerHTML = 'generowanie...';
			BEngine.Ajax.post('skrypty/ajax/ajax_plan.php',parametry,function(obj){
				plan.infoDiv.innerHTML = '';
				try {
					var o =eval( "("+obj.responseText+")");				
					if (o.error){
						alert(o.error);
					} else {
								
						window.open('http://e-mapa.net/'+sciezkaWdr+'plan/wypisy/'+o.plik);
						plan.oknoWypis.hide();
					}
				} catch(err){
					alert(err);
				} 
			});				
			
		
		}
		
	}
	/* okno wykazu*/	
	if (!plan.oknoWykaz){
		plan.oswiezTabele = function(page){
			plan.table.startLoading();
			var data_wydania_od = plan.filtrOdInput.value;
			var data_wydania_do = plan.filtrDoInput.value;	
			var miejscowosc_id = plan.filtrMiejscowscSelect.value; 				
			var szukaj = plan.filtrSzukajInput.value; 	
			
			plan.filtry['data_wydania_od'] = data_wydania_od;
			plan.filtry['data_wydania_do'] = data_wydania_do;
			plan.filtry['miejscowosc_id'] = miejscowosc_id;				
			plan.filtry['szukaj'] = szukaj;
			
			var wys = 0;
			if (plan.filtrWyswietlajInput.checked == true) wys=1;
			
			var parametry={param:"pobierzRejestr",token:token,sciezka:sciezkaWdr,page:page,numOnPage:50,data_wydania_od:data_wydania_od,data_wydania_do:data_wydania_do,miejscowosc_id:miejscowosc_id,szukaj:szukaj,wyswietlaj:wys};	
			BEngine.Ajax.post('skrypty/ajax/ajax_plan.php',parametry,function(obj){
				plan.table.endLoading();
				try {
					var o =eval( "("+obj.responseText+")");						
					plan.table.setHeaders(o.headers,true);	
					plan.table.setData(o.numAll,50,page,o.data,o.ids);
					plan.table.primaryKeys = o.pk;
					map.refresh(true,'aktywne_obiekty');
				} catch(err){
					alert(err);
				} 

				
			});			
			
		}
		
		plan.oknoWykaz = new BEngine.Controls.Window({text:'Rejestr wydanych wypisów',startPosition:'CENTER',width:760,height:350,sendOnTop:true});
		/*filtry*/
		plan.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,5,null,null,130,16,'','Data wydania:'));
		plan.filtrOdInput = ctb('','position:absolute;width:63px;top:24px;left:5px;font-size:11px');
		plan.oknoWykaz.getWorkspaceDiv().appendChild(plan.filtrOdInput);

		plan.oknoWykaz.getWorkspaceDiv().appendChild(cad(80,25,null,null,30,16,'','-'));
		plan.filtrDoInput = ctb('','position:absolute;width:63px;top:24px;left:95px;font-size:11px');
		plan.oknoWykaz.getWorkspaceDiv().appendChild(plan.filtrDoInput);		
		
		plan.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,48,null,null,70,16,'','Miejscowość:'));
		plan.filtrMiejscowscSelect = csl([],'position:absolute;width:160px;top:68px;left:5px;font-size:11px');
		plan.oknoWykaz.getWorkspaceDiv().appendChild(plan.filtrMiejscowscSelect);			
		
		plan.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,89,null,null,70,16,'','Szukaj:'));
		plan.filtrSzukajInput = ctb('','position:absolute;width:157px;top:109px;left:5px;font-size:11px');
		plan.oknoWykaz.getWorkspaceDiv().appendChild(plan.filtrSzukajInput);			
		
		plan.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,133,null,null,150,16,'','Wyświetl&nbsp;na&nbsp;mapie:'));
		plan.filtrWyswietlajInput = ccb('position:absolute;top:135px;left:127px');
		plan.oknoWykaz.getWorkspaceDiv().appendChild(plan.filtrWyswietlajInput);		
		
		plan.filtrujButton = new BEngine.Controls.Button({x:5,y:160,height:22,text:'Filtruj',width:60,aLeft:true,aRight:false,aTop:true},plan.oknoWykaz.getWorkspaceDiv());
		plan.czyscButton = new BEngine.Controls.Button({x:70,y:160,height:22,text:'Czyść',width:60,aLeft:true,aRight:false,aTop:true},plan.oknoWykaz.getWorkspaceDiv());		
		
		plan.wydrukButton = new BEngine.Controls.Button({x:5,y:186,height:22,text:'Wydruk',width:60,aLeft:true,aRight:false,aTop:true},plan.oknoWykaz.getWorkspaceDiv());
		plan.wydrukInfo = cad(74,188,null,null,100,20);
		plan.oknoWykaz.getWorkspaceDiv().appendChild(plan.wydrukInfo);		
		
		
		/* wczytywanie miejscowsci */
		var parametry={param:"pobierzMiejscowosci",sciezka:sciezkaWdr};	
		BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");;
			setSelectOptions(plan.filtrMiejscowscSelect,obiekt.miejscowosci);		
		});
		
		plan.oknoWykaz.hide();
		plan.oknoWykaz.onclose = function(){
			plan.oknoWykaz.hide();
			return false;
		}	
		var wykazDiv = cad(180,0,0,0,null,null,'border-left:1px solid #999;font-family:arial;font-size:10px');
		plan.oknoWykaz.getWorkspaceDiv().appendChild(wykazDiv);
		
		plan.table = new BEngine.Controls.NewTable(wykazDiv,{id:''});
		plan.page = 0;
		plan.filtry = new Array();
		plan.filtry['data_wydania_od'] = '';
		plan.filtry['data_wydania_do'] = '';
		plan.filtry['miejscowosc_id'] = '';		
		plan.filtry['szukaj'] = '';		
		plan.table.setChangePageFunction(plan.oswiezTabele);
		
		plan.table.addEvent('click',function(data){
			var b = data.box;
			var id = data.id;
			map.setViewFromBox(new BEngine.iGML.Box(b[0],b[1],b[2],b[3]));	
			recordId = id;
			tabela="pln_wypis";
			var parametry={tabela:tabela,id:id,sciezka:sciezkaWdr,token:token};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
				var obiekt =eval( "("+obj.responseText+")"); 
				if (obiekt.error == 0){
					/*showObjectAction(obiekt);*/
				}
			});
					
		});
		plan.filtrujButton.onclick = function(){
			var data_wydania_od = plan.filtrOdInput.value;
			var data_wydania_do = plan.filtrDoInput.value;	
			var miejscowosc_id = plan.filtrMiejscowscSelect.value; 	
			
			if (data_wydania_od!=""){
				if (isDate(data_wydania_od)==false){
					alert('Wartość w polu data wydania (od) ma nieprawidłowy format (YYYY-MM-DD)');
					return 0;
				}				
			}
			if (data_wydania_do!=""){
				if (isDate(data_wydania_do)==false){
					alert('Wartość w polu data wydania (do) ma nieprawidłowy format (YYYY-MM-DD)');
					return 0;
				}				
			}
				
			plan.oswiezTabele(0);
		
		}
		plan.wydrukButton.onclick = function(){
			plan.wydrukInfo.innerHTML = 'generowanie...';
			
			var parametry={param:"wydruk",sciezka:sciezkaWdr,data_wydania_od:plan.filtry['data_wydania_od'],data_wydania_do:plan.filtry['data_wydania_do'],miejscowosc_id:plan.filtry['miejscowosc_id'],szukaj:plan.filtry['szukaj']};	
			BEngine.Ajax.post('skrypty/ajax/ajax_plan.php',parametry,function(obj){
				try {
					var o =eval( "("+obj.responseText+")");						
					plan.wydrukInfo.innerHTML = '<a href="http://e-mapa.net/'+o.plik+'" target="blank">pobierz</a>';
					
				} catch(err){
					alert(err);
				} 
			});		
		}
		plan.czyscButton.onclick = function(){
			plan.filtrOdInput.value = '';
			plan.filtrDoInput.value = '';	
			plan.filtrMiejscowscSelect.value = ''; 				
			plan.filtrSzukajInput.value = '';
			plan.filtrWyswietlajInput.checked = false;
			plan.oswiezTabele(0);
	
		}
	}	
}
function tworzModulDecyzji(){
	decDiv = document.createElement('div');
	decDiv.style.position = 'relative';
	decDiv.style.border = '1px solid #999';
	decDiv.style.padding = "5px 8px";
	decDiv.style.height = "48px";
	decDiv.style.marginTop = "5px";
	decDiv.style.backgroundColor = '#ddd';
	editPanel.getWorkspaceDiv().appendChild(decDiv);
	
	var label = document.createElement('div');
	label.innerHTML = '<b>Decyzje o warunkach zabudowy</b>';
	decDiv.appendChild(label);
	

	var dodajButton = new BEngine.Controls.Button({x:5,y:28,width:100,height:24,text:'Dodaj nową'},decDiv);
	var rejestrButton = new BEngine.Controls.Button({x:108,y:28,width:70,height:24,text:'Rejestr'},decDiv);	
	
	
	dodajButton.onclick = function(){
		tworzEdytujDecyzje(0);	
	}
	rejestrButton.onclick = function(){
		decyzje.oknoWykaz.show();
		decyzje.oswiezTabele(0);
	}
	
	/*przygotowanie okna i formularza*/
	if (!decyzje.okno){
		var styl = ';font-family:arial;font-size:12px';
		decyzje.okno = new BEngine.Controls.Window({text:'Decyzja',isMaximizeButton:false,borderStyle:'FIXED',startPosition:'CENTER',width:364,height:400,sendOnTop:true});
		
		var controlsDiv = cad(0,0,0,30,null,null);
		controlsDiv.style.borderBottom = '1px solid #aaa';
		controlsDiv.style.overflow = "auto";
		decyzje.okno.getWorkspaceDiv().appendChild(controlsDiv);
		
		var tabElm = ct(14,2);
		controlsDiv.appendChild(tabElm[0]);
		setColumnStyle(tabElm,0,'padding:2px 3px');
		setColumnStyle(tabElm,1,'padding:2px 3px');
		var cells = tabElm[2];
		
		cells[0][0].innerHTML = 'Numer&nbsp;decyzji:';
		decyzje.controls['numer_decyzji'] = ctb('','width:160px'+styl);
		cells[0][1].appendChild(decyzje.controls['numer_decyzji']);

		cells[1][0].innerHTML = 'Rodzaj&nbsp;decyzji:';
		decyzje.controls['rodzaj_decyzji_id'] = csl([],styl);
		cells[1][1].appendChild(decyzje.controls['rodzaj_decyzji_id']);		
		
		cells[2][0].innerHTML = 'Data&nbsp;wydania:';
		decyzje.controls['data_wydania'] = ctb('','width:90px'+styl);
		cells[2][1].appendChild(decyzje.controls['data_wydania']);
		

		
		cells[3][0].innerHTML = 'Rodzaj&nbsp;inwestycji:';
		decyzje.controls['rodzaj_inwestycji'] = cta('','width:200px;height:50px'+styl);
		cells[3][1].appendChild(decyzje.controls['rodzaj_inwestycji']);		

		cells[4][0].innerHTML = 'Wnioskodawca:';
		decyzje.controls['wnioskodawca'] = cta('','width:200px;height:50px'+styl);
		cells[4][1].appendChild(decyzje.controls['wnioskodawca']);	
		
		cells[5][0].innerHTML = 'Miejscowość:';
		decyzje.controls['miejscowosc_id'] = csl([],styl);
		cells[5][1].appendChild(decyzje.controls['miejscowosc_id']);	

		cells[6][0].innerHTML = 'Adres:';
		decyzje.controls['adres'] = cta('','width:200px;height:36px'+styl);
		cells[6][1].appendChild(decyzje.controls['adres']);		

		cells[7][0].innerHTML = 'Ustalenia:';
		decyzje.controls['ustalenia'] = cta('','width:200px;height:50px'+styl);
		cells[7][1].appendChild(decyzje.controls['ustalenia']);	

		cells[8][0].innerHTML = 'Zmiany:';
		decyzje.controls['zmiana'] = cta('','width:200px;height:50px'+styl);
		cells[8][1].appendChild(decyzje.controls['zmiana']);			

		cells[9][0].innerHTML = 'Plik:';
		decyzje.controls['plik'] = ""; 
		var t = '<iframe name="uploadDecyzjeFrame" id="uploadDecyzjeFrame" style="display:none"></iframe><form method="post" id="decyzjaUploadForm" action="skrypty/ajax/upload_decyzja.php" target="uploadDecyzjeFrame" ';
		t+='enctype="multipart/form-data" style="margin:0px;padding:0px"><input type="hidden" name="MAX_FILE_SIZE" value="900000"/>';
		t+='<input id="myFileDec" name="myFileDec" size="17" type="file" style="'+styl+'" onchange="decyzje.wgrajDecyzje()"/><input name="sciezka" type="hidden" value="'+sciezkaWdr+'"/></form>';
		cells[9][1].innerHTML = t;
		
		
		var dodajAktywnaDzialke = cd('mediumBlueLink','Dodaj&nbsp;aktywną');
		cells[10][1].appendChild(dodajAktywnaDzialke);		
				

		cells[11][0].innerHTML = 'Działki:';
		var dzialkiDiv = cd('border:1px solid #999;padding:3px;background-color:#fff');		
		cells[11][1].appendChild(dzialkiDiv);		
		dzialkiDiv.innerHTML = '1<br/>2';
		decyzje.dzialkiDiv = dzialkiDiv;
		decyzje.controls['dzialki'] = new Array();
		
		decyzje.obrebSelect = csl([],'font-size:11px;width:110px');
		cells[12][1].appendChild(decyzje.obrebSelect);
		decyzje.numerInput = ctb('','width:45px;font-size:11px');
		cells[12][1].appendChild(decyzje.numerInput);
		decyzje.dodajDzialke = cs('&nbsp;Dodaj','mediumBlueLink');
		cells[12][1].appendChild(decyzje.dodajDzialke);		
		

		cells[13][0].innerHTML = 'Uwagi:';
		decyzje.controls['uwagi'] = cta('','width:200px;height:50px'+styl);
		cells[13][1].appendChild(decyzje.controls['uwagi']);
		
		
		var buttonsDiv = cad(0,null,0,0,null,30);
		decyzje.okno.getWorkspaceDiv().appendChild(buttonsDiv);
		
		var b1 = new BEngine.Controls.Button({x:5,y:3,width:70,height:24,text:'Zatwierdź'},buttonsDiv);
		var b2 = new BEngine.Controls.Button({x:78,y:3,width:70,height:24,text:'Anuluj'},buttonsDiv);
		
		decyzje.okno.hide();
		
		b2.onclick = function(){
			decyzje.okno.hide();
		}
		dodajAktywnaDzialke.onclick = function(){
			if (obiektAktywny.identyfikator == "dzialki"){
				var tmp = obiektAktywny.data.split(";");
				decyzje.controls['dzialki'].push({obrebNazwa:tmp[2],obrebTeryt:tmp[0],numer:tmp[1],geometria:tmp[3]});	
				decyzje.odswiezListeDzialek();	
			}
		}
		decyzje.dodajDzialke.onclick = function(){
			if (decyzje.dodajDzialke.disabled == true) return 0;
			var obreb = decyzje.obrebSelect.value;
			var obrebNazwa = decyzje.obrebSelect.options[decyzje.obrebSelect.selectedIndex].text;
			var numer = decyzje.numerInput.value;
			if (numer!=""){
				decyzje.obrebSelect.disabled = true;
				decyzje.numerInput.disabled = true;
				decyzje.dodajDzialke.disabled = true;
				var parametry={param:"pobierzDzialke",obreb:obreb,numer:numer,sciezka:sciezkaWdr,token:token};				
				BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
					decyzje.obrebSelect.disabled = false;
					decyzje.numerInput.disabled = false;
					decyzje.dodajDzialke.disabled = false;
				
					var obiekt =eval( "("+obj.responseText+")");;
					if (obiekt.error){
						alert(obiekt.error);
					} else {
						decyzje.controls['dzialki'].push({obrebNazwa:obrebNazwa,obrebTeryt:obreb,numer:numer,geometria:obiekt.geom});	
						decyzje.odswiezListeDzialek();	
					}
				});			
			
			}
		}		
		decyzje.wgrajDecyzje = function(){
			var input = document.getElementById('myFileDec');
			
			var form = document.getElementById('decyzjaUploadForm'); 
			var frame = document.getElementById('uploadDecyzjeFrame');
			frame.onload = function(){
				var content = this.contentWindow.document.body.innerHTML;
				decyzje.controls['plik'] = content;
				input.disabled = false;
			}
			form.submit();
			input.disabled = true;
		}
		decyzje.czyscFormularz = function(zostawNumer){

			decyzje.controls['dzialki'] = new Array();
			document.getElementById('myFileDec').value = '';	
			decyzje.controls['plik'] = ""; 	
			decyzje.odswiezListeDzialek();	
			if ((zostawNumer)&&(zostawNumer==true)){} else
			decyzje.controls['numer_decyzji'].value = '';
			decyzje.controls['rodzaj_decyzji_id'].value = '';
			decyzje.controls['data_wydania'].value = '';
			decyzje.controls['rodzaj_inwestycji'].value = '';
			decyzje.controls['wnioskodawca'].value = '';
			decyzje.controls['miejscowosc_id'].value = '';
			decyzje.controls['adres'].value = '';
			decyzje.controls['ustalenia'].value = '';
			decyzje.controls['zmiana'].value = '';			
			decyzje.controls['uwagi'].value = '';		
			decyzje.controls['plik'] = '';
			
		}
		decyzje.odswiezListeDzialek = function(){
			decyzje.dzialkiDiv.innerHTML = '';
			var list = decyzje.controls['dzialki'];
			for (var i=0;i<list.length;i++){
				var color = '#000';
				if (list[i].geometria == "") color = 'rgb(180,0,0)';
				var div = cd('padding:2px 0px 2px 0px;position:relative;color:'+color,list[i].obrebNazwa+', '+list[i].numer);
				decyzje.dzialkiDiv.appendChild(div);
				

				var deleteDiv = cad(null,2,0,null,16,16,'color:#f00;cursor:pointer;position:absolute;text-align:center','X');
				deleteDiv.itemIndex = i;				
				div.appendChild(deleteDiv);
				deleteDiv.onclick = function(){
					decyzje.controls['dzialki'].remove(this.itemIndex);
					decyzje.odswiezListeDzialek();
				}
			}
			if (list.length==0){
				decyzje.dzialkiDiv.innerHTML = 'brak';
			} 
		}
		b1.onclick = function(){
			if (decyzje.controls['numer_decyzji'].value==''){
				alert('Wpisz numer decyzji');
				return 0;
			}	
			if (decyzje.controls['data_wydania'].value==''){
				alert('Określ datę wydania decyzji');
				return 0;
			}	
			if (isDate(decyzje.controls['data_wydania'].value)==false){
				alert('Data wydania ma nieprawidłowy format (YYYY-MM-DD)');
				return 0;
			}
			
			var parametry={param:"zapiszDecyzje",id:decyzje.id,sciezka:sciezkaWdr,token:token};	
			parametry.numer_decyzji = decyzje.controls['numer_decyzji'].value;
			parametry.rodzaj_decyzji_id = decyzje.controls['rodzaj_decyzji_id'].value;
			parametry.data_wydania = decyzje.controls['data_wydania'].value;
			parametry.rodzaj_inwestycji = decyzje.controls['rodzaj_inwestycji'].value;
			parametry.wnioskodawca = decyzje.controls['wnioskodawca'].value;
			parametry.miejscowosc_id = decyzje.controls['miejscowosc_id'].value;
			parametry.adres = decyzje.controls['adres'].value;
			parametry.ustalenia = decyzje.controls['ustalenia'].value;
			parametry.zmiana = decyzje.controls['zmiana'].value;			
			parametry.uwagi = decyzje.controls['uwagi'].value;		
			parametry.plik = decyzje.controls['plik'];
			
			var tmp = new Array();
			var list = decyzje.controls['dzialki'];
			for (var i=0;i<list.length;i++){
				tmp.push(list[i].obrebNazwa+';'+list[i].obrebTeryt+';'+list[i].numer+';'+list[i].geometria);				
			}			
			parametry.dzialki = tmp.join("|");
			
			BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
				var obiekt =eval( "("+obj.responseText+")");;
				if (obiekt.error){
					alert(obiekt.error);
				} else {
					decyzje.czyscFormularz(true);	
					overlay = null;
					tryb = null;
					recordId = null;
					actionWindow.hide();
					actionWindowVisible = false;
					map.setTool('pointer');
					map.hideObjectAction();
					decyzje.okno.hide();					
					map.refresh();		
				}
			});
			
		}	
		decyzje.okno.onclose = function(){
			decyzje.okno.hide();
			return false;
		}	

	}
	/* okno wykazu*/	
	if (!decyzje.oknoWykaz){
		decyzje.oswiezTabele = function(page){
			decyzje.table.startLoading();
			var data_wydania_od = decyzje.filtrOdInput.value;
			var data_wydania_do = decyzje.filtrDoInput.value;	
			var miejscowosc_id = decyzje.filtrMiejscowscSelect.value; 				
			var szukaj = decyzje.filtrSzukajInput.value; 	
			
			decyzje.filtry['data_wydania_od'] = data_wydania_od;
			decyzje.filtry['data_wydania_do'] = data_wydania_do;
			decyzje.filtry['miejscowosc_id'] = miejscowosc_id;				
			decyzje.filtry['szukaj'] = szukaj;
			
			var wys = 0;
			if (decyzje.filtrWyswietlajInput.checked == true) wys=1;
			
			var parametry={param:"pobierzRejestr",token:token,sciezka:sciezkaWdr,page:page,numOnPage:50,data_wydania_od:data_wydania_od,data_wydania_do:data_wydania_do,miejscowosc_id:miejscowosc_id,szukaj:szukaj,wyswietlaj:wys};	
			BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
				decyzje.table.endLoading();
				try {
					var o =eval( "("+obj.responseText+")");						
					decyzje.table.setHeaders(o.headers,true);	
					decyzje.table.setData(o.numAll,50,page,o.data,o.ids);
					decyzje.table.primaryKeys = o.pk;
					map.refresh(true,'aktywne_obiekty');
				} catch(err){
					alert(err);
				} 

				
			});			
			
		}
		
		decyzje.oknoWykaz = new BEngine.Controls.Window({text:'Rejestr decyzji o warunkach zabudowy',startPosition:'CENTER',width:760,height:350,sendOnTop:true});
		/*filtry*/
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,5,null,null,130,16,'','Data wydania:'));
		decyzje.filtrOdInput = ctb('','position:absolute;width:63px;top:24px;left:5px;font-size:11px');
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(decyzje.filtrOdInput);

		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(cad(80,25,null,null,30,16,'','-'));
		decyzje.filtrDoInput = ctb('','position:absolute;width:63px;top:24px;left:95px;font-size:11px');
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(decyzje.filtrDoInput);		
		
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,48,null,null,70,16,'','Miejscowość:'));
		decyzje.filtrMiejscowscSelect = csl([],'position:absolute;width:160px;top:68px;left:5px;font-size:11px');
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(decyzje.filtrMiejscowscSelect);			
		
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,89,null,null,70,16,'','Szukaj:'));
		decyzje.filtrSzukajInput = ctb('','position:absolute;width:157px;top:109px;left:5px;font-size:11px');
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(decyzje.filtrSzukajInput);			
		
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,133,null,null,150,16,'','Wyświetl&nbsp;na&nbsp;mapie:'));
		decyzje.filtrWyswietlajInput = ccb('position:absolute;top:135px;left:127px');
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(decyzje.filtrWyswietlajInput);		
		
		decyzje.filtrujButton = new BEngine.Controls.Button({x:5,y:160,height:22,text:'Filtruj',width:60,aLeft:true,aRight:false,aTop:true},decyzje.oknoWykaz.getWorkspaceDiv());
		decyzje.czyscButton = new BEngine.Controls.Button({x:70,y:160,height:22,text:'Czyść',width:60,aLeft:true,aRight:false,aTop:true},decyzje.oknoWykaz.getWorkspaceDiv());		
		
		decyzje.wydrukButton = new BEngine.Controls.Button({x:5,y:186,height:22,text:'Wydruk',width:60,aLeft:true,aRight:false,aTop:true},decyzje.oknoWykaz.getWorkspaceDiv());
		decyzje.wydrukInfo = cad(74,188,null,null,100,20);
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(decyzje.wydrukInfo);		
		
		
		/* wczytywanie miejscowsci */
		var parametry={param:"pobierzMiejscowosci",sciezka:sciezkaWdr};	
		BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");;
			setSelectOptions(decyzje.filtrMiejscowscSelect,obiekt.miejscowosci);		
		});
		
		decyzje.oknoWykaz.hide();
		decyzje.oknoWykaz.onclose = function(){
			decyzje.oknoWykaz.hide();
			return false;
		}	
		var wykazDiv = cad(180,0,0,0,null,null,'border-left:1px solid #999;font-family:arial;font-size:10px');
		decyzje.oknoWykaz.getWorkspaceDiv().appendChild(wykazDiv);
		
		decyzje.table = new BEngine.Controls.NewTable(wykazDiv,{id:''});
		decyzje.page = 0;
		decyzje.filtry = new Array();
		decyzje.filtry['data_wydania_od'] = '';
		decyzje.filtry['data_wydania_do'] = '';
		decyzje.filtry['miejscowosc_id'] = '';		
		decyzje.filtry['szukaj'] = '';		
		decyzje.table.setChangePageFunction(decyzje.oswiezTabele);
		
		decyzje.table.addEvent('click',function(data){
			var b = data.box;
			var id = data.id;
			map.setViewFromBox(new BEngine.iGML.Box(b[0],b[1],b[2],b[3]));	
			recordId = id;
			tabela="dec_decyzje";
			var parametry={tabela:tabela,id:id,sciezka:sciezkaWdr,token:token};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
				var obiekt =eval( "("+obj.responseText+")"); 
				if (obiekt.error == 0){
					showObjectAction(obiekt);
				}
			});
					
		});
		decyzje.filtrujButton.onclick = function(){
			var data_wydania_od = decyzje.filtrOdInput.value;
			var data_wydania_do = decyzje.filtrDoInput.value;	
			var miejscowosc_id = decyzje.filtrMiejscowscSelect.value; 	
			
			if (data_wydania_od!=""){
				if (isDate(data_wydania_od)==false){
					alert('Wartość w polu data wydania (od) ma nieprawidłowy format (YYYY-MM-DD)');
					return 0;
				}				
			}
			if (data_wydania_do!=""){
				if (isDate(data_wydania_do)==false){
					alert('Wartość w polu data wydania (do) ma nieprawidłowy format (YYYY-MM-DD)');
					return 0;
				}				
			}
				
			decyzje.oswiezTabele(0);
		
		}
		decyzje.wydrukButton.onclick = function(){
			decyzje.wydrukInfo.innerHTML = 'generowanie...';
			
			var parametry={param:"wydruk",sciezka:sciezkaWdr,data_wydania_od:decyzje.filtry['data_wydania_od'],data_wydania_do:decyzje.filtry['data_wydania_do'],miejscowosc_id:decyzje.filtry['miejscowosc_id'],szukaj:decyzje.filtry['szukaj']};	
			BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
				try {
					var o =eval( "("+obj.responseText+")");						
					decyzje.wydrukInfo.innerHTML = '<a href="http://e-mapa.net/'+o.plik+'" target="blank">pobierz</a>';
					
				} catch(err){
					alert(err);
				} 
			});		
		}
		decyzje.czyscButton.onclick = function(){
			decyzje.filtrOdInput.value = '';
			decyzje.filtrDoInput.value = '';	
			decyzje.filtrMiejscowscSelect.value = ''; 				
			decyzje.filtrSzukajInput.value = '';
			decyzje.filtrWyswietlajInput.checked = false;
			decyzje.oswiezTabele(0);
	
		}
	}
}
function tworzModulAnaliz(){
	analizyDiv = document.createElement('div');
	analizyDiv.style.position = 'relative';
	analizyDiv.style.border = '1px solid #999';
	analizyDiv.style.padding = "5px";
	analizyDiv.style.marginTop = "5px";
	analizyDiv.style.backgroundColor = '#ddd';
	editPanel.getWorkspaceDiv().appendChild(analizyDiv);
	
	var label = document.createElement('div');
	label.innerHTML = '<b>Moduł analiz</b>';
	analizyDiv.appendChild(label);
	
	var lista = new Array();
	lista.push([0,'Wpisanie wartości jeśli przecięcie']);
	lista.push([1,'Wpisanie długości przecięcia']);
	lista.push([2,'Wpisanie wartości jeśli przecięcie w buforze']);
	lista.push([3,'Wpisanie wartości do pola']);
	
	var tab1 = new BEngine.Controls.TableFrame(2,1,analizyDiv);
	
	var typ = new BEngine.Controls.SimpleComboBox(lista,tab1.cell(0,0));
	var butPrzeprowadz  = new BEngine.Controls.SimpleButton('Wybierz',tab1.cell(1,0));

	analizaDiv = document.createElement('div');
	analizyDiv.appendChild(analizaDiv);
	analizaDiv.style.paddingTop = '4px';
	
	butPrzeprowadz.onclick = function(){
		var t = typ.getValue();
		if (t==0) analiza0();
		if (t==1) analiza1();	
		if (t==2) analiza2();	
		if (t==3) analiza3();			
	}
}
function tworzOknoWykaz(){
	wykaz.oswiezTabele = function(page){
		wykaz.table.startLoading();
		
		var wys = 0;
		var where = new Array();
		for (var i=0;i<wykaz.filtry.length;i++) {
			var f = wykaz.filtry[i];
			if (f.typ_filtru == 'slownik'){
				if (f.control.value != ''){	
					var w = f.pole+" = ";
					if ((f.typ == 3)||(f.typ == 2)||(f.typ == 5)) w+="'";
					w+=f.control.value;
					if ((f.typ == 3)||(f.typ == 2)||(f.typ == 5)) w+="'";
					where.push(w);
				}
			}
			if (f.typ_filtru == 'fraza'){
				if (f.control.value != ''){	
					var w = f.pole+" LIKE '%"+f.control.value+"%' ";

					where.push(w);
				}
			}			
		}
		where = where.join(" AND ");
		wykaz.where = where;
		
		if (wykaz.filtrWyswietlajInput.checked == true) wys=1;
		
		var parametry={param:"rejestr",tabela:wykaz.tabela,token:token,sciezka:sciezkaWdr,page:page,numOnPage:50,wyswietlaj:wys,where:where};	
		
		
		BEngine.Ajax.post('skrypty/ajax/ajax_wykaz.php',parametry,function(obj){
			wykaz.table.endLoading();
			try {
				var o =eval( "("+obj.responseText+")");						
				if (o.error){
					alert(o.error);
				} else {
					wykaz.table.setHeaders(o.headers,true);	
					wykaz.table.setData(o.numAll,50,page,o.data,o.ids);
					wykaz.table.primaryKeys = o.pk;
					map.refresh(true,'aktywne_obiekty');
				}
			} catch(err){
				alert(err);
			} 

			
		});			
		
	}
	wykaz.pokaz = function(tabela){

		wykaz.oknoWykaz.show();
		/* tworzenie filtrów*/
		wykaz.tabela = tabela;
		wykaz.filtryDiv.innerHTML = '';
		wykaz.buttonsDiv.style.top = "0px";
		wykaz.filtry = new Array();
		var offset = 5;	
		var parametry={tabela:tabela,sciezka:sciezkaWdr};
		BEngine.Ajax.post('skrypty/ajax/filtry_z_wykaz.php',parametry,function(obj){
			try{
				var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){					
					for (var i=0;i<obiekt.filtry.length;i++){
						var f = obiekt.filtry[i];
						wykaz.filtry.push(f);
						wykaz.filtryDiv.appendChild(cad(7,offset,null,null,170,16,'',f.etykieta));
						offset+=20;	
							
						if (f.typ_filtru == 'slownik'){
							f.control = csl(f.wartosci,'position:absolute;width:165px;top:'+offset+'px;left:5px;font-size:11px');
							wykaz.filtryDiv.appendChild(f.control);
							offset+=25;
						}
						if (f.typ_filtru == 'fraza'){
							f.control = ctb('','position:absolute;width:165px;top:'+offset+'px;left:5px;font-size:11px');
							wykaz.filtryDiv.appendChild(f.control);
							offset+=25;
						}						
						
					}
					wykaz.filtryDiv.appendChild(cad(7,offset,null,null,150,16,'','Wyświetl&nbsp;na&nbsp;mapie:'));
					wykaz.filtrWyswietlajInput = ccb('position:absolute;top:'+(offset+2)+'px;left:127px');
					wykaz.filtryDiv.appendChild(wykaz.filtrWyswietlajInput);	
					offset+=25;
					
					wykaz.buttonsDiv.style.top = offset+"px";
					wykaz.oswiezTabele(0);
				}
			}catch(err){
				alert('Wystapil problem z aplikacja: '+err+'. Przeraszamy.');
			}		
		});		
		
	}
	if (!wykaz.oknoWykaz){
		wykaz.oknoWykaz = new BEngine.Controls.Window({text:'Wykaz obiektów',startPosition:'CENTER',width:760,height:350,sendOnTop:true});
		wykaz.where = "";
		
		wykaz.oknoWykaz.hide();
		wykaz.oknoWykaz.onclose = function(){
			wykaz.oknoWykaz.hide();
			return false;
		}	
		var wykazDiv = cad(180,0,0,0,null,null,'border-left:1px solid #999;font-family:arial;font-size:10px');
		wykaz.oknoWykaz.getWorkspaceDiv().appendChild(wykazDiv);	
		
		wykaz.table = new BEngine.Controls.NewTable(wykazDiv,{id:''});	
		wykaz.table.setChangePageFunction(wykaz.oswiezTabele);
		
		wykaz.filtryDiv = cad(0,0,null,0,180,null,'font-family:arial;font-size:12px');
		wykaz.oknoWykaz.getWorkspaceDiv().appendChild(wykaz.filtryDiv);			
	
		wykaz.buttonsDiv = cad(0,0,null,null,180,60,'font-family:arial;font-size:11px');
		wykaz.oknoWykaz.getWorkspaceDiv().appendChild(wykaz.buttonsDiv);	
		
		wykaz.filtrujButton = new BEngine.Controls.Button({x:5,y:3,height:22,text:'Filtruj',width:60,aLeft:true,aRight:false,aTop:true},wykaz.buttonsDiv);
		wykaz.czyscButton = new BEngine.Controls.Button({x:70,y:3,height:22,text:'Czyść',width:60,aLeft:true,aRight:false,aTop:true},wykaz.buttonsDiv);		
		
		wykaz.wydrukButton = new BEngine.Controls.Button({x:5,y:29,height:22,text:'Wydruk',width:60,aLeft:true,aRight:false,aTop:true},wykaz.buttonsDiv);
		wykaz.wydrukInfo = cad(74,31,null,null,100,20);
		wykaz.buttonsDiv.appendChild(wykaz.wydrukInfo);				
		
		wykaz.table.addEvent('click',function(data){
			var b = data.box;
			var id = data.id;
			if(b[0]!=0)
			map.setViewFromBox(new BEngine.iGML.Box(b[0],b[1],b[2],b[3]));	
			recordId = id;
			tabela=wykaz.tabela;
			var parametry={tabela:tabela,id:id,sciezka:sciezkaWdr,token:token};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
				var obiekt =eval( "("+obj.responseText+")"); 
				if (obiekt.error == 0){ 
					showObjectAction(obiekt);
				}
			});
					
		});
	
		wykaz.filtrujButton.onclick = function(){			
			wykaz.oswiezTabele(0);		
		}
		wykaz.wydrukButton.onclick = function(){
			wykaz.wydrukInfo.innerHTML = 'generowanie...';
			var parametry={param:"wydruk",tabela:wykaz.tabela,token:token,sciezka:sciezkaWdr,where:wykaz.where};	
		
			BEngine.Ajax.post('skrypty/ajax/ajax_wykaz.php',parametry,function(obj){
				try {
					var o =eval( "("+obj.responseText+")");						
					wykaz.wydrukInfo.innerHTML = '<a href="http://e-mapa.net/'+o.plik+'" target="blank">pobierz</a>';
					
				} catch(err){
					alert(err);
				} 
			});		
		}
		wykaz.czyscButton.onclick = function(){
			for (var i=0;i>wykaz.filtry.length;i++) wykaz.filtry[i].control.value = '';			
			wykaz.filtrWyswietlajInput.checked = false;
			wykaz.oswiezTabele(0);
	
		}
	}
}
function tworzModulSzukaniaBudynkow(){
	budynki.show = function(){
		budynki.okno.show();
	
	}
	
	if (!budynki.okno){
		var styl = ';font-family:arial;font-size:12px';
		budynki.okno = new BEngine.Controls.Window({text:'Szukaj budynków',isMaximizeButton:false,borderStyle:'FIXED',x:406,y:85,width:320,height:470});
		budynki.okno.onclose = function(){
			budynki.okno.hide();
			return false;
		}
		
		var controlsDiv = cad(0,0,0,0,null,null);
		controlsDiv.style.overflow = "auto";
		budynki.okno.getWorkspaceDiv().appendChild(controlsDiv);
		
		controlsDiv.appendChild(cad(5,7,null,null,100,18,'','Powiat:'));
		budynki.controls['powiat'] = csl([],'width:200px;position:absolute;top:5px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['powiat']);

		controlsDiv.appendChild(cad(5,35,null,null,100,18,'','Gmina:'));
		budynki.controls['gmina'] = csl([],'width:200px;position:absolute;top:33px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['gmina']);

		controlsDiv.appendChild(cad(5,65,null,null,100,18,'','Obręb:'));
		budynki.controls['obreb'] = csl([],'width:200px;position:absolute;top:63px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['obreb']);		
		
		controlsDiv.appendChild(cad(5,93,null,null,100,18,'','Działka:'));
		budynki.controls['dzialki'] = ctb('','width:160px;position:absolute;top:91px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['dzialki']);			
		
		controlsDiv.appendChild(cad(5,121,null,null,100,18,'','Identyfikator:'));
		budynki.controls['id_budynku'] = ctb('','width:160px;position:absolute;top:119px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['id_budynku']);				

		controlsDiv.appendChild(cad(5,149,null,null,100,18,'','Funkcja:'));
		budynki.controls['kod_funkcji_uz'] = csl([{text:"-","value":""},{text:"p - przemysłowy",value:"p"},{text:"t - transportu lub łączności",value:"t"},{text:"h - handlowy lub usługowy",value:"h"},{text:"s - skład lub magazyn",value:"s"},{text:"b - biurowy",value:"b"},{text:"z - ochrony zdrowia, opieki socjalnej",value:"z"},{text:"m - mieszkalny",value:"m"},{text:"k - kultury, oświaty, kultu religijnego",value:"k"},{text:"g - gospodarczy",value:"g"},{text:"i - inny",value:"i"},{text:"x - nieokreślona",value:"x"}],'width:200px;position:absolute;top:147px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['kod_funkcji_uz']);		
		
	
		controlsDiv.appendChild(cad(5,177,null,null,100,18,'','Rok budowy:'));
		budynki.controls['rok_zak_bud_od'] = ctb('','width:50px;position:absolute;top:175px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['rok_zak_bud_od']);			

		controlsDiv.appendChild(cad(159,177,null,null,100,18,'','-'));
		budynki.controls['rok_zak_bud_do'] = ctb('','width:50px;position:absolute;top:175px;left:168px'+styl);
		controlsDiv.appendChild(budynki.controls['rok_zak_bud_do']);			
		
		
		
		controlsDiv.appendChild(cad(5,205,null,null,100,18,'','Pole zabudowy:'));
		budynki.controls['pole_ew_od'] = ctb('','width:50px;position:absolute;top:203px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['pole_ew_od']);			

		controlsDiv.appendChild(cad(159,205,null,null,100,18,'','-'));
		budynki.controls['pole_ew_do'] = ctb('','width:50px;position:absolute;top:203px;left:168px'+styl);
		controlsDiv.appendChild(budynki.controls['pole_ew_do']);	
		
		controlsDiv.appendChild(cad(5,233,null,null,100,18,'','Adres:'));
		budynki.controls['adres'] = ctb('','width:190px;position:absolute;top:231px;left:100px'+styl);
		controlsDiv.appendChild(budynki.controls['adres']);	
		
		var divButton = cd('position:absolute;height:27px;left:0px;top:259px');
		controlsDiv.appendChild(divButton);
		
		var szukajButton = new BEngine.Controls.Button({x:5,y:3,height:22,text:'Szukaj',width:60,aLeft:true,aRight:false,aTop:true},divButton);
		
		budynki.divWyniki = cad(0,288,0,0,null,null,'overflow:auto;padding:0px');
		controlsDiv.appendChild(budynki.divWyniki);
		
		budynki.controls['gmina'].disabled = true;
		budynki.controls['obreb'].disabled = true;	

		budynki.controls['powiat'].onchange = function(){
			var pow = this.value;
			budynki.controls['gmina'].options.length = 0;
			budynki.controls['obreb'].options.length = 0;
			if (pow!=''){
				budynki.controls['gmina'].options[budynki.controls['gmina'].options.length]=new Option("-","");
				for (var i=0;i<budynki.gminy.length;i++){
					var g = budynki.gminy[i];
					if (g[2] == pow){
						budynki.controls['gmina'].options[budynki.controls['gmina'].options.length]=new Option(g[1],g[0]);
					}
				}
				budynki.controls['gmina'].disabled = false;
			} else {
				budynki.controls['gmina'].disabled = true;
				budynki.controls['obreb'].disabled = true;
			}
		}
		
		budynki.controls['gmina'].onchange = function(){
			var gmi = this.value;
			budynki.controls['obreb'].options.length = 0;
			if (gmi!=''){
				budynki.controls['obreb'].options[budynki.controls['obreb'].options.length]=new Option("-","");
				for (var i=0;i<budynki.obreby.length;i++){
					var g = budynki.obreby[i];
					if (g[2] == gmi){
						budynki.controls['obreb'].options[budynki.controls['obreb'].options.length]=new Option(g[1],g[0]);
					}
				}
				budynki.controls['obreb'].disabled = false;
			} else {
				budynki.controls['obreb'].disabled = true;
			}
		}
		szukajButton.onclick = function(){
			var powiat = budynki.controls['powiat'].value;
			var gmina = budynki.controls['gmina'].value;			
			var obreb = budynki.controls['obreb'].value;
			var id_budynku = budynki.controls['id_budynku'].value;			
			var kod_funkcji_uz = budynki.controls['kod_funkcji_uz'].value;	
			
			var rok_zak_bud_od = budynki.controls['rok_zak_bud_od'].value;	
			var rok_zak_bud_do = budynki.controls['rok_zak_bud_do'].value;
			var pole_ew_od = budynki.controls['pole_ew_od'].value;
			var pole_ew_do = budynki.controls['pole_ew_do'].value;

			var dzialki = budynki.controls['dzialki'].value;
			var adres = budynki.controls['adres'].value;
			
			if (rok_zak_bud_od!=''){
				if (BEngine.Utils.isInteger(rok_zak_bud_od)==false){
					budynki.controls['rok_zak_bud_od'].focus();
					budynki.controls['rok_zak_bud_od'].select();	
					return 0;	
				}
			}
			if (rok_zak_bud_do!=''){
				if (BEngine.Utils.isInteger(rok_zak_bud_do)==false){
					budynki.controls['rok_zak_bud_do'].focus();
					budynki.controls['rok_zak_bud_do'].select();	
					return 0;	
				}
			}

			if (pole_ew_od!=''){
				if (BEngine.Utils.isInteger(pole_ew_od)==false){
					budynki.controls['pole_ew_od'].focus();
					budynki.controls['pole_ew_od'].select();		
					return 0;	
				}
			}
			if (pole_ew_do!=''){
				if (BEngine.Utils.isInteger(pole_ew_do)==false){
					budynki.controls['pole_ew_do'].focus();
					budynki.controls['pole_ew_do'].select();
					return 0;					
				}
			}			
			
			if ((powiat == '') && (id_budynku=='')){
				alert('Wybierz powiat lub wpisz identyfikator budynku');
				return 0;
			}
			if ((id_budynku!='')&&(powiat=='')){
				var tmp = id_budynku.split('.');
				tmp = tmp[0];
				if ((tmp.length!=8)||(tmp.charAt(tmp.length-2)!='_')){
					alert('Na podstwie wpisanego fragmentu identifikatora budynku nie można okreslić powiatu. Wybierz powiat z listy.');
					return 0;
				}
			}
		
			budynki.divWyniki.innerHTML = '<div style="padding:7px">szukam...</div>';
			var parametry={param:"szukaj",sciezka:sciezkaWdr,token:token,powiat:powiat,gmina:gmina,obreb:obreb,id_budynku:id_budynku};
			parametry.kod_funkcji_uz = kod_funkcji_uz;	
			
			parametry.rok_zak_bud_od = rok_zak_bud_od;
			parametry.rok_zak_bud_do = rok_zak_bud_do;
			parametry.pole_ew_od = pole_ew_od;
			parametry.pole_ew_do = pole_ew_do;			
			parametry.dzialki = dzialki;
			parametry.adres = adres;
			
			BEngine.Ajax.post('skrypty/ajax/ajax_budynki.php',parametry,function(obj){
				var obiekt =eval( "("+obj.responseText+")");;
				if (obiekt.error){
					budynki.divWyniki.innerHTML = '<div style="padding:7px">'+obiekt.error+'</div>';
				} else {
					budynki.divWyniki.innerHTML = '';
					if (obiekt.wyniki.length == 0) 
					budynki.divWyniki.innerHTML = '<div style="padding:7px">brak wyników wyszukiwania</div>';
					else
					budynki.divWyniki.innerHTML = '<div style="padding:7px;color:#666">wyświetlane jest 10 pierwszych wyników</div>';
					
					var c = 0;
					for (var i=0;i<obiekt.wyniki.length;i++){
						var w = obiekt.wyniki[i];
						var d =cd('position:relative;padding:4px 6px 4px 6px;cursor:pointer');
						d.coor = w[0];
						d.wyniki = w;
						
						var tx = '';
						if ((w[2])&&(w[2]!='')) tx = w[2];
						if ((w[3])&&(w[3]!='')) tx+=", dz. "+w[3];
						tx+=", "+w[1];
						
						
						d.innerHTML =tx;
						
						
						budynki.divWyniki.appendChild(d);
						d.onclick = function(){
							map.setViewFromBox(new BEngine.iGML.Box(this.coor[0],this.coor[1],this.coor[2],this.coor[3]));	
							
							actionWindow.setText('Informacja o obiekcie');
							actionWindow.getWorkspaceDiv().innerHTML = '';
							actionWindow.show();
							BEngine.Ajax.post('skrypty/bengine/ajax_pobierz_info.php',{adres:d.wyniki[4]},function(object){			
								actionWindow.getWorkspaceDiv().innerHTML = object.responseText;					
							});	
							
							
						}
						d.onmouseover = function(){
							this.style.backgroundColor = '#d1eaf8';
						}
						d.onmouseout = function(){
							this.style.backgroundColor = this.backColor;
						}	
						if (c==0) d.backColor = '#f9f9f9'; else d.backColor = '#eaeaea';
						d.style.backgroundColor = d.backColor;
						
						c++;
						if (c==2) c=0;
					}
					
				
				}
			});	
		}
		budynki.okno.hide();
		
		var parametry={param:"init",sciezka:sciezkaWdr,token:token,teryt:teryt};	
		BEngine.Ajax.post('skrypty/ajax/ajax_budynki.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");;
			if (obiekt.error){
				alert(obiekt.error);
			} else {
				budynki.powiaty = obiekt.powiaty;			
				budynki.gminy = obiekt.gminy;
				budynki.obreby = obiekt.obreby;
				budynki.controls['powiat'].options.length = 0;
				for (var i=0;i<obiekt.powiaty.length;i++){
					var p = obiekt.powiaty[i];
					budynki.controls['powiat'].options[budynki.controls['powiat'].options.length]=new Option(p[1],p[0]);
				}
				
				
			}
		});
		
	}	
}
function tworzModulGleby(){
	var glbDiv = document.createElement('div');
	glbDiv.style.position = 'relative';
	glbDiv.style.border = '1px solid #999';
	glbDiv.style.padding = "5px 8px";
	glbDiv.style.height = "48px";
	glbDiv.style.marginTop = "5px";
	glbDiv.style.backgroundColor = '#ddd';
	editPanel.getWorkspaceDiv().appendChild(glbDiv);
	
	var label = document.createElement('div');
	label.innerHTML = '<b>Mapa glebowa</b>';
	glbDiv.appendChild(label);
	

	var dodajButton = new BEngine.Controls.Button({x:5,y:28,width:120,height:24,text:'Dodaj kompleks'},glbDiv);
	var wykazButton = new BEngine.Controls.Button({x:128,y:28,width:140,height:24,text:'Wykaz kompleksów'},glbDiv);	
	
	dodajButton.onclick = function(){
		gleby.edytuj(0);
	}
	wykazButton.onclick = function(){
		gleby.oknoWykaz.show();
		gleby.oswiezTabele(0);
	}	
	
	gleby.odwiezRodzaj = function(){
		var r1 = gleby.controls['rodzaj1'].value;
		var r2 = gleby.controls['rodzaj2'].value;
		var r3 = gleby.controls['rodzaj3'].value;
		var r4 = gleby.controls['rodzaj4'].value;

		if (r2!='') r2 = "."+r2;
		if (r3!='') r3 = ":"+r3;
		if (r4!='') r4 = ":."+r4;		
		
		var r = r1+r2+r3+r4;	
		if (r.indexOf('.')==0) r = r.substr(1);
		gleby.controls['rodzaj'].value = r;
	}
	gleby.zapisz = function(){
		var numer = gleby.controls['numer'].value;
		var obreb = gleby.controls['obreb'].value;
		var nazwa = gleby.controls['nazwa'].value;
		var typ = gleby.controls['typ'].value;
		var rodzaj = gleby.controls['rodzaj'].value;
		var org = gleby.controls['org'].value;		
		
		if (overlay.points.length==0){
			alert("Określ geometrię kompleksu");
			return 0;		
		}
		if (overlay.closed == false){
			alert("Zamknij poligon kompleksu");
			return 0;		
		}
		
		if (numer == '') {
			alert("Wpisz numer kompleksu");
			return 0;
		}
		if (obreb == '') {
			alert("Określ teryt obrębu");
			return 0;
		}
		
		var points = new Array();
		for (var i=0;i<overlay.points.length;i++){
			points.push(overlay.points[i].x+' '+overlay.points[i].y);
		}
		
		var parametry={param:"zapisz",sciezka:sciezkaWdr,id:gleby.id,numer:numer,obreb:obreb,nazwa:nazwa,typ:typ,rodzaj:rodzaj,org:org,points:points.join(",")};	
		BEngine.Ajax.post('skrypty/ajax/ajax_gleby.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");
			if (obiekt.error){
				alert(obiekt.error);
			} else {				
				map.removeOverlays();
				overlay = null;
				tryb = null;
				recordId = null;
				actionWindow.hide();
				actionWindowVisible = false;
				map.setTool('pointer');
				map.hideObjectAction();
				gleby.okno.hide();					
				var parametry={sciezka:sciezkaWdr,token:token,id:0};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
					map.refresh(true);
				});											
			}
		});		
		
		
	}
	gleby.edytuj = function(id){
		tabela = 'glb_kompleks';
		gleby.id = id;
		if (id == 0){
			
			map.removeOverlays();
			var pol = new BEngine.iGML.Overlays.Polygon(new Array(),{lineWidth:1,lineColor:'#000',lineOpacity:0.8,fillColor:'#fff',fillOpacity:'0.2'});
			map.addOverlay(pol);
			pol.onclick = function(){
				map.setTool('edit',this);
			}			
			map.setTool('edit',pol);
			overlay = pol;
			
			gleby.controls['numer'].value = '';
			gleby.controls['obreb'].value = '';
			//gleby.controls['nazwa'].value = '';
			//gleby.controls['typ'].value = '<nd>';				
			gleby.controls['rodzaj'].value = '';
			gleby.controls['rodzaj1'].value = '';
			gleby.controls['rodzaj2'].value = '';
			gleby.controls['rodzaj3'].value = '';
			gleby.controls['rodzaj4'].value = '';			
			
			gleby.okno.show();
		} else {
			var parametry={param:"pobierzKompleks",id:id,sciezka:sciezkaWdr};	
			BEngine.Ajax.post('skrypty/ajax/ajax_gleby.php',parametry,function(obj){
				var obiekt =eval( "("+obj.responseText+")");
				
				var points = new Array();
				for (var i=0;i<obiekt.points.length;i++){
					var p = obiekt.points[i];
					points.push({x:p[0],y:p[1]});
				}
				
				map.removeOverlays();
				var pol = new BEngine.iGML.Overlays.Polygon(points,{lineWidth:1,lineColor:'#000',lineOpacity:0.8,fillColor:'#fff',fillOpacity:'0.2'});
				map.addOverlay(pol);
				pol.onclick = function(){
					map.setTool('edit',this);
				}			
				map.setTool('edit',pol);
				overlay = pol;
				
				gleby.controls['numer'].value = obiekt.numer;
				gleby.controls['obreb'].value = obiekt.obreb;
				gleby.controls['nazwa'].value = obiekt.nazwa;				
				gleby.controls['typ'].value = obiekt.typ;	
				gleby.controls['org'].value = obiekt.org;	
				
				var rodzaj = obiekt.rodzaj;
				gleby.controls['rodzaj'].value = rodzaj;
				
				var tmp2 = rodzaj.replace(":.","@");
				tmp2 = tmp2.replace(":","@");
				tmp2 = tmp2.replace(".","@");
				tmp2 = tmp2.split("@");
				
				var offset = 0;
				var rodz = rodzaj.replace(":.","!");
				
				var tmp = new Array('','','','');	
				
				//document.title = tmp2.length+' | '+rodz;
				/* x */
				if (tmp2.length == 1){
					tmp[0] = tmp2[0];
				}
				/* x.x */
				if ((tmp2.length == 2)&&(rodz.indexOf(".")!=-1)){
					tmp[0] = tmp2[0];
					tmp[1] = tmp2[1];
				}				
				/* x:x */
				if ((tmp2.length == 2)&&(rodz.indexOf(":")!=-1)){
					tmp[1] = tmp2[0];
					tmp[2] = tmp2[1];
				}					
				/* x.x:x */
				if ((tmp2.length == 3)&&(rodz.indexOf(".")!=-1)&&(rodz.indexOf(":")!=-1)){
					tmp[0] = tmp2[0];
					tmp[1] = tmp2[1];
					tmp[2] = tmp2[2];					
				}
				/* x.x:x:.x */
				if ((tmp2.length == 4)&&(rodz.indexOf(".")!=-1)&&(rodz.indexOf(":")!=-1)&&(rodz.indexOf("!")!=-1)){
					tmp[0] = tmp2[0];
					tmp[1] = tmp2[1];
					tmp[2] = tmp2[2];
					tmp[3] = tmp2[3];					
				}				
				/* x.x:.x */
				if ((tmp2.length == 3)&&(rodz.indexOf(".")!=-1)&&(rodz.indexOf("!")!=-1)){
					tmp[0] = tmp2[0];
					tmp[1] = tmp2[1];
					tmp[3] = tmp2[2];					
				}
				/* x:x:.x */
				if ((tmp2.length == 3)&&(rodz.indexOf(":")!=-1)&&(rodz.indexOf("!")!=-1)){
					tmp[1] = tmp2[0];
					tmp[2] = tmp2[1];
					tmp[3] = tmp2[2];					
				}
				
				gleby.controls['rodzaj1'].value = tmp[0];
				gleby.controls['rodzaj2'].value = tmp[1];
				gleby.controls['rodzaj3'].value = tmp[2];
				gleby.controls['rodzaj4'].value = tmp[3];				
						
				gleby.okno.show();

				var parametry={sciezka:sciezkaWdr,token:token,id:0};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
					map.refresh(true,'aktywne_obiekty');
				});
				
			});	
		}
		
	
	}
	if (!gleby.okno){
		/*przygotowanie kontrolek */
		gleby.controls = new Array();
		
		gleby.okno = new BEngine.Controls.Window({text:'Kompleks glebowy',startPosition:'CENTER',isMaximizeButton:false,borderStyle:'FIXED',width:430,height:284,sendOnTop:true});
		var div = gleby.okno.getWorkspaceDiv();
		div.style.paddingTop = "5px";
		var styl = ';font-family:arial;font-size:12px';
		
		var tabElm = ct(6,2);
		div.appendChild(tabElm[0]);
		setColumnStyle(tabElm,0,'padding:2px 6px;');
		setColumnStyle(tabElm,1,'padding:2px 6px;');
		var cells = tabElm[2];
		
		cells[0][0].innerHTML = 'Numer:';
		gleby.controls['numer'] = ctb('','width:130px;height:16px'+styl);
		cells[0][1].appendChild(gleby.controls['numer']);
		
		cells[1][0].innerHTML = 'Teryt obrębu:';
		gleby.controls['obreb'] = ctb('','width:130px;height:16px'+styl);
		cells[1][1].appendChild(gleby.controls['obreb']);		

		cells[1][1].appendChild(cs(' '));
		var pobierzObreb = cs('pobierz','mediumBlueLink');
		cells[1][1].appendChild(pobierzObreb);	
		
		cells[2][0].innerHTML = 'Nazwa:';
		gleby.controls['nazwa'] = csl([],'width:248px;height:21px'+styl);
		cells[2][1].appendChild(gleby.controls['nazwa']);			
		
		cells[3][0].innerHTML = 'Typ podtyp gleby:';
		gleby.controls['typ'] = csl([],'width:248px;height:21px'+styl);
		cells[3][1].appendChild(gleby.controls['typ']);			
		
		cells[4][0].innerHTML = 'Rodzaj&nbsp;i&nbsp;gatunek&nbsp;gleby:';
		gleby.controls['rodzaj'] = ctb('','width:130px;height:16px'+styl+';font-weight:bold');
		var d1 = cd('padding:0px 0px 2px 0px');
		d1.appendChild(gleby.controls['rodzaj']);		
		cells[4][1].appendChild(d1);	
		gleby.controls['rodzaj'].disabled = true;
		
		gleby.controls['rodzaj1'] = csl([],'width:58px;height:21px'+styl);
		cells[4][1].appendChild(gleby.controls['rodzaj1']);		
		cells[4][1].appendChild(cs("."));
		gleby.controls['rodzaj2'] = csl([],'width:58px;height:21px'+styl);
		cells[4][1].appendChild(gleby.controls['rodzaj2']);		
		cells[4][1].appendChild(cs(":"));		
		gleby.controls['rodzaj3'] = csl([],'width:58px;height:21px'+styl);
		cells[4][1].appendChild(gleby.controls['rodzaj3']);		
		cells[4][1].appendChild(cs(":."));	
		gleby.controls['rodzaj4'] = csl([],'width:58px;height:21px'+styl);
		cells[4][1].appendChild(gleby.controls['rodzaj4']);	
		
		cells[4][0].style.height = '52px';
		cells[4][1].style.height = '52px';
		
		cells[5][0].innerHTML = 'Gleba organiczna';
		gleby.controls['org'] = csl([{text:'tak',value:'tak'},{text:'nie',value:'nie'},{text:'brak informacji',value:'brak informacji'}],'height:21px'+styl);
		cells[5][1].appendChild(gleby.controls['org']);		
		
		var okButton = new BEngine.Controls.Button({x:5,y:205,width:60,height:24,text:'OK'},div);
		var anulujButton = new BEngine.Controls.Button({x:68,y:205,width:60,height:24,text:'Anuluj'},div);		
	
		gleby.snapCheckbox = ccb('position:absolute;top:234px;left:5px');
		div.appendChild(gleby.snapCheckbox);
		div.appendChild(cad(25,232,null,null,200,16,'','przyciągaj do wierzchołków'));
	
		gleby.infoSnap = cad(187,232,null,null,100,16,'');
		div.appendChild(gleby.infoSnap);
	
		gleby.okno.hide();
		gleby.okno.onclose = function(){
			gleby.okno.hide();
			anulujEdycje();
			return false;
		}	
		anulujButton.onclick  = function(){
			gleby.okno.hide();
			anulujEdycje();
			return false;
		}	
		okButton.onclick  = function(){
			gleby.zapisz();
		}		
		
		
		gleby.controls['rodzaj1'].onchange = function(){
			gleby.odwiezRodzaj();
		}
		gleby.controls['rodzaj2'].onchange = function(){
			gleby.odwiezRodzaj();
		}
		gleby.controls['rodzaj3'].onchange = function(){
			gleby.odwiezRodzaj();
		}
		gleby.controls['rodzaj4'].onchange = function(){
			gleby.odwiezRodzaj();
		}		
		pobierzObreb.onclick = function(){
			var c = overlay.getCenter();
			if (c==null){
				alert("Należy najpierw określić geometrię kompleksu");
				return 0;
			}
		
			var parametry={param:"pobierzObreb",sciezka:sciezkaWdr,x:c.x,y:c.y};	
			BEngine.Ajax.post('skrypty/ajax/ajax_gleby.php',parametry,function(obj){
				var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error){
					alert(obiekt.error);
				} else {
					gleby.controls['obreb'].value = obiekt.teryt;
				}
			});		
		}
		
		
		

	}	
	if (!decyzje.oknoWykaz){
		gleby.oswiezTabele = function(page){
			gleby.table.startLoading();
			var powiat = gleby.filtrPowiat.value;
			var gmina = gleby.filtrGmina.value;	
			var obreb = gleby.filtrObreb.value; 				
			var szukaj = gleby.filtrSzukajInput.value; 	
			
			gleby.filtry['powiat'] = powiat;
			gleby.filtry['gmina'] = gmina;
			gleby.filtry['obreb'] = obreb;				
			gleby.filtry['szukaj'] = szukaj;
			
			var wys = 0;
			if (gleby.filtrWyswietlajInput.checked == true) wys=1;
			
			var parametry={param:"pobierzWykaz",token:token,sciezka:sciezkaWdr,page:page,numOnPage:50};
			parametry.szukaj = szukaj;
			parametry.wyswietlaj = wys;
			parametry.powiat = powiat;
			parametry.gmina = gmina;
			parametry.obreb = obreb;
			
			BEngine.Ajax.post('skrypty/ajax/ajax_gleby.php',parametry,function(obj){
				gleby.table.endLoading();
				try {
					var o =eval( "("+obj.responseText+")");						
					gleby.table.setHeaders(o.headers,true);	
					gleby.table.setData(o.numAll,50,page,o.data,o.ids);
					gleby.table.primaryKeys = o.pk;
					map.refresh(true,'aktywne_obiekty');
				} catch(err){
					alert(err);
				} 

				
			});			
			
		}
		
		gleby.oknoWykaz = new BEngine.Controls.Window({text:'Wykaz kompleksów',startPosition:'CENTER',width:760,height:350,sendOnTop:true});
		
		/*filtry*/
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,5,null,null,130,16,'','Powiat:'));
		gleby.filtrPowiat = csl([],'position:absolute;width:160px;top:24px;left:5px;font-size:11px');
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(gleby.filtrPowiat);

		
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,48,null,null,70,16,'','Gmina:'));
		gleby.filtrGmina = csl([],'position:absolute;width:160px;top:68px;left:5px;font-size:11px');
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(gleby.filtrGmina);

		gleby.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,88,null,null,70,16,'','Obręb:'));
		gleby.filtrObreb = csl([],'position:absolute;width:160px;top:108px;left:5px;font-size:11px');
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(gleby.filtrObreb);
		
		
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,129,null,null,70,16,'','Szukaj:'));
		gleby.filtrSzukajInput = ctb('','position:absolute;width:157px;top:149px;left:5px;font-size:11px');
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(gleby.filtrSzukajInput);			
		
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(cad(7,173,null,null,150,16,'','Wyświetl&nbsp;na&nbsp;mapie:'));
		gleby.filtrWyswietlajInput = ccb('position:absolute;top:175px;left:127px');
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(gleby.filtrWyswietlajInput);		
		
		gleby.filtrujButton = new BEngine.Controls.Button({x:5,y:200,height:22,text:'Filtruj',width:60,aLeft:true,aRight:false,aTop:true},gleby.oknoWykaz.getWorkspaceDiv());
		gleby.czyscButton = new BEngine.Controls.Button({x:70,y:200,height:22,text:'Czyść',width:60,aLeft:true,aRight:false,aTop:true},gleby.oknoWykaz.getWorkspaceDiv());		
		
		gleby.oknoWykaz.hide();
		gleby.oknoWykaz.onclose = function(){
			gleby.oknoWykaz.hide();
			return false;
		}	
		var wykazDiv = cad(180,0,0,0,null,null,'border-left:1px solid #999;font-family:arial;font-size:10px');
		gleby.oknoWykaz.getWorkspaceDiv().appendChild(wykazDiv);
		
		gleby.table = new BEngine.Controls.NewTable(wykazDiv,{id:''});
		gleby.page = 0;
		gleby.filtry = new Array();
		gleby.filtry['powiat'] = '';
		gleby.filtry['gmina'] = '';
		gleby.filtry['obreb'] = '';		
		gleby.filtry['szukaj'] = '';		
		gleby.table.setChangePageFunction(gleby.oswiezTabele);
		
		gleby.table.addEvent('click',function(data){
			var b = data.box;
			var id = data.id;
			map.setViewFromBox(new BEngine.iGML.Box(b[0],b[1],b[2],b[3]));	
			recordId = id;
			tabela="glb_kompleks";
			var parametry={tabela:tabela,id:id,sciezka:sciezkaWdr,token:token};
				BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
				var obiekt =eval( "("+obj.responseText+")"); 
				if (obiekt.error == 0){
					showObjectAction(obiekt);
				}
			});
					
		});
		gleby.filtrujButton.onclick = function(){
				
			gleby.oswiezTabele(0);
		
		}

		gleby.czyscButton.onclick = function(){
			gleby.filtrPowiat.value = '';
			gleby.filtrGmina.value = '';	
			gleby.filtrObreb.value = ''; 				
			gleby.filtrSzukajInput.value = '';
			gleby.filtrWyswietlajInput.checked = false;
			gleby.oswiezTabele(0);
	
		}
		gleby.filtrPowiat.onchange = function(){
			gleby.filtrObreb.length = 0;
			if (this.value == ''){
				gleby.filtrGmina.length = 0;
			} else {
				setSelectOptions(gleby.filtrGmina,this.options[this.selectedIndex].data);	
			}
		}
		gleby.filtrGmina.onchange = function(){
			if (this.value == ''){
				gleby.filtrObreb.length = 0;
			} else {
				if (this.options[this.selectedIndex].data.length==0)
				gleby.filtrObreb.length = 0;
				else
				setSelectOptions(gleby.filtrObreb,this.options[this.selectedIndex].data);	
			}
		}		
	}

	var parametry={param:"init",sciezka:sciezkaWdr};	
	BEngine.Ajax.post('skrypty/ajax/ajax_gleby.php',parametry,function(obj){
		var obiekt =eval( "("+obj.responseText+")");
		setSelectOptions(gleby.controls['nazwa'],obiekt.nazwy);		
		setSelectOptions(gleby.controls['typ'],obiekt.typ);		
		setSelectOptions(gleby.controls['rodzaj1'],obiekt.rodzaj);			
		setSelectOptions(gleby.controls['rodzaj2'],obiekt.rodzaj);
		setSelectOptions(gleby.controls['rodzaj3'],obiekt.rodzaj);
		setSelectOptions(gleby.controls['rodzaj4'],obiekt.rodzaj);	

		setSelectOptions(gleby.filtrPowiat,obiekt.powiaty);	
		
	});	
}

function pobierzWidoczneWarstwy(){
	var services = map.services;
	var tmp = new Array();
	for (var i=0;i<services.length;i++){
		var s = services[i];	
		if (s.checked == true){
			var lay = new Array();
			for (var j=0;j<s.layers.length;j++){
				if (s.layers[j].checked == true)
				lay.push(s.layers[j].name);
			}
			if (lay.length>0){
				tmp.push(services[i].id+";"+lay.join(";"));
			}
		}
	}	
	return tmp.join("|");
}

function zaladujWarstwy(x_widok,y_widok,scale_widok,xmin,ymin,xmax,ymax){
	var parametry={table:'tabele;wms;serwisy_wms;grupy_wms',sort:'kolejnosc;id;kolejnosc DESC;kolejnosc',sciezka:sciezkaWdr};
	BEngine.Ajax.post('skrypty/ajax/pobierz_tabele.php',parametry,function(obj){
		try {
			var obiekt =eval( "("+obj.responseText+")");
				} catch(err){
			alert(err);
		}	
			if (obiekt.error == 0){
				warstwyCmb.addItem('wybierz warstwę...','0');	
					var tab = obiekt.tabele;
					var lay = new Array();
					

					
					
					for (var i=(tab.length-1);i>=0;i--){
						if (tab[i].typ==0){ //mamy do czynienie ze zwykłš tabelš, nie słownikowš
							var wid = true;
							if (zalog == true){
								if (!upr_wid['*']){
									if (!upr_wid[tab[i].nazwa]) wid = false;
								}
							}
							if (wid == true){
							
								var tabWMS = obiekt.wms;
								var widoczna = true;
								var rek = null;
								for (var j=0;j<tabWMS.length;j++){
									if (tabWMS[j].nazwa_warstwy == tab[i].nazwa){
										if (tabWMS[j].domyslnie_widoczna == 'f') widoczna = false;
										rek = tabWMS[j];
									}
								}
								if (rek == null) continue;
								
								var visFrom = 0;
								var visTo = 9999;
		
	
		
								if (rek.zakres_wid){
									var vis = rek.zakres_wid.split(';');
									visFrom = parseFloat(vis[0].replace(',','.'));
									visTo = parseFloat(vis[1].replace(',','.'));
								}
								var ltmp = {nazwa:tab[i].nazwa,tytul:tab[i].opis,widoczna:widoczna,visFrom:visFrom,visTo:visTo};
								if ((rek.ikonka!='')&&(rek.ikonka!='undefined')){
									ltmp.icon = sciezkaWdr+'legenda/'+rek.ikonka;
								}
								
								var ok = true;
								if (zalog==false){
									
									if (rek.prywatny == "t") {
										ok = false;
										
									}	
								}
								if (rek.aktywna == 'f') ok = false;
								if (ok==true){
									lay.push(ltmp);
									layers.push(tab[i].nazwa);
									warstwyCmb.addItem(tab[i].opis,tab[i].nazwa);
									
								}
							}
							
						}
					}		
					if ((tab.length==0)&&(extPanSO)) extPanSO.hide();
					rekordId = null;
					dodajWMS("http://"+hostWdr+'/skrypty/rysuj.php',lay);
					
					for (var i=0;i<obiekt.serwisy_wms.length;i++){
						var row = obiekt.serwisy_wms[i];
						if ((row.prywatny!="t")||(zalog==true)){

								var wms = new BEngine.iGML.WMSService({});
								if (row.adres!=""){
									var ads = row.adres.split(';'); 
									
								
									var lay = new Array();
									var ln = row.warstwy.split(',');
									var lic = row.ikonki_warstw.split(',');
									var lt = row.nazwy_warstw.split(',');
									var lz = row.zapytania.split(',');
									if (row.widocznosc_warstw==''){
										for (var j=0;j<(ln.length-1);j++)
										row.widocznosc_warstw+=',';
									}
									var lw = row.widocznosc_warstw.split(',');
									for (var j=0;j<(lw.length);j++){
										if (lw[j]=='') lw[j]='1';
									}	
									
									if (row.zakres_wid==''){
										for (var j=0;j<(ln.length-1);j++)
										row.zakres_wid+=',';
									}
									var lzw = row.zakres_wid.split(',');
									for (var j=0;j<(lzw.length);j++){
										if ((lzw[j]=='')||(lzw[j]=='undefined')) lzw[j]='0;9999';
									}					
									for (var j=0;j<(lic.length);j++){
										if (lic[j]=='undefined') lic[j]='';
									}						
									
									for (var j=0;j<ln.length;j++){
										var layer = new BEngine.iGML.WMSLayer();
										layer.name = ln[j];
										layer.title = lt[j];
										if (lic[j]!=''){
											layer.icon = sciezkaWdr+'/legenda/'+lic[j];
										}
										
										if (lw[j]=='1')
										layer.checked = true;
										else {
											layer.checked = false;
										}
										
										
										if (lz[j]=="1"){
											layer.queryable = true;
										}
										else
										layer.queryable = false;
										
										var visFrom = 0;
										var visTo = 9999;
										if (lzw[j]){
											var vis = lzw[j].split(';');
											visFrom = parseFloat(vis[0]);
											visTo = parseFloat(vis[1]);
										}
										layer.visibleFrom = visFrom;
										layer.visibleTo = visTo;
										
										
										lay.push(layer);
										
									}
									wms.url = ads[0]; 
									wms.version = row.wersja;
									wms.format = row.format;
									wms.layers = lay;
									
									if (ads.length>1){
										wms.urls = ads;
									}
									
								}					
								if (row.adres_tile!=""){
									wms.tile_url = row.adres_tile;
									wms.tile_type = "gs";
									if (row.tile_type != "") wms.tile_type=row.tile_type;
									wms.tile_vis_from = 0;
									wms.tile_vis_to = 2.56;						
									if (row.tile_zakres_wid!=""){
										var tab = row.tile_zakres_wid.split(';');
										wms.tile_vis_from = tab[0];
										wms.tile_vis_to = tab[1];							
									}
									wms.tile_level = 0;
									if (row.tile_level!=""){
										wms.tile_level = row.tile_level;							
									}
									wms.tile_format = 'jpg';
									if (row.tile_format)
									wms.tile_format = row.tile_format;
								}
								
								if ((row.grupa)&&(row.grupa!="")){
									wms.group = parseInt(row.grupa);
								} else
								wms.group = 0;
								
				
								
								wms.name = row.nazwa;
								wms.id = row.id;			
								wms.icon = row.ikonka;			
								var boxes = row.zakres.split(';');
								var box = boxes[0].split(',');
								wms.boundingBox = new BEngine.iGML.Box(parseFloat(box[0]),parseFloat(box[1]),parseFloat(box[2]),parseFloat(box[3]));
								if (boxes.length>1){
									wms.boundingBoxes = new Array();
									for (var j=0;j<boxes.length;j++){
										var box = boxes[j].split(',');
										wms.boundingBoxes.push(new BEngine.iGML.Box(parseFloat(box[0]),parseFloat(box[1]),parseFloat(box[2]),parseFloat(box[3])));
										
									}
								}						
								wms.expandable = true;	
								wms.expanded = toBool(row.rozwiniety);	
								wms.checked = toBool(row.widoczny);	
								if ((row.id == 181) && (xmin!=0)){
									wms.checked = true;
								}
								
								if (row.zakres_skali)
								wms.scaleExtent = row.zakres_skali.split(";");
								
								var w = 0;
								if (isThematic == true) w = 1; 
								map.addService(wms,w,false);				
							
						
						}
					}
					
					if (obiekt.grupy_wms){
						for(var i=0;i<obiekt.grupy_wms.length;i++){
							var g = obiekt.grupy_wms[i];		
							map.groups.push({id:g.id,name:g.nazwa,visible:BEngine.Utils.strToBool(g.widoczny),expanded:BEngine.Utils.strToBool(g.rozwiniety),icon:g.ikonka,active:BEngine.Utils.strToBool(g.aktywny)});
						}
					}
					
					if (version>=1.02){
						var wms = new BEngine.iGML.WMSService({});
						wms.url = "http://www.serverwms.pl/cgi-bin/mapserv?map=/var/www/igs/"+sciezkaWdr+"wms/aktywny.map&token="+token;
						wms.version = '1.1.1';
						wms.format = 'image/png';					
						wms.name = 'aktywne_obiekty';
						wms.id = 'aktywne_obiekty';								
						wms.checked = true;
						wms.expandable = false;	
						wms.expanded = false;	
						wms.boundingBox = mainBBox;						
						wms.group = 0;
						wms.hidden = true;
						
						var layer = new BEngine.iGML.WMSLayer();
						layer.name = 'zaznaczenie';
						layer.title = 'zaznaczenie';
						layer.checked = true;
						layer.queryable = false;
						layer.visibleFrom = 0;
						layer.visibleTo = 99;
						
						var layer2 = new BEngine.iGML.WMSLayer();
						layer2.name = 'blok';
						layer2.title = 'blok';
						layer2.checked = true;
						layer2.queryable = false;
						layer2.visibleFrom = 0;
						layer2.visibleTo = 99;						
						wms.layers = [layer2,layer];	
						
						map.addService(wms,0);		
					}

					if ((iGeoPlan==true)&&(zalog == true)&&(version>=1.13)){
						var wms = new BEngine.iGML.WMSService({});
						wms.url = "http://www.serverwms.pl/cgi-bin/mapserv?map=/var/www/igs/"+sciezkaWdr+"plan/plan.map";
						wms.version = '1.1.1';
						wms.format = 'image/png';					
						wms.name = 'Plan Miejscowy';
						wms.id = 'dec_decyzje';
						wms.icon = 'http://e-mapa.net/skrypty/obrazki/decyzje.png';							
						wms.checked = false;
						wms.expandable = true;	
						wms.expanded = false;	
						wms.boundingBox = mainBBox;						
						wms.group = 0;

						
						var layer = new BEngine.iGML.WMSLayer();
						layer.name = 'gra';
						layer.title = 'Granice';
						layer.checked = true;
						layer.queryable = true;
						layer.visibleFrom = 0;
						layer.visibleTo = 99;

						var layer2 = new BEngine.iGML.WMSLayer();
						layer2.name = 'lzb';
						layer2.title = 'Linie zabudowy';
						layer2.checked = true;
						layer2.queryable = true;
						layer2.visibleFrom = 0;
						layer2.visibleTo = 99;

						var layer3 = new BEngine.iGML.WMSLayer();
						layer3.name = 'pkt';
						layer3.title = 'Elementy punktowe';
						layer3.checked = true;
						layer3.queryable = true;
						layer3.visibleFrom = 0;
						layer3.visibleTo = 99;

						var layer4 = new BEngine.iGML.WMSLayer();
						layer4.name = 'lin';
						layer4.title = 'Elementy liniowe';
						layer4.checked = true;
						layer4.queryable = true;
						layer4.visibleFrom = 0;
						layer4.visibleTo = 99;

						var layer5 = new BEngine.iGML.WMSLayer();
						layer5.name = 'pow';
						layer5.title = 'Elementy powierzchniowe';
						layer5.checked = true;
						layer5.queryable = true;
						layer5.visibleFrom = 0;
						layer5.visibleTo = 99;

						var layer6 = new BEngine.iGML.WMSLayer();
						layer6.name = 'str';
						layer6.title = 'Strefy funkcjonalne';
						layer6.checked = true;
						layer6.queryable = true;
						layer6.visibleFrom = 0;
						layer6.visibleTo = 99;
						
						wms.layers = [layer6,layer5,layer4,layer3,layer2,layer];	
						
						map.addService(wms,2);		
					}
					
					if ((iGeoDecyzje==true)&&(zalog == true)&&(version>=1.09)){
						var wms = new BEngine.iGML.WMSService({});
						wms.url = "http://www.serverwms.pl/cgi-bin/mapserv?map=/var/www/igs/"+sciezkaWdr+"wms/decyzje.map";
						wms.version = '1.1.1';
						wms.format = 'image/png';					
						wms.name = 'Decyzje o warunkach zabudowy';
						wms.id = 'dec_decyzje';		
						wms.icon = 'http://e-mapa.net/skrypty/obrazki/decyzje.png';	
						wms.checked = false;
						wms.expandable = true;	
						wms.expanded = false;	
						wms.boundingBox = mainBBox;						
						wms.group = 0;
						wms.menuEnabled = true;
						wms.menu = 1;
						
						var layer = new BEngine.iGML.WMSLayer();
						layer.name = 'dzialki';
						layer.title = 'Działki';
						layer.checked = true;
						layer.queryable = false;
						layer.visibleFrom = 0;
						layer.visibleTo = 99;

						var layer2 = new BEngine.iGML.WMSLayer();
						layer2.name = 'decyzje';
						layer2.title = 'Decyzje';
						layer2.checked = true;
						layer2.queryable = true;
						layer2.visibleFrom = 0;
						layer2.visibleTo = 99;
						
						wms.layers = [layer,layer2];	
						
						map.addService(wms,2);		
					}
					
					
					map.fillLayerTree();
					map.createLevels(); 
					
					map.zoomExtent();
					
			
					layerTree = map.getLayersTree();
			

					if ((x_widok!=0)&&(y_widok!=0)&&(scale_widok!=0)){
						if ((x_widok<180) &&(y_widok<90)){
							var wsp = BEngine.Geo.transform([x_widok,y_widok],'EPSG:4326','EPSG:2180');
							x_widok = wsp[0];
							y_widok = wsp[1];
						}
						map.setView(x_widok,y_widok,scale_widok);
					}	
					if (xmin!=0){
						map.setViewFromBox(new BEngine.iGML.Box(xmin,ymin,xmax,ymax));	
					}
						
			}	
		
	});	

}

function fillDetailObjectAction(){
	actionWindow.setText('Informacja o obiekcie');
	actionWindow.getWorkspaceDiv().innerHTML = '';
	
	if (map.selectedObjectRequest!=""){
	
		if (map.selectedObjectRequest.indexOf('decyzje')==0){
			var parametry={param:"infoDecyzja",id:rekordId,sciezka:sciezkaWdr};	
			BEngine.Ajax.post('skrypty/ajax/ajax_decyzje.php',parametry,function(obj){
				actionWindow.getWorkspaceDiv().innerHTML = obj.responseText;		
			});
		} else {
			BEngine.Ajax.post('skrypty/bengine/ajax_pobierz_info.php',{adres:map.selectedObjectRequest},function(object){			
				actionWindow.getWorkspaceDiv().innerHTML = object.responseText;					
			});	
		}
	}
}

function showObjectAction(obiekt){
	if (obiekt.error == 0){					
		/* coś znaleziono i jest oznaczenie na mapie*/
		if ((obiekt.zew_tabela !="")||(obiekt.tabela !="")){
			map.refresh(true,'aktywne_obiekty');
			map.clearObjectAction('<b>'+obiekt.opis+'</b>');
			
			if ((obiekt.adres_wms!="")&&(obiekt.warstwa_wms!="")){
				if (obiekt.coor!=""){
					var tmp = obiekt.coor.split(" ");
					if ((tmp[0])&&(tmp[0]!="")) x = parseFloat(tmp[0]); 
					if ((tmp[1])&&(tmp[1]!="")) y = parseFloat(tmp[1]); 
					var req = BEngine.iGML.WMS.createGetFeatureInfoRequest(obiekt.adres_wms,obiekt.wersja_wms,obiekt.warstwa_wms,{xmin:x-100,ymin:y-100,xmax:x+100,ymax:y+100},100,100,'EPSG:2180',50,50);		
					map.selectedObjectRequest = req;
				} else {
					map.selectedObjectRequest = "";
				}
			} else {
				map.selectedObjectRequest = "";
			}
			
			if ((obiekt.adres_wms!="")&&(obiekt.warstwa_wms!="")){
				map.addObjectAction('Szczegóły',function(){
					actionWindow.show();

					actionWindowVisible	= true;
					fillDetailObjectAction();				
				});
				if (actionWindowVisible	== true){
					/* fillDetailObjectAction(); */		
				}
			}
			
			if (obiekt.edit =="1"){
				map.addObjectAction('Edytuj',function(){
					edycja();
				});	
				map.addObjectAction('Usuń',function(){
					usun();
				});					
			}
			
			map.showObjectAction();
		} 
		
		if (obiekt.id!=0){
			if (zalog==true){
				rekordId = obiekt.id;
				tabela = obiekt.tabela;
				onClickRekord(obiekt.tabela,obiekt.id);
			}
		}

	} 
}

function init(zalogowany,kto,logowanie,host,sciezka,naglowekSerwisu,ter,inFrame,box,x_widok,y_widok,scale_widok,wydruk_mz,teryt_mpa,instrukcjaMZ,wybory,dos,ver,tok,dec,pln,bud,glb,uwid,ued,xmin,ymin,xmax,ymax){
	teryt = ter;
	var bx = box.split(',');
	zalog = zalogowany;
	version = ver;
	token = tok;
	if (uwid){
		var tmp = uwid.split(",");
		for (var i=0;i<tmp.length;i++)
		upr_wid[tmp[i]] = 1;
	}
	if (ued){
		var tmp = ued.split(",");
		for (var i=0;i<tmp.length;i++)
		upr_ed[tmp[i]] = 1;		
	}
	if (dec == "1"){
		iGeoDecyzje = true;
	}
	if (pln == "1"){
		iGeoPlan = true;
	}
	if (bud == "1") szukajBudynki = true;
	if (glb == "1") iGeoGleby = true;
	mainBBox = new BEngine.iGML.Box(parseFloat(bx[0]),parseFloat(bx[1]),parseFloat(bx[2]),parseFloat(bx[3]));

	
	sciezkaWdr = sciezka;
	hostWdr = host;
	BEngine.start('http://'+host+'/skrypty/');
	BEngine.naglowekSerwisu = naglowekSerwisu;
	BEngine.wdrozenieSciezka = sciezka;
	var offsetTop = 37;
	var backParam = new BEngine.Controls.BackParam('#fff',sciezka+'obrazki/top.png','no-repeat','top left');
	if (inFrame==1) {
		backParam = null;
		offsetTop = 0;
	}
	BEngine.Interface.init({width:null},function(rootPanel){
		rootPanel.setMinimalSize(760,460);
		mainDiv = rootPanel.getWorkspaceDiv();
		
	
		var pan = new BEngine.Controls.Panel({x:0,y:0,width:rootPanel.getSize()[0],height:rootPanel.getSize()[1],backParam:backParam,aLeft:true,aTop:true,aRight:true,aBottom:true},rootPanel);
	
		if ((zalogowany==false)&&(inFrame==0)){
			var panLog = new BEngine.Controls.Panel({x:pan.getSize()[0]-380,y:1,width:375,height:24,aLeft:false,aTop:true,aRight:true,aBottom:false},rootPanel);
		
			panLog.div.style.align = 'right';
			var t= '';
			t = '<form style="padding:0px;margin:0px" method="post" action="index.php">'
			t += '<table><tr>';
			t += '<td style="color:#fff;font-weight:bold"> Login: </td>';			
			t += '<td><input style="font-size:11px;width:100px" name="login"/></td>'
			t += '<td style="color:#fff;font-weight:bold"> Hasło: </td>';
			t += '<td><input style="font-size:11px;width:100px" name="haslo" type="password"/></td>'
			t += '<td><input style="font-size:11px" name="btnLoguj" type="submit" value="Zaloguj"/></td>'
			t += '</tr></table>';
			t += '</form>';
			if (logowanie==true)
			panLog.div.innerHTML = t;					
		} 
		if (zalogowany==true){
			var panLog = new BEngine.Controls.Panel({x:pan.getSize()[0]-380,y:1,width:375,height:24,aLeft:false,aTop:true,aRight:true,aBottom:false},rootPanel);
		
			panLog.div.align = 'right';
			var t= '';
			t += '<table><tr>';
			t += '<td style="color:#fff;font-weight:bold"> '+kto+' </td>';			
			t += '<td><input style="font-size:11px" type="button" onclick="wyloguj()" value="Wyloguj"/></td>'
			if (dos == '1')
			t += '<td><input style="font-size:11px" type="button" onclick="administracja()" value="Administracja"/></td>'
			t += '</tr></table>';
			panLog.div.innerHTML = t;					
		} 
		
		var liderPos = 350;
		if (inFrame==1) liderPos = 260;
		
		var span = new BEngine.Controls.SlidePanel({leftWidth:liderPos,minLeftWidth:300,minRightWidth:400,x:4,y:offsetTop,width:rootPanel.getSize()[0]-8,height:rootPanel.getSize()[1]-offsetTop-4,backParam:new BEngine.Controls.BackParam('#fff'),aLeft:true,aTop:true,aRight:true,aBottom:true},pan);
		
		
		var rp = span.getRightPanel();
		
		var extPan2 = new BEngine.Controls.ExtPanel({x:0,y:0,width:rp.getSize()[0],height:rp.getSize()[1],aRight:true,aBottom:true},rp);
		extPan2.addEvent('resize',function(){
			//alert('sdfds');
		});
		
	
		var lp = span.getLeftPanel();
		
		
		var extPan = new BEngine.Controls.ExtPanel({x:0,y:0,width:lp.getSize()[0],height:lp.getSize()[1],aRight:true,aBottom:true},lp);
		
		var offset = 0;
		offset = 28;
					
		var h = extPan.getWorkspaceSize()[1]-offset;		
		//layinfo = new BEngine.Controls.VerticalSlidePanel({minBottomHeight:130,topHeight:Math.round(h*0.6),x:0,y:offset,keepRatio:true,width:extPan.getWorkspaceSize()[0],height:h,aLeft:true,aTop:true,aRight:true,aBottom:true},extPan);
		treePanel = new BEngine.Controls.Panel({x:0,width:extPan.getWorkspaceSize()[0],height:extPan.getWorkspaceSize()[1]-4-offset,y:offset+2,aLeft:true,aTop:true,aRight:true,aBottom:true},extPan);
		
		
		editPanel = new BEngine.Controls.Panel({x:0,y:offset,width:extPan.getWorkspaceSize()[0],height:h,aLeft:true,aTop:true,aRight:true,aBottom:true},extPan);
		editPanel.hide();

		if (inFrame==1)  offset = 0;
		findPanel = new BEngine.Controls.Panel({x:0,y:offset,width:extPan.getWorkspaceSize()[0],height:h,aLeft:true,aTop:true,aRight:true,aBottom:true},extPan);

		var offset = 3;
		
		
		if (teryt.length<16){
			var tmp = teryt.length;
			if (tmp >6) tmp = 6;
			var wysokosc = ((5-Math.floor(tmp/2))*23)+38+26;
			var extPanSD = new BEngine.Controls.ExtPanel({x:0,y:offset,width:findPanel.getSize()[0],height:wysokosc,aRight:true,text:'Szukanie działki',barImage:'green'},findPanel);
			offset+= wysokosc;
			var left = 70;
			
			var offset2 = 3;
			if (teryt.length == 0){
				left = 90;
				var wojCmb = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSD.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSD);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSD.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Wojewodztwo:';
				offset2+=23;
			}
			if (teryt.length <=2){
				var powCmb = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSD.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSD);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSD.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Powiat:';				
				offset2+=23;
			}
			if (teryt.length <= 4){
				var gmiCmb = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSD.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSD);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSD.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Gmina:';				
				offset2+=23;
			}
			if (teryt.length <= 8){
				var obrCmb = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSD.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSD);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSD.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Obreb:';				
				offset2+=23;
			}
			
			var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
			extPanSD.getWorkspaceDiv().appendChild(div); 
			div.innerHTML= 'Numer:';				
			var numerText = new BEngine.Controls.Panel({x:left,y:offset2,height:20,width:extPanSD.getWorkspaceWidth()-left-15},extPanSD);		
			var numerInput = document.createElement('input');					
			numerInput.style.fontSize = '11px';
			numerInput.style.position = 'absolute';
			numerInput.style.top='0px';
			numerInput.style.width = '80px';
			numerInput.style.margin = '0px';
			numerInput.style.height = '14px';
			numerText.getWorkspaceDiv().appendChild(numerInput); 
			offset2+=23;
			
			var szuDzaBut = new BEngine.Controls.Button({x:3,y:offset2,height:22,text:'Pokaż',width:50,aLeft:true,aRight:false,aTop:true},extPanSD);
			function wczytajWojewodztwa(){
				var parametry={sciezka:sciezka};
				wojCmb.removeAll();
				wojCmb.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_wojewodztw.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = wojCmb.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);
							ob.xmin = obiekt.data[i].xmin;
							ob.ymin = obiekt.data[i].ymin;
							ob.xmax = obiekt.data[i].xmax;
							ob.ymax = obiekt.data[i].ymax;							
						}
					}
				})			
			}				
			function wczytajPowiaty(wojTeryt){
				var parametry={woj_teryt:wojTeryt,sciezka:sciezka};
				powCmb.removeAll();
				powCmb.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_powiatow.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = powCmb.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);
							ob.xmin = obiekt.data[i].xmin;
							ob.ymin = obiekt.data[i].ymin;
							ob.xmax = obiekt.data[i].xmax;
							ob.ymax = obiekt.data[i].ymax;							
						}
					}
				})			
			}			
			function wczytajGminy(powTeryt){
				var parametry={pow_teryt:powTeryt,sciezka:sciezka};
				gmiCmb.removeAll();
				gmiCmb.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_gmin.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = gmiCmb.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);
							ob.xmin = obiekt.data[i].xmin;
							ob.ymin = obiekt.data[i].ymin;
							ob.xmax = obiekt.data[i].xmax;
							ob.ymax = obiekt.data[i].ymax;		
						}
					}
				})			
			}			
			function wczytajObreby(gminaTeryt){
				var parametry={gmi_teryt:gminaTeryt,sciezka:sciezka};
				obrCmb.removeAll();
				obrCmb.addItem('','');
				//BEngine.Interface.LoadingPanel.show();
				BEngine.Ajax.post('skrypty/ajax/lista_obrebow.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = obrCmb.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);
							ob.xmin = obiekt.data[i].xmin;
							ob.ymin = obiekt.data[i].ymin;
							ob.xmax = obiekt.data[i].xmax;
							ob.ymax = obiekt.data[i].ymax;		
						}
						//BEngine.Interface.LoadingPanel.hide();
					}
				});			
			}
			
			if (gmiCmb)
			gmiCmb.onchange = function(){
				if (gmiCmb.getSelectedItem().value!=''){
					wczytajObreby(gmiCmb.getSelectedItem().value);
				}
			}
			if (powCmb)
			powCmb.onchange = function(){
				if (powCmb.getSelectedItem().value!=''){
					wczytajGminy(powCmb.getSelectedItem().value);
					obrCmb.removeAll();
					numerInput.value = '';
				}
			}
			if (wojCmb)
			wojCmb.onchange = function(){
				if (wojCmb.getSelectedItem().value!=''){
					wczytajPowiaty(wojCmb.getSelectedItem().value);
				}
			}
			
			if (teryt.length == 0){
				wczytajWojewodztwa();
			} else
			if (teryt.length ==2){
				wczytajPowiaty(teryt);	
			} else 
			if (teryt.length ==4){
				wczytajGminy(teryt);	
			} else 
			if (teryt.length >=6){
				wczytajObreby(teryt);	
			} 			
			
			szuDzaBut.onclick = function(){
				var woj = '';			
				var pow = '';
				var gmi = '';
				var obr = '';
				var num = '';
				
				if ((wojCmb)&&(wojCmb.getSelectedItem())){
					woj = wojCmb.getSelectedItem().value;
				}
				if ((powCmb)&&(powCmb.getSelectedItem())){
					pow = powCmb.getSelectedItem().value;
				}				
				if ((gmiCmb)&&(gmiCmb.getSelectedItem())){
					gmi = gmiCmb.getSelectedItem().value;
				}	
				if ((obrCmb)&&(obrCmb.getSelectedItem())){
					obr = obrCmb.getSelectedItem().value;
				}				
				num = numerInput.value;
				
				if (num!=''){
					var parametry={numer:num,obreb:obr,token:token,sciezka:sciezka};
					BEngine.Interface.LoadingPanel.show();
					BEngine.Ajax.post('skrypty/ajax/szukaj_dzialki_new.php',parametry,function(obj){
						var ob =eval( "("+obj.responseText+")"); 
						BEngine.Interface.LoadingPanel.hide();
						if (ob.blad){ 
							alert(ob.blad);
						} else {
							map.setViewFromBox(new BEngine.iGML.Box(ob.xmin,ob.ymin,ob.xmax,ob.ymax));	
						}
					});				
				} else 
				if (obr!='') {
					var ob = obrCmb.getSelectedItem();
					map.setViewFromBox(new BEngine.iGML.Box(ob.xmin,ob.ymin,ob.xmax,ob.ymax));						
				} else 
				if (gmi!=''){
					var ob = gmiCmb.getSelectedItem();
					map.setViewFromBox(new BEngine.iGML.Box(ob.xmin,ob.ymin,ob.xmax,ob.ymax));					
				} else 
				if (pow!=''){
					var ob = powCmb.getSelectedItem();
					map.setViewFromBox(new BEngine.iGML.Box(ob.xmin,ob.ymin,ob.xmax,ob.ymax));					
				} else 
				if (woj!=''){
					var ob = wojCmb.getSelectedItem();
					map.setViewFromBox(new BEngine.iGML.Box(ob.xmin,ob.ymin,ob.xmax,ob.ymax));	
				}
			
			
			}
			
			numerInput.onkeypress = function(e){
				onkeyszukaj(e,szuDzaBut.onclick);
			}	
		}


		if ((host!='')){
			var terytImpa = '';
			
			if (tmp >6) tmp = 6;
			var wysokosc = ((6-Math.floor(tmp/2))*23)+38+26;
			var extPanSA = new BEngine.Controls.ExtPanel({x:0,y:offset,width:findPanel.getSize()[0],height:wysokosc,aRight:true,text:'Szukanie adresu',barImage:'blue'},findPanel);
			offset+= wysokosc;
			var left = 80;			
			var offset2 = 3;
			if (teryt.length == 0){
				left = 90;
				var wojCmbA = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSA.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSA);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSA.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Wojewodztwo:';
				offset2+=23;
			}
			if (teryt.length <=2){
				var powCmbA = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSA.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSA);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSA.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Powiat:';				
				offset2+=23;
			}
			if (teryt.length <= 4){
				var gmiCmbA = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSA.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSA);
				var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
				extPanSA.getWorkspaceDiv().appendChild(div); 
				div.innerHTML= 'Gmina:';				
				offset2+=23;
			}

			var mieCmb = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSA.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSA);
			var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
			extPanSA.getWorkspaceDiv().appendChild(div); 
			div.innerHTML= 'Miejscowość:';				
			offset2+=23;
		
			var uliCmb = new BEngine.Controls.ComboBox({x:left,y:offset2,width:extPanSA.getWorkspaceWidth()-left-5,height:20,aRight:true},extPanSA);
			var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
			extPanSA.getWorkspaceDiv().appendChild(div); 
			div.innerHTML= 'Ulica:';				
			offset2+=23;			
		
			var div = BEngine.Controls.createDiv(3,offset2+2,null,null,left-7,20);
			extPanSA.getWorkspaceDiv().appendChild(div); 
			div.innerHTML= 'Numer:';				
			var numerTextA = new BEngine.Controls.Panel({x:left,y:offset2,height:20,width:extPanSA.getWorkspaceWidth()-left-15},extPanSA);		
			var numerInputA = document.createElement('input');					
			numerInputA.style.fontSize = '11px';
			numerInputA.style.position = 'absolute';
			numerInputA.style.top='0px';
			numerInputA.style.width = '80px';
			numerInputA.style.margin = '0px';
			numerInputA.style.height = '14px';
			numerTextA.getWorkspaceDiv().appendChild(numerInputA); 
			offset2+=23;
			
			var szuAdrBut = new BEngine.Controls.Button({x:3,y:offset2,height:22,text:'Pokaż',width:50,aLeft:true,aRight:false,aTop:true},extPanSA);

			function wczytajWojewodztwaA(){
				var parametry={sciezka:sciezka};
				wojCmbA.removeAll();
				powCmbA.removeAll();
				gmiCmbA.removeAll();
				mieCmb.removeAll();
				uliCmb.removeAll();
				
				wojCmbA.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_wojewodztw_adres.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = wojCmbA.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);
							ob.xmin = obiekt.data[i].xmin;
							ob.ymin = obiekt.data[i].ymin;
							ob.xmax = obiekt.data[i].xmax;
							ob.ymax = obiekt.data[i].ymax;							
						}
					}
				})			
			}				
			function wczytajPowiatyA(wojTeryt){
				var parametry={woj_teryt:wojTeryt,sciezka:sciezka};
				powCmbA.removeAll();
				gmiCmbA.removeAll();
				mieCmb.removeAll();
				uliCmb.removeAll();
				
				powCmbA.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_powiatow_adres.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = powCmbA.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);
							ob.xmin = obiekt.data[i].xmin;
							ob.ymin = obiekt.data[i].ymin;
							ob.xmax = obiekt.data[i].xmax;
							ob.ymax = obiekt.data[i].ymax;							
						}
					}
				})			
			}		
			function wczytajGminyA(powTeryt){
				var parametry={pow_teryt:powTeryt,sciezka:sciezka};
				gmiCmbA.removeAll();
				mieCmb.removeAll();
				uliCmb.removeAll();
				gmiCmbA.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_gmin_adres.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 

						for (var i=0;i<obiekt.data.length;i++){
							var ob = gmiCmbA.addItem(obiekt.data[i].nazwa,obiekt.data[i].teryt);		
						}
					}
				})			
			}
			function wczytajMiejscowosci(teryt){
				var parametry={teryt:teryt,sciezka:sciezka};
				mieCmb.removeAll();
				uliCmb.removeAll();
				mieCmb.addItem('','');
				BEngine.Ajax.post('skrypty/ajax/lista_miejscowosci.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 
						for (var i=0;i<obiekt.data.length;i++){
							var ob = mieCmb.addItem(obiekt.data[i].nazwa,obiekt.data[i].id);
							ob.teryt = teryt;
							terytImpa  = teryt;
						}
						if (mieCmb.getLength()==2){
							mieCmb.selectItemByIndex(1);
							mieCmb.onchange();
						}
					}
				})			
			}			
			function wczytajUlice(teryt,miejscowosc_id){
				var parametry={teryt:teryt,miejscowosc_id:miejscowosc_id,sciezka:sciezka};
				uliCmb.removeAll();
				uliCmb.addItem('brak ulicy','');
				BEngine.Ajax.post('skrypty/ajax/lista_ulic_nowy.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")"); 
					if (obiekt.error == 0){ 
						for (var i=0;i<obiekt.data.length;i++){
							var ob = uliCmb.addItem(obiekt.data[i].nazwa,obiekt.data[i].id);
						}
					}
				})			
			}
			
			if (teryt_mpa==''){
				if (teryt.length == 0){		
					wczytajWojewodztwaA();
				} else
				if (teryt.length ==2){
					wczytajPowiatyA(teryt);	
				} else 
				if (teryt.length ==4){
					wczytajGminyA(teryt);	
				} else 
				if (teryt.length >=6){
					wczytajMiejscowosci(teryt);	
				} 
			} else {
				wczytajMiejscowosci(teryt_mpa);		
			}
	
			if (wojCmbA)
			wojCmbA.onchange = function(){
				if (wojCmbA.getSelectedItem().value!=''){
					wczytajPowiatyA(wojCmbA.getSelectedItem().value);
				}
			}
			
	
			if (powCmbA)
			powCmbA.onchange = function(){
				if (powCmbA.getSelectedItem().value!=''){
					wczytajGminyA(powCmbA.getSelectedItem().value);
				}
			}
			
			if (gmiCmbA)
			gmiCmbA.onchange = function(){
				if (gmiCmbA.getSelectedItem().value!=''){
					wczytajMiejscowosci(gmiCmbA.getSelectedItem().value);
				}
			}			

			if (mieCmb)
			mieCmb.onchange = function(){
				if (mieCmb.getSelectedItem().value!=''){
					var item = mieCmb.getSelectedItem();
					wczytajUlice(item.teryt,item.value);
				}
			}
			
			numerInputA.onkeypress = function(e){
				onkeyszukaj(e,szuAdrBut.onclick);
			}
			var punktIconStyle = new BEngine.iGML.Overlays.PointStyle({image:'obrazki/marker_adres.png',width:35,height:34,xCenter:10,yCenter:32});

			var linieOverlay = new Array();
			
			szuAdrBut.onclick = function(){
				var miejscowosc_id = mieCmb.getValue();
				if (miejscowosc_id == "") return 0;
				
				var ulica_id = uliCmb.getValue();
				var numer = numerInputA.value;
				if (numer=='numer...') numer = '';
				
				
				
				if ((szukanieAdresuMarker!=null)||(linieOverlay.length>0)){
					map.removeOverlays();
					linieOverlay.length = 0;
				}

				
				
				BEngine.Ajax.post('skrypty/ajax/szukaj_adres_nowy.php',{miejscowosc_id:miejscowosc_id,ulica_id:ulica_id,numer:numer,sciezka:sciezka,teryt:terytImpa,token:token},function(obj){
					var obiekt =eval( "("+obj.responseText+")");
					if (obiekt.error == 0){
						if (obiekt.typ=="punkt"){
							map.setViewFromBox(new BEngine.iGML.Box(obiekt.x-50,obiekt.y-50,obiekt.x+50,obiekt.y+50));	
						}
						if (obiekt.typ=="ulica"){
							if (obiekt.xmin!=0)
							map.setViewFromBox(new BEngine.iGML.Box(obiekt.xmin,obiekt.ymin,obiekt.xmax,obiekt.ymax));	
						}		
						if (obiekt.typ=="miejscowosc"){
							if (obiekt.xmin!=0)
							map.setViewFromBox(new BEngine.iGML.Box(obiekt.xmin,obiekt.ymin,obiekt.xmax,obiekt.ymax));	
						}						
					} else {
						alert('Brak adresu');
					}
				});		
			}	
			
		} 


		if (wybory!=''){	
			extPanWy = new BEngine.Controls.ExtPanel({x:0,y:offset,width:findPanel.getSize()[0],height:195,aRight:true,text:'Gdzie głosuję?',barImage:'http://puszczykowo2.e-mapa.net/skrypty/bengine/images/bars/poland.png'},findPanel);
			offset+=195;
			var inputFraza2 = document.createElement('input');					
			inputFraza2.style.fontSize = '11px';
			inputFraza2.style.position = 'absolute';
			inputFraza2.style.top='5px';		
			inputFraza2.style.left = '2px';
			inputFraza2.style.width = '241px';			
			inputFraza2.style.height = '16px';
			inputFraza2.style.fontStyle='italic';
			inputFraza2.value = 'Wpisz adres...';
			extPanWy.getWorkspaceDiv().appendChild(inputFraza2);
			inputFraza2.onfocus = function(){
				if (!this.inited){
					this.value = '';
					this.style.fontStyle='normal';
					this.inited = true;
				}
			}
			
			var szuWybBut = new BEngine.Controls.Button({x:251,y:4,height:20,text:'Szukaj',width:60,aLeft:true,aRight:false,aTop:true},extPanWy);

			var wynikiPanel = new BEngine.Controls.Panel({backParam:new BEngine.Controls.BackParam('#fafafa'),x:3,y:28,height:127,width:extPanWy.getWorkspaceWidth()-6,aLeft:true,aRight:true,aTop:true,aBottom:true},extPanWy);
			wynikiPanel.getWorkspaceDiv().style.overflow = 'auto';
			var wyndiv = wynikiPanel.getWorkspaceDiv();
			
			wyndiv.style.padding = '5px';
			wyndiv.innerHTML = 'W tym miejscu możesz sprawdzić w której komisji obwodowej możesz głosować.';
			
			szuWybBut.onclick = function(){
				var fraza = inputFraza2.value;
				if ((fraza=='') ||(fraza=='Wpisz adres...')) {
					wyndiv.innerHTML = '<span style="color:#f00">Wpisz adres!</span>';
					return 0;
				}	
				BEngine.Ajax.post('skrypty/ajax/szukaj_obwodu.php',{param:wybory,fraza:fraza,sciezka:sciezka},function(obj){
					var obiekt =eval( "("+obj.responseText+")");
					if (obiekt.error){
						wyndiv.innerHTML = '<span style="color:#000">'+obiekt.error+'</span>';
					} else {
						var tab = wybory.split(',');
						//włšzenei widzocznoci wartswy
						for (var ii=0;ii<theSer.layers.length;ii++){
							var w = theSer.layers[ii];
							if (w.name == tab[0]){
								w.checked = true;
								w.treeItem.setCheck(true);
							}
						}
						wyndiv.innerHTML = '';
						if (obiekt.siedziba){ //jeden znaleziono
							var div = document.createElement('div');
							div.style.cursor = 'pointer';
												
							div.innerHTML = '<div style="font-weight:bold">Znaleziono w:</div>'+obiekt.lok+'<div style="font-weight:bold">Siedziba komisji wyborczej:</div>'+obiekt.siedziba;
							div.data = obiekt;
							div.onclick = function(){
								wmsRysuj.url = urlRysuj+'&line_width=8&line_color=54b7ea&tabela='+tab[0]+'&id='+this.data.id+'&warunek_tabela='+warunekRysuj;					
								map.setViewFromBox(new BEngine.iGML.Box(this.data.xmin,this.data.ymin,this.data.xmax,this.data.ymax));	
							}
								
						
							wyndiv.appendChild(div);
						}
						if (obiekt.lista){ //jeden lista
							var lab = document.createElement('div');
							lab.style.fontWeight = 'bold';								
							lab.innerHTML = 'Wybierz swoją lokalizację:';			
							wyndiv.appendChild(lab);
							var color = '#f9f9f9';
							for (var i=0;i<obiekt.lista.length;i++){
								if ((i%2)==0) color = '#f5f5f5'; else color = '#fcfcfc';
							
								var o = obiekt.lista[i];
								var div = document.createElement('div');
								div.backColor = color;
								div.style.backgroundColor = color;
								div.style.cursor = 'pointer';
								wyndiv.appendChild(div);
								
								div.innerHTML = o[1];
								div.data = o;
								div.onmouseover = function(){
									this.style.backgroundColor = '#e4e4e4';
								}
								div.onmouseout = function(){
									this.style.backgroundColor = this.backColor;
								}								
								div.onclick = function(){
									var miejsce = this.data[1];
									BEngine.Ajax.post('skrypty/ajax/szukaj_obwodu.php',{akcja:'siedziba',param:wybory,id:this.data[0],sciezka:sciezka},function(obj){
										var obiekt =eval( "("+obj.responseText+")");
										wyndiv.innerHTML = '';
										if (obiekt.siedziba){ //jeden znaleziono
											var div = document.createElement('div');
											div.style.cursor = 'pointer';
												
											div.innerHTML = '<div style="font-weight:bold">Lokalizacja w:</div>'+miejsce+'<div style="font-weight:bold">Siedziba komisji wyborczej:</div>'+obiekt.siedziba;
											div.data = obiekt;
											div.onclick = function(){
											wmsRysuj.url = urlRysuj+'&line_width=8&line_color=54b7ea&tabela='+tab[0]+'&id='+this.data.id+'&warunek_tabela='+warunekRysuj;					
											map.setViewFromBox(new BEngine.iGML.Box(this.data.xmin,this.data.ymin,this.data.xmax,this.data.ymax));	
											}
											wyndiv.appendChild(div);
										}
									});
								}
							
							}
						}
					}					
				});
			}
			
			inputFraza2.onkeypress = function(e){
				onkeyszukaj(e,szuWybBut.onclick);
			}
			
		}
		
		var findPanelDiv = findPanel.getWorkspaceDiv();
		
		offsetLeft = 10;
		offset+=7;
		var szukajObiektowButton = new BEngine.Controls.Button({x:offsetLeft,y:offset,height:22,text:'Szukaj obiektów',width:146,aLeft:true,aRight:false,aTop:true},findPanelDiv);
		offsetLeft+=156;
		szukajObiektowButton.onclick = function(){
			extPanSO.show();
		}		
		var idzDoWspButton = new BEngine.Controls.Button({x:offsetLeft,y:offset,height:22,text:'Idź do współrzędnych',width:146,aLeft:true,aRight:false,aTop:true},findPanelDiv);
		offsetLeft+=156;
		idzDoWspButton.onclick = function(){
			map.goTo();
		}		
		offset+=30;
		offsetLeft = 10;
		if (szukajBudynki==true){
			tworzModulSzukaniaBudynkow();
			var szukajBudynkuButton = new BEngine.Controls.Button({x:offsetLeft,y:offset,height:22,text:'Szukaj budynku',width:146,aLeft:true,aRight:false,aTop:true},findPanelDiv);
			offsetLeft+=130;
			szukajBudynkuButton.onclick = function(){
				budynki.show();
			}
		}
		
		

		
		//extPanSO = new BEngine.Controls.ExtPanel({x:0,y:offset,width:findPanel.getSize()[0],height:64,aRight:true,text:'Szukanie obiektów'},findPanel);
		extPanSO = new BEngine.Controls.Window({text:'Szukanie obiektów',isMaximizeButton:false,borderStyle:'SIZABLE',startPosition:'CENTER',width:335,height:245});
		extPanSO.onclose = function(){
			this.hide();
			return false;
		}
					
		var extPanSODiv = extPanSO.getWorkspaceDiv();
		
		warstwyCmb = new BEngine.Controls.ComboBox({x:5,y:5,width:130,height:20,aRight:true},extPanSODiv);
		if (BEngine.Utils.isIE()==false) warstwyCmb.select.style.fontStyle='italic';
		var warstwyCmbOtw = false;
		warstwyCmb.onclick = function(){
			if (warstwyCmbOtw == false){
				if (BEngine.Utils.isIE()==false){
					this.select.style.fontStyle='normal';
					this.select.options[0] = null;	
				}
				
				warstwyCmbOtw = true;
			}
		}
		
		var frazaText = new BEngine.Controls.Panel({x:140,y:5,height:20,width:114,aLeft:false,aRight:true,aTop:true},extPanSODiv);		
		var inputFraza = document.createElement('input');					
		inputFraza.style.fontSize = '11px';
		inputFraza.style.position = 'absolute';
		inputFraza.style.top='0px';		
		inputFraza.style.width = '100%';
		inputFraza.style.margin = '0px';
		inputFraza.style.height = '16px';
		inputFraza.style.fontStyle='italic';
		inputFraza.value = 'fraza...';
		if (BEngine.Utils.isIE()==false){
			inputFraza.style.padding = '1px 1px 1px 1px';		
		} else {
			inputFraza.style.padding = '0px';	
		}
		frazaText.div.appendChild(inputFraza);
		inputFraza.onkeypress = function(e){
			onkeyszukaj(e,szuObBut.onclick);
		}
		
		var inputFrazaOtw = false;
		inputFraza.onclick = function(){
			if (inputFrazaOtw == false){
				if (BEngine.Utils.isIE()==false){
					this.style.fontStyle='normal';
				}
				this.value = '';
				inputFrazaOtw = true;
			}
		}
		
		szuObBut = new BEngine.Controls.Button({x:260,y:5,height:20,text:'Szukaj',width:60,aLeft:false,aRight:true,aTop:true},extPanSODiv);
		
		//var wynikiPanel = new BEngine.Controls.Panel({backParam:new BEngine.Controls.BackParam('#eaeaea'),x:3,y:28,height:-2,width:extPanSODiv.clientWidth-6,aLeft:true,aRight:true,aTop:true,aBottom:true},extPanSODiv);
		var wynikiPanel = cad(0,30,0,0,null,null,'background-color:#eaeaea;overflow:auto');
		extPanSODiv.appendChild(wynikiPanel);
		
		var obiektyIconStyle = new BEngine.iGML.Overlays.PointStyle({image:'obrazki/marker.png',width:20,height:34,xCenter:10,yCenter:32});
		
		szuObBut.onclick = function(){
			var tabela = warstwyCmb.getSelectedItem().value;
			if (tabela=='0'){
				alert('Wybierz warstwę');
				return 0;
			}
			var fraza = inputFraza.value;
			if ((fraza=='') ||(fraza=='fraza...')) {
				fraza='';
				//return 0;
			}
			
			var div = wynikiPanel;
			div.style.backgroundImage = 'url(skrypty/obrazki/processing.gif)';
			div.style.backgroundRepeat = 'no-repeat';
			div.style.backgroundPosition = 'center center';
			
			BEngine.Ajax.post('skrypty/ajax/szukaj_obiekt.php',{tabela:tabela,fraza:fraza,sciezka:sciezka},function(obj){
				var obiekt =eval( "("+obj.responseText+")");
				if (obiekt.error == 0){
					for (var ii=0;ii<theSer.layers.length;ii++){
						var w = theSer.layers[ii];
						if (w.name == tabela){
							w.checked = true;
							w.treeItem.setCheck(true);
						}
					}
					
					var div = wynikiPanel;
					div.innerHTML = '';
					div.style.backgroundImage = 'none';
					
					var c = 0;
					for (var i=0;i<obiekt.dane.length;i++){
						var row = obiekt.dane[i];
						var d = document.createElement('div');
						d.onmouseover = function(){
							this.style.backgroundColor = '#d1eaf8';
						}
						d.onmouseout = function(){
							this.style.backgroundColor = this.backColor;
						}						
						div.appendChild(d);
						d.innerHTML = row.nazwa;
						if (row.fragment!='') d.innerHTML+=' - '+row.fragment;
						d.style.padding = "3px 4px 3px 4px";
						d.style.fontSize = '11px';
						d.style.overflow = 'hidden';	
						d.xmin = row.xmin;
						d.ymin = row.ymin;
						d.xmax = row.xmax;
						d.ymax = row.ymax;
						if (c==0) d.backColor = '#f9f9f9'; else d.backColor = '#eaeaea';
						d.style.backgroundColor = d.backColor;
						
						d.row_id = row.id
						d.onclick = function(){
							
							var parametry={tabela:tabela,id:this.row_id,sciezka:sciezka,token:token};
							BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
								var obiekt =eval( "("+obj.responseText+")"); 
								if (obiekt.error == 0){
									showObjectAction(obiekt);
								}
							});
							
							map.setViewFromBox(new BEngine.iGML.Box(this.xmin,this.ymin,this.xmax,this.ymax));	
						}
						c++;
						if (c==2) c=0;
					}
				} 
				if (obiekt.dane.length==0){
					div.innerHTML = '<div style="padding:2px 4px 2px 4px;font-size:11px">Nic nie znaleziono</div>';
				}
				
			});		
		}		

		extPanSO.hide();

		
		findPanel.hide();		
		
		var toolLay = new BEngine.Controls.Toolbar({y:1,height:26,fullWeight:false,fontSize:12},extPan);
		bLayer = new BEngine.Controls.ToolbarCheckButton({image:'obrazki/layers.png',text:'Warstwy',group:45645,width:85},toolLay);		
		bSzukaj = new BEngine.Controls.ToolbarCheckButton({image:'obrazki/szukaj.png',text:'Szukaj',group:45645,width:85},toolLay);	
		if (inFrame==1) toolLay.hide();
	
		
	
		if (zalogowany==true){
			bEdit = new BEngine.Controls.ToolbarCheckButton({image:'obrazki/edit.png',text:'Moduły',group:45645,width:85},toolLay);				
			bEdit.onclick = function(){pokazEdit();}
		}
		
		if (inFrame==1) 
		pokazSzukaj();
		else
		pokazWarstwy();
		
		bLayer.onclick = function(){pokazWarstwy();}		
		bSzukaj.onclick = function(){ pokazSzukaj(); };
	
		
		if (iGeoDecyzje == true)
		tworzModulDecyzji();
		if (iGeoPlan == true)
		tworzModulGeoPlan();
		/* tworzModulAnaliz(); */
		tworzOknoWykaz();
		if (iGeoGleby == true) tworzModulGleby();
	
		

		if ((zalogowany==true)&&(1==2)){	
			var maptabpan = new BEngine.Controls.VerticalSlidePanel({topHeight:Math.round(extPan2.getWorkspaceSize()[1]*0.3),x:0,y:28,keepRatio:true,width:extPan2.getWorkspaceSize()[0],height:extPan2.getWorkspaceSize()[1]-28,aLeft:true,aTop:true,aRight:true,aBottom:true},extPan2);
			mapPanel = maptabpan.getBottomPanel();
		} else {
			mapPanel = extPan2;
		}
		
		if ((zalogowany==true)&&(1==2)){	
			var tp = maptabpan.getTopPanel();
			tabPanel = tp;
			
			tabPanel.div.innerHTML = '<div style="position:absolute;top:0px;left:0px;right:0px;bottom:0px;border:1px solid #999;background-color:#ddd"><table style="width:100%;height:100%" ><tr><td style="font-size:11px" align="center">Wybierz warstwę tematyczną z okna po lewej stronie.</td></tr></table></div>';
			
			tableWykaz = new BEngine.Controls.Table({x:0,y:0,width:tp.getWorkspaceSize()[0],height:tp.getWorkspaceSize()[1],aLeft:true,aTop:true,aRight:true,aBottom:true,borderColor:'#999'},tp);
			tableWykaz.hide();
			

			var tool2 = new BEngine.Controls.Toolbar({y:1,height:22,fullWeight:false},extPan2);
			var b1 = new BEngine.Controls.ToolbarCheckButton({image:'skrypty/obrazki/table.png'},tool2);
			var b2 = new BEngine.Controls.ToolbarCheckButton({image:'skrypty/obrazki/map.png'},tool2);
		
			b1.setCheck(true);
			b2.setCheck(true);
			
			b2.onclick = function(ch){
				if (ch == false){
					if (b1.checked == true){
						maptabpan.showOnlyTop();
						if (tabelaZaladowana == false)
						wypelnijTabele();					
					} else {
						this.setCheck(true);
					}
				} else {
					maptabpan.showBoth();
					if (tabelaZaladowana == false)
					wypelnijTabele();
				}
			}

			b1.onclick = function(ch){
				if (ch == false){
					if (b2.checked == true){
						maptabpan.showOnlyBottom();
					} else {
						this.setCheck(true);
					}
				}else {
					maptabpan.showBoth();
					if (tabelaZaladowana == false)
					wypelnijTabele();
				}
			}
			
			var tool = new BEngine.Controls.Toolbar({x:60,y:1,height:22,fullWeight:false},extPan2);


			var b41 = new BEngine.Controls.ToolbarButton({text:'Odśwież'},tool);	


			
			b41.onclick = function(){
				zaladujTabele();
			}		
			var width = extPan2.getWorkspaceWidth();
			filtryPanel = new BEngine.Controls.Panel({x:140,y:2,width:width-240,height:22,aLeft:true,aTop:true,aRight:true,aBottom:false},extPan2);
			pagesPanel = new BEngine.Controls.Panel({x:width-100,y:2,width:100,height:22,aLeft:false,aTop:true,aRight:true,aBottom:false},extPan2);
			var tx = document.createElement('span');
			tx.innerHTML ='strona: ';
			pagesPanel.getWorkspaceDiv().appendChild(tx);
			pagesSelect = document.createElement('select');
			pagesSelect.style.fontSize = '11px';
			pagesPanel.getWorkspaceDiv().style.textAlign = 'right';
			pagesPanel.getWorkspaceDiv().appendChild(pagesSelect);
			pagesPanel.hide();
		}	
		
		map = new BEngine.iGML.Map(mapPanel,treePanel,wydruk_mz,instrukcjaMZ);

		map.setMaxScale(15);
		map.loged = zalogowany;
		map.onclick = function(x,y){
			
			var tmp = new Array();
			for (var i=0;i<them_tab.length;i++){
				if ((them_tab[i].checked == true)&&(map.scale>=them_tab[i].visibleFrom)&&(map.scale<=them_tab[i].visibleTo)){
					tmp.push(them_tab[i].name);
				}
			}
			
			var parametry={x:x,y:y,sciezka:sciezka,skala:map.scale,token:token,layers:tmp.join(','),layers2:pobierzWidoczneWarstwy()};
			BEngine.Ajax.post('skrypty/ajax/zaznacz_obiekt.php',parametry,function(obj){				
				var obiekt =eval( "("+obj.responseText+")"); 
				obiektAktywny.data = obiekt.data;
				obiektAktywny.identyfikator = obiekt.identyfikator;
				showObjectAction(obiekt);
			});
		}
		
		actionWindow = new BEngine.Controls.Window({text:'Informacja o obiektach w punkcie',isMaximizeButton:false,borderStyle:'SIZABLE',startPosition:'CENTER',width:300,height:350});
		actionWindow.onclose = function(){
			this.hide();	
			actionWindowVisible	= false;		
			if (tryb!=null){
				anulujEdycje();
			}
			return false;
		}
		actionWindow.getWorkspaceDiv().style.backgroundColor = '#fff';
		actionWindow.getWorkspaceDiv().style.overflow = 'auto';
		actionWindow.hide();
		
		map.snapFunction = function(x,y,scale,callback){

			if ((iGeoGleby == true)&&(tabela == 'glb_kompleks')&&(gleby.snapCheckbox.checked == true)){
				gleby.infoSnap.innerHTML = '<img src="http://e-mapa.net/skrypty/bengine/images/igml/ladowanie_mini.gif"/>';
				
				var parametry={param:"snap",sciezka:sciezkaWdr,x:x,y:y,scale:scale,id:gleby.id};	
				BEngine.Ajax.post('skrypty/ajax/ajax_gleby.php',parametry,function(obj){
					var obiekt =eval( "("+obj.responseText+")");
					if (obiekt.id == 0){
						gleby.infoSnap.innerHTML = '';
					} else {
						gleby.infoSnap.innerHTML = '<span style="color:#72a60d">przyciągnięto</span>';
					}
					callback(obiekt.x,obiekt.y);
				});
			} else {
				if (iGeoGleby == true) gleby.infoSnap.innerHTML = '';
				callback(x,y);
			}
		}
		
		var parametry={sciezka:sciezkaWdr};	
		BEngine.Ajax.post('skrypty/ajax/ajax_init.php',parametry,function(obj){
			var obiekt =eval( "("+obj.responseText+")");;	
			ikonkaWT = obiekt.ikonka;	
			tabeleEdycja = obiekt.edycja;
			zaladujWarstwy(x_widok,y_widok,scale_widok,xmin,ymin,xmax,ymax);	
		});
	})
	
}

