function TDynamicTabs(b) {
	this.index=0;
	function a(d) {
		var c=jQuery(d);
		c.append('<ul><li><a href="#"></a></li></ul>');
		c.append("<div></div>");
		c.tabs( {
				add:
					function(g,f) {
						jQuery(f.tab).parents("li:first").append('<img class="ui-tabs-close" title="Zamknij" src="'+appUtils.baseUrl+'/images/close_x.png" style="margin-top:0pt;margin-right:4pt;cursor:pointer;" />').find("img").click(
								function() {
									c.tabs("remove",jQuery("li",c).index(jQuery(this).parents("li:first")[0]));
									if(c.tabs("length")==0) {c.hide()}
								}
						);
						var htmlStr1 = jQuery('input[name=input1]').val();
						var htmlStr2 = jQuery('input[name=input2]').val();
						if (htmlStr1 != '') {
							if (htmlStr2 != '') htmlStr1 += '-'+htmlStr2;	
						}	
						else {
							//htmlStr1 = appUtils.kryteria(jQuery("select[name=kryterium]").val(),jQuery("select[name=warunek]").val());
							htmlStr1 = jQuery("select[name=warunek] option:selected").html();
						}	
						//confirm('kry. ' + jQuery("select[name=kryterium]").val() + 'war. ' + jQuery("select[name=warunek]").val());
						jQuery(f.tab).html('<div style="font-size: 12px;">'+jQuery(f.tab).html()+':<br />'+htmlStr1+'</div>');
						c.tabs("select","#"+f.panel.id);
						jQuery("input[name=input1]").val('');
						jQuery("input[name=input2]").val('');
					}
				});
		c.tabs("remove",0);
		c.hide();
		return c
	}
	this.tabs=a(b);
	this.add=
		function(c,e) {
			if(this.tabs!=null) {
				if(this.tabs.css("display")=="none"){this.tabs.show()}
				var d=$('<div id="zakladka_'+this.index+'"></div>').html(c);
				this.tabs.append(d);
				this.tabs.tabs("add","#zakladka_"+this.index,e);
				jQuery('img[id=btnSearch]').show();
				jQuery('span[id=czekaj]').hide();
				this.index++
			}
			else{alert("Nie odnaleziono kontenera zakladek.")}
		}
}
TSzukajForm=
	function(d,b,e,c,a) {
		this.debugSessionStart=false;
		this.debugSessionName="netbeans-xdebug";
		this.defaultrow='<td><select name="kryterium" style="width: 135px;"></select></td><td><select name="warunek" style="width: 135px;"><option value="1">Zawiera</option><option value="2">Zaczyna się od</option></select><span id="span1" class="spann">od</span><input type="text" name="input1" size="30" style="margin-left:5px;"/><span id="span1" class="spann">do</span><input type="text" name="input2" style="display:none;margin-left:5px;" size="10" /></td><td><select name="spojnik" style="display:none;"><option value="1">i</option><option value="2">lub</option></select></td>';
		this.chkurl=a;
		this.onchangeKryterium=function(f){};
		this.onchangeWarunek=function(f){};
		this.onSearch=
			function(f) {
				return""
			};
		this.onValidate=
			function() {
				this.request={};
				return false
			};
		this.request={};
		this.tableid=d;
		this.idxKryteria=0;
		this.maxKryteria=b;
		this.kryteria=c;
		this.tabs={};
		this.maxSzukaj=e;
		this.getRequest=
			function() {
				this.request={};
				this.request.format="json";
				if(this.debugSessionStart) {
					this.request.XDEBUG_SESSION_START=this.debugSessionName
				}
				var g=new Array();
				var i={};
				var f=jQuery();
				var h=jQuery("#"+this.tableid+" tr:not(:first)");
				h.each(
					function(j,k) {
						i={};
						f=jQuery(k);
						i.kryterium=jQuery("select[name=kryterium]",f).val();
						i.warunek=jQuery("select[name=warunek]",f).val();
						i.input1=jQuery("input[name=input1]",f).val();
						i.input2=jQuery("input[name=input2]",f).val();
						i.spojnik=jQuery("select[name=spojnik]",f).val();
						g.push(i)
					});
				return g
			};
		this.btnAdd=
			function(g) {
				var i=g.data;
				if(i.idxKryteria<i.maxKryteria) {
					i.idxKryteria++;
					var f=document.getElementById(i.tableid);
					var h=f.insertRow(i.idxKryteria);
					jQuery(h).html(i.defaultrow);
					appUtils.refreshSelectLocal(i.kryteria,jQuery("select[name=kryterium]",h));
					jQuery("select[name=kryterium]",h).bind("change",i,i.onchangeKryterium);
					jQuery("select[name=warunek]",h).bind("change",i,i.onchangeWarunek);
					jQuery("input",h).keyup(
						function(k) {
							if(k.which==13) {
								var j={data:i};
								i.btnSearch(j)
							}
						});
					jQuery("select",h).keyup(
						function(k) {
							if(k.which==13) {
								var j={data:i};
								i.btnSearch(j)
							}
						});
					if(i.idxKryteria>1) {
						jQuery("tr:eq("+(i.idxKryteria-1)+") select[name=spojnik]",f).show()
					}
				}
				else{appUtils.showMessage("Nie mo\u017cna doda\u0107 kolejnego kryterium.","warrning",400)}
			};
		this.btnDel=
			function(g) {
				var h=g.data;
				if(h.idxKryteria>1) {
					var f=document.getElementById(h.tableid);
					f.deleteRow(h.idxKryteria);
					jQuery("tr:eq("+(h.idxKryteria-1)+") select[name=spojnik]",f).hide();
					h.idxKryteria--
				}
				else{appUtils.showMessage("Nie mo\u017cna usun\u0105\u0107 ostatniego kryterium.","warrning",400)}
			};
		this.btnSearch=
			function(f) {
				var g=f.data;
				var szukaj = jQuery('img[id=btnSearch]');
				var czekaj = jQuery('span[id=czekaj]');
				if(jQuery("#wyniki_tabs").tabs("length")<g.maxSzukaj) {
					if(g.onValidate()) {
						szukaj.hide();
						czekaj.show();
						jQuery.getJSON(g.chkurl,g.request,
							function(h) {
								if(appUtils.isSet(h.count)&&(h.count>0)) {
									g.request.count=h.count;g.onSearch()
								}
								else {
									szukaj.show();
									czekaj.hide();
									appUtils.showMessage("Brak pozycji spe\u0142niaj\u0105cych podane kryteria.","Informacja",400);
								}
							})
					}
				}
				else{appUtils.showMessage("Nie mo\u017cna przeprowadzi\u0107 wi\u0119cej ni\u017c "+g.maxSzukaj+' wyszukiwania. Aby kontynuowa\u0107 wyszukiwanie nale\u017cy usun\u0105\u0107 wcze\u015bniejsze wyniki wyszukiwa\u0144 klikaj\u0105c symbol <img src="'+appUtils.baseUrl+'/images/close_x.png"> na wybranej zak\u0142adce z wynikami wyszukiwania.',"warrning",400)}
			};
		this.searchData=
			function(g) {
				if(jQuery("#wyniki_tabs").tabs("length")<szukajForm.maxSzukaj) {
					this.request={};
					this.request=g;
					this.request.format="json";
					this.request.database_id=appUtils.selectedDB;
					var f=this;
					var szukaj = jQuery('img[id=btnSearch]');
					var czekaj = jQuery('span[id=czekaj]');
					szukaj.hide();
					czekaj.show();
					appUtils.hideMessage();
					jQuery.getJSON(
						this.chkurl,
						g,
						function(h) {
							jQuery('input[name=input1]').val(g.row_0_input1);
							if(appUtils.isSet(h.count)&&(h.count>0)) {
								f.request.count=h.count;f.onSearch()
							}
							else {
								appUtils.showMessage("Brak pozycji spe\u0142niaj\u0105cych podane kryteria.","Informacja",400);
								szukaj.show();
								czekaj.hide();
							}
						})
				}
				else{appUtils.showMessage("Nie mo\u017cna przeprowadzi\u0107 wi\u0119cej ni\u017c "+szukajForm.maxSzukaj+' wyszukiwania. Aby kontynuowa\u0107 wyszukiwanie nale\u017cy usun\u0105\u0107 wcze\u015bniejsze wyniki wyszukiwa\u0144 klikaj\u0105c symbol <img src="'+appUtils.baseUrl+'/images/close_x.png"> na wybranej zak\u0142adce z wynikami wyszukiwania.',"warrning",400)}
			};
		this.init=
			function() {
				var f=jQuery("#content");
				f.html( '<table id="'+
						this.tableid+
						'" cellspacing="2" cellpadding="2" style="margin-bottom:10pt;"><tr><td colspan="3" class="text_bold" style="text-align:center;">Kryterium</td></tr></table><img src="'+
						appUtils.baseUrl+
						'/images/center/add1.jpg" style="margin-left:12px;" id="btnAdd" onMouseover="this.src=\''+
						appUtils.baseUrl+
						"/images/center/add2.jpg'\" onMouseout=\"this.src='"+
						appUtils.baseUrl+
						'/images/center/add1.jpg\'" alt="Dodaj kryterium" title="Dodaj kryterium" class="point_object"/><img src="'+
						appUtils.baseUrl+
						'/images/center/delete1.jpg" style="margin-left:30px;" id="btnDel" onMouseover="this.src=\''+
						appUtils.baseUrl+
						"/images/center/delete2.jpg'\"onMouseout=\"this.src='"+
						appUtils.baseUrl+
						'/images/center/delete1.jpg\'"alt="Usu\u0144 kryterium" title="Usu\u0144 kryterium" class="point_object"/><img src="'+
						appUtils.baseUrl+
						'/images/center/search1.jpg" style="margin-left: 22px;" id="btnSearch" onMouseover="this.src=\''+
						appUtils.baseUrl+
						"/images/center/search2.jpg'\"onMouseout=\"this.src='"+
						appUtils.baseUrl+
						'/images/center/search1.jpg\'"alt="Szukaj" title="Szukaj" class="point_object"/>'+
//						'<span id="czekaj" class="szuka" style="display:none">'+
//						'<img src="'+appUtils.baseUrl+'/images/center/szuka2.gif" style="margin-left: 0px;" />'+
						'<span id="czekaj" style="display:none">'+
//Ver. 1
						//'<img src="'+appUtils.baseUrl+'/images/center/szuka.gif" style="margin-left: 22px;" />'+
//Ver. 2
//						'<img src="'+appUtils.baseUrl+'/images/center/szuka.jpg" style="margin-left: 22px;" />'+
						'<img src="'+appUtils.baseUrl+'/images/center/trwa_wyszukiwanie.gif" style="margin-left: 22px;" />'+
						'<img src="'+appUtils.baseUrl+'/images/center/wyszukuje.gif" style="margin-left: 5px;" />'+
						'</span>'+
						'<br /><hr size="1" style="height: 1px; background-color: #FFFFFF; border-top: 1px dotted #195695;"><br /><div id="wyniki_tabs" style="display:none"></div>');
				this.tabs=new TDynamicTabs(jQuery("#wyniki_tabs"));
				jQuery("#btnAdd",f).bind("click",this,this.btnAdd);
				jQuery("#btnAdd",f).trigger("click");
				jQuery("#btnDel",f).bind("click",this,this.btnDel);
				jQuery("#btnSearch",f).bind("click",this,this.btnSearch)
			}
	};
