var content;
var errorCounter = 0;
var text = new Array();
var data = new Array();
var limitPokoje = 20;
var limitDeti = 10;
var limitOsob = 100;

for(i=0;i<15;i++)
{
	text[i] = "text nebyl prelozen";
}
/******** konstanty ktere musi byt dodane zvenku*********/
/*limitPokoje =10;

limitDeti = 10;
limitOsob = 100;
var text = new Array();
FillTranslate('Počet dospělých',0);
FillTranslate('Počet dětí',1);
FillTranslate('Datum narození',3);
FillTranslate('Pokoj',4);
FillTranslate('Zvýrazněná hodnota musí být číslo!',5);
FillTranslate('Zvýrazněná hodnota musí být platné datum!',6);
FillTranslate('Při odesílání formuláře bylo nalezeno [count] chyb',7);
FillTranslate('Je treba vybrat jednu z moznosti',8);
FillTranslate('Zvýrazněná hodnota musí být zadána',9);
zobrazitKalendar = true;
ikona = "<xsl:value-of select='/webiface/@ProjectPath'/>images/calendar.gif"	
*/

function CheckFormEstec(dayfromstr, monthfromstr, yearfromstr, daytostr, monthtostr, yeartostr)
{
    var dayfrom = parseInt(document.getElementById(dayfromstr).value);
    var monthfrom = parseInt(document.getElementById(monthfromstr).value);
    var yearfrom = parseInt(document.getElementById(yearfromstr).value);
    var dayto = parseInt(document.getElementById(daytostr).value);
    var monthto = parseInt(document.getElementById(monthtostr).value);
    var yearto = parseInt(document.getElementById(yeartostr).value);

	if(!IsDate(dayfrom + "." + monthfrom + "." + yearfrom))
	{
		alert("Date from is incorrect!");
		return false;
	}

	if(!IsDate(dayto + "." + monthto + "." + yearto))
	{
		alert("Date to is incorrect!");
		return false;
	}

	//alert("From: D:" + dayfrom + " M:" + monthfrom + " Y:" + yearfrom + " To: D:" + dayto + " M:" + monthto + " Y:" + yearto);

	var fromDate = new Date;
	var toDate = new Date;
	var today = new Date;

	fromDate.setFullYear(yearfrom);
	fromDate.setMonth(monthfrom - 1);
	fromDate.setDate(dayfrom);
	fromDate.setHours(0);
	fromDate.setMinutes(0);
	fromDate.setSeconds(0);
	fromDate.setMilliseconds(0);

	toDate.setFullYear(yearto);
	toDate.setMonth(monthto - 1);
	toDate.setDate(dayto);
	toDate.setHours(0);
	toDate.setMinutes(0);
	toDate.setSeconds(0);
	toDate.setMilliseconds(0);

	today.setHours(0);
	today.setMinutes(0);
	today.setSeconds(0);
	today.setMilliseconds(0);

    //alert("Date from:" + fromDate.toString() + " to:" + toDate.toString());    

	if (fromDate < today)
	{
		alert("Date from is incorrect!");
		return false;
	}


	if(fromDate < toDate)
	{
		//alert("Dates are correct.\n" + fromDate + "\n" + toDate);
		submit();
		return true;
	}
	else
	{
		alert("Dates are incorrect!");
		//alert("Dates are incorrect.\n" + fromDate + "\n" + toDate);
		return false;
	}

}

function wb_startWaitWindow()
{	
	if (document.getElementById("waitingwindow") != null)	
	{
			///funkce z popcalendar - vsude kde je vyhledavani je i popcalendar
			//hideElement( 'SELECT', document );
			document.getElementById("waitingwindow").style.visibility = "visible";
	}
}

function CheckEmail(idForm, id, warning)
{
	var el = document.getElementById(id);//najdeme text box
	if (el != null)
	{
		var text = el.value;
		if (window.RegExp)
		{
			re = new RegExp("^[^@]+@[^.]+\..+$");
			if (!re.test(text))
			{
				alert(warning);
				el.focus();
				return false;
			}
		}
	}
	//{@emailError}
	return true;
}

function OpenMyWin(link,winName, param)
{
	var myTWin = window.myTWin;
	var retValue=true;
	if (myTWin!=null && !myTWin.closed)
	{
		myTWin.focus();
		myTWin.location.href=link.href;
	}
	else
	{
		myTWin=window.open(link.href,winName, param);
		if (myTWin==null || typeof(myTWin)=="undefined")
		{
			retValue=false;
		}
		else
		{
			link.target=winName;
			myTWin.focus();
		}
	}
	return retValue;
}


function ShowWaitingWindow()
{
	if (document.getElementById("waitingwindow") != null)
	{
		document.getElementById("waitingwindow").style.visibility = "visible";
	}
}

function FillTranslate(str,index)
{
	if(text == null)
		text = new Array();
	text[index] = str;
}

function Generate(countElem)
{
		var count= countElem.value;
		content = document.getElementById('pokoje');//najdeme element pro zobrazeni obssahu
		var htmlString="";	
		if(count>limitPokoje)
		{
			count = limitPokoje; //omezime na limitPokoje pokoju
			countElem.value = count;
		}
		SaveValues();
		DeleteFromValue(count);
		
		for(i=1;i<=count;i++)
		{	
			htmlString += "<div class='item' id='p"+i+"'>\n";
			htmlString += "<label class='room_number_title'>"+text[4]+" #"+i+"</label>\n";
			htmlString += "<table border='0' class='table-form-osoby'>\n";
			htmlString += "<tr>\n";
			htmlString += "<td class='name'>\n"
			htmlString += "<label for='numberofpax"+i+"'>"+text[0]+"</label>\n";
			htmlString += "</td>\n";
			htmlString += "<td colspan='2'>\n";
			htmlString += "<input  onblur='CheckValue(\"numberofpax"+i+"\",\"number\")'  class='pocet_osob' name='numberofpax"+i+"' id='numberofpax"+i+"' maxlength='"+limitOsob.toString().length+"' type='text' value='";
			htmlString += ((data[i]==null) || (data[i][0]==null))?"":data[i][0];
			htmlString += "'>\n";
			htmlString += "</td>\n</tr>\n<tr>\n";
			htmlString += "<td class='name'>\n";
			htmlString += "<label class='head' for='numberofchild"+i+"'>"+text[1]+"</label>";
			htmlString += "</td>\n";
			htmlString += "<td colspan='2'>\n";
			htmlString += "<input id='numberofchild"+i+"' class='pocet_osob' onblur='CheckValue(\"numberofchild"+i+"\",\"number\");GenerateKidsFirst(document.getElementById(\"numberofchild"+i+"\"),"+i+")'  name='numberofchild"+i+"' type='text' value='";
			htmlString += ((data[i]==null) || (data[i][1]==null))?"":data[i][1];
			htmlString += "' maxlength='"+limitDeti.toString().length+"'>\n";
			htmlString += "</td>\n";
			/*htmlString += "<td>\n";
			htmlString += "</td>\n";*/
			htmlString += "</tr>\n";
			htmlString += "</table>\n";
			//htmlString += " <input type='button' class='tlacitko' value='"+text[2]+"' onClick='GenerateKidsFirst(document.getElementById(\"numberofchild"+i+"\").value,"+i+")'>";
			htmlString += "<div class='dateitem' id='kid"+i+"'></div>";
			htmlString += "</div>";
		}
		
		content.innerHTML = htmlString;	
		GenerateKids(count);
	
}

//vygeneruje [count] radku formulare]
function GenerateUpresneni(countElem)
{
		var count= countElem.value;
		
		content = document.getElementById('contentVyhledavani');//najdeme element pro zobrazeni obssahu
		var htmlString="";	
		if(count>limitPokoje)
		{
			count = limitPokoje; //omezime na limitPokoje pokoju
			countElem.value = count;
		}

		SaveValues();
		DeleteFromValue(count);
		for(i=1;i<=count;i++)
		{
			htmlString += "<div class='item' id='p"+i+"'><h3>"+text[4]+" #"+i+"</h3><div class='itembox'><label class='head' for='numberofpax"+i+"'>"+text[0]+"</label>";
			htmlString += "<input  onblur='CheckValue(\"numberofpax"+i+"\",\"number\")' style='width:30px'  class='textovepole' name='numberofpax"+i+"' id='numberofpax"+i+"' maxlength='"+limitOsob.toString().length+"' size='"+limitOsob.toString().length+"' type='text' value='";
			htmlString += ((data[i]==null) || (data[i][0]==null))?"":data[i][0];
			htmlString += "'></div><div class='itembox'><label class='head' for='numberofchild"+i+"'>"+text[1]+"</label>";
			htmlString += "<input id='numberofchild"+i+"' class='textovepole'  style='width:30px'  onblur='CheckValue(\"numberofchild"+i+"\",\"number\");GenerateKidsFirst(document.getElementById(\"numberofchild"+i+"\"),"+i+")'  name='numberofchild"+i+"' type='text' value='";
			htmlString += ((data[i]==null) || (data[i][1]==null))?"":data[i][1];
			htmlString += "' maxlength='"+limitDeti.toString().length+"' size='"+limitDeti.toString().length+"'>";
			//htmlString += " <input type='button' class='tlacitko' value='"+text[2]+"' onClick='GenerateKidsFirst(document.getElementById(\"numberofchild"+i+"\").value,"+i+")'>";
			htmlString += "</div><div class='dateitem' id='kid"+i+"'></div>";
			htmlString += "</div>";			
		}

		content.innerHTML = htmlString;	
		GenerateKids(count);
	
}



//Vygeneruje pro radek [i] [count] datumu narozeni deti
function GenerateKidsFirst(countElem,i)
{
		var count= countElem.value;
		
		if(count>limitDeti)
			{
			 count = limitDeti; //omezime na 99 deti	
			 countElem.value = count;
			}
		
		SaveValues();
		DeleteFromValueKids(count,i);
		GenerateDateRows(count,i,"kid"+i);											
}
//Vygeneruje [count] radku datumu narozeni deti
function GenerateKids(count)
{
	if(count>limitDeti)
	{
		count = limitDeti; //omezime na 99 deti
	}
	
	var i;	
	for(i=1;i<data.length;i++)
	{	
		DeleteFromValueKids(count,i);	
		if (data[i] != null && data[i][1] != null)
			GenerateDateRows(data[i][1],i,"kid"+i);									
	}	
}
//vygeneruje [rowsCount] radku, vlozenych do [i]-teho 
//radku a zobrazi vygenerovany obsah v elementu s [id]
function GenerateDateRows(rowsCount,i,id)
{
	var htmlString="";
	if(rowsCount != null)
	{
		if(rowsCount>limitDeti) rowsCount = limitDeti; //omezime na [rowsCount] deti
		
		htmlString += "<table class='datum-narozeni-ditete'>";
		
		for(j=1;j<=rowsCount;j++)
		{	
			htmlString += "<tr>\n";
			//htmlString += "<td>\n";
			//htmlString += "<div class='item'>\n";
			htmlString += "<td class='name'>\n";
			htmlString += "<label for='dchildborn"+i+"-"+j+"'>"+text[3]+" "+"#"+j+"</label>";
			htmlString += "</td>\n";
			htmlString += "<td class='date_form_narozeni'>\n";
			htmlString += "<input size='10' onblur='CheckValue(\"dchildborn"+i+"-"+j+"\",\"borndate\")'  maxlength='10' class='format'  name='dchildborn"+i+"-"+j+"' id='dchildborn"+i+"-"+j+"' type='text' ";
			//htmlString += "<div class='item'><label class='head' for='dchildborn"+i+"-"+j+"'>"+text[3]+" "+"#"+j+"</label><input size='10' onblur='CheckValue(\"dchildborn"+i+"-"+j+"\",\"borndate\")'  maxlength='10' name='dchildborn"+i+"-"+j+"' id='dchildborn"+i+"-"+j+"' type='text' ";
			if(data[i] != null)
			{
				if(data[i][2] != null)
				{//pokud existuje pole s hodnotami, vypiseme je
					if(data[i][2].length > 0)
					{
						htmlString += (data[i][2][j] == null)?"":"value='"+data[i][2][j]+"' ";
					}
				}
			}	
			htmlString += ">";
			htmlString += "</td>";
			
			htmlString += "<td class='calendar1'>";
			if(zobrazitKalendar)
			{
				htmlString += " <img src='"+ikona+"' class='img_calendar' alt='Date' id='f_trigger_dchildborn"+i+"-"+j+"'>";
				
			}
			htmlString += "</td>\n";
			//htmlString += "</div>\n";
			htmlString += "</tr>\n";
		}
		
		htmlString += "</table>";
	}

	elem = document.getElementById(id);
	if (elem != null)
	{
		if(rowsCount ==0)
		{
			elem.innerHTML = "";
		}
		if(htmlString.length>0)
		{
			elem.innerHTML = htmlString;
		}
	}
	
	for(j=1;j<=rowsCount;j++)
	{	
		Calendar.setup({
			inputField : "dchildborn"+i+"-"+j, // id of the input field
			ifFormat : "%d.%m.%Y",   // format of the input field
			button : "f_trigger_dchildborn"+i+"-"+j,  // trigger for the calendar (button ID)
			align : "Br",               // alignment (defaults to "Bl")
			singleClick : true
		});
	}
	
}
//Smaze vsechny radky v poli s indexem vetsim nez range
function DeleteFromValue(range)
{
	range++;	
	for(i=range;i<data.length;i++)
	{
		data[i] = null;
	}
}
//Smaze vsechny radky v poli s datumy narozeni s indexem vetsim nez range
function DeleteFromValueKids(range,i)
{
	range++;
	if(data[i] != null)
	 if([i][2]!= null)
		for(j=range;j<data[i][2].length;i++)	
			data[i][2][j] = null;	
}

//ulozi data do pole, prvni pole odpovida poctu radku, druhe, do nej vlozene 
//obahuje Pocet osob, pocet deti a pole s datumy narozeni deti
function SaveValues()
{	
	var i;
	for(i=1;i<=content.childNodes.length;i++)
	{				
		/*uzly = content.childNodes[i-1];*/
		
		pocetPokoju = document.getElementById("numberofpax"+i);
		pocetDeti = document.getElementById("numberofchild"+i);
		if (pocetPokoju != null||pocetDeti != null)
		{
			radek = new Array(3);
			data[i] = radek;
			data[i][0] = pocetPokoju.value;
			data[i][1] = pocetDeti.value;
			if(pocetDeti.value>0)
			{//pokud je zadan pocet deti
				var j;
				data[i][2] = new Array();
				for (j=1;j<=pocetDeti.value;j++)
				{//projdeme vsechny elementy se jmenem d[i][j]
					datum = document.getElementById("dchildborn"+i+"-"+j);
					if(datum != null)
					{
						data[i][2][j] = datum.value;
					}
				}
			}
		}		
	}	
}


///vraci objekt popisujici datum - format vstupu dd.mm.yyyy - netestuje chybu neexistence 
function GetDate(date)
{
		///vytahne den
		var day = parseInt(date.substring(0,date.indexOf(".")),10);				
		
		date = date.substring(date.indexOf(".")+1);
		///vytahne mesic
		var month = parseInt(date.substring(0,date.indexOf(".")),10);		
			
		date = date.substring(date.indexOf(".")+1);
		///vytahne rok
		var year = parseInt(date,10);
		///vrati objekt datum
		return new Date(year, month-1, day);
}


///funkce otestuje parametr na datum a do datum do prida +1 den
function CheckValueAndAddDayDateTo(idFrom, idTo)
{
	///nejdrive otestuje hodnotu datumu od		
	if (CheckValue(idFrom,'date'))
	{	///najde datum od
		var el = document.getElementById(idFrom);//najdeme text box
		///pokud neexistuje chyba
		if (el == null)
			return false;

		///najde datum do
		var elTo = document.getElementById(idTo);//najdeme text box
		///neexistuje datum do - chyba
		if (elTo == null)
			return false;

		///vrati objekt data z hodnot
		var datum = GetDate(Trim(el.value));

		if (IsDate(Trim(elTo.value)))
		{
			///vrati objekt data z hodnot
			var datumDo = GetDate(Trim(elTo.value));
			if (datumDo > datum && datumDo > new Date())
				return true;			
		}

		///k datumu prida +1 den
		datum.setDate(datum.getDate()+1);
			
		///vrati datum dd.mm.yyyy
		elTo.value = datum.getDate()+"."+(datum.getMonth()+1)+"."+datum.getFullYear();	
		
		///vse je ok
		return true;
	}
	return false;
}

//funkce zkontroluje spravnost hodnoty v texboxu zadanem pomoci id podle datoveho typu
function CheckValue(id,dateType)
{
	var el = document.getElementById(id);//najdeme text box
	if(el!=null)
	{
		el.value = Trim(el.value);
		var isGood = false;
		
		switch (dateType)		
		{
			case "number":
				isGood = IsNumber_EmtyString(el.value);
			break;
			case "date":
				isGood = IsDate(el.value);break;
			break;
			case "borndate":
				isGood = IsBornDate(el.value);
			break;

		}
		if(isGood)
		{
			RemoveErrorIndication(id);
			if(dateType == "number" && el.value!="")
			{//retezec zacinajici cislem JAVASCRIPT prevede na cislo, cehoz vyuzijeme a v texboxu na tohle cislo hodnotu prepiseme			
				el.value = parseInt(el.value,10);
			}
			return true;		
		}
		else
		{	
			ShowErrorIndication(id);
			switch (dateType)		
			{// a zobrazime prislusnou chybovou hlasku 
				case "number":
					alert(text[5]);
				break;
				case "date":
					alert(text[6]);
				break;
				case "borndate":
					alert(text[10]);
				break;
			}				
			return false;		
		}
	}
}

//zobrazi cervenou hvezdicku za elementem ID
function ShowErrorIndication(id,uniqueId)
{
	if(uniqueId == null) uniqueId = "";
	var el = document.getElementById(id);//najdeme text box
	var elParent = el.parentNode;	//a jeho rodice
	// pokud neni hodnota spravne, pokusime se najit element s hvezdickou
	var err = document.getElementById("error-"+id+uniqueId);
	if(err == null)
	{	//pokud neexistuje, vytvorime ho
		var warning = document.createElement("div");
		with (warning)
		{				
			innerHTML = "*";
			style.color = "red";
			style.display = "inline";
		}
		warning.id = "error-"+id+uniqueId;
		//a vlozime ho za element s id
		elParent.insertBefore(warning,el.nextSibling);
		errorCounter++;	
	}
}
//smaze cervenou hvezdicku za elementem ID
function RemoveErrorIndication(id,uniqueId)
{
	if(uniqueId == null) uniqueId = "";
	var el = document.getElementById(id);//najdeme text box
	var elParent = el.parentNode;
	var err = document.getElementById("error-"+id+uniqueId);//pokud je kontrola v poradku, pokusime se najit prislusny div s hvezdickou
	if(err != null)
	{// a smazeme ho
		elParent.removeChild(err);
		errorCounter--;
	}
}

//kontrola na cislo, v prazdny retezec Nevraci chybu
function IsNumber_EmtyString(num)
{
	if(num == "") return true;
	else return IsNumber(num);
}
//funkce vraci true pokud je num cislo, prazdy retezec se povazuje za chybu
function IsNumber(num)
{
	var x = parseInt(num,10);
	if(isNaN(x)) return false;
	if (x == 0 && (x != 0)) return false;
	else return true;	
}
//kontrola na datum, v prazdny retezec Nevraci chybu
function IsDate_EmtyString(date)
{
	if(date == "") return true;
	else
		return IsDate(date);
}
//funkce odstrani na zacatku a na konci mezery
function Trim(string)
{
	if(string.length == 0) return "";
	if(string.indexOf(" ")==0) return Trim(string.substring(1));	
	if(string.lastIndexOf(" ")==(string.length-1)) return Trim(string.substring(0,string.length-1));		
	return string;		
}

///zkontroluje datum pro datum narozeni - musi byt mensi nez dnesek vcetne
function IsBornDate(date)
{
	if (!IsDate(date))
		return false;
	
	
///vytahne den
		var day = parseInt(date.substring(0,date.indexOf(".")),10);				
		
		date = date.substring(date.indexOf(".")+1);
		///vytahne mesic
		var month = parseInt(date.substring(0,date.indexOf(".")),10);		
			
		date = date.substring(date.indexOf(".")+1);
		///vytahne rok
		var year = parseInt(date,10);
		///vrati objekt datum
		var d = new Date(year, month-1, day);
		if (d <= new Date())
			return true;
		else
			return false;
}


//zkontroluje datum - format a zda je mensi nez 31 a mesic mensi nez 12
function IsDate(date)
{
	 var pat ="([0-9]){1,2}\.([0-9]){1,2}\.([0-9]){4}";//vytvorime regulrni vyraz pro datum
	 if (!date.match(pat)) return false;	 //pokud nevyhovy, koncime
	 else
	 {
		
		var day = parseInt(date.substring(0,date.indexOf(".")),10);				
		
		date = date.substring(date.indexOf(".")+1);
		
		var month = parseInt(date.substring(0,date.indexOf(".")),10);		
		
		if(month > 12 || month<1)
			return false;
				
		date = date.substring(date.indexOf(".")+1);
		
		var year = parseInt(date,10);
		if(year > 2100 || year < 1950) return false;	
		
		var arrDaysInMonths;		
			
		//pokud je rok prestupný
			
		if(((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0))
			arrDaysInMonths = new Array(31,29,31,30,31,30,31,31,30,31,30,31);	
		else
			arrDaysInMonths = new Array(31,28,31,30,31,30,31,31,30,31,30,31);	
		
		
		if(day > arrDaysInMonths[month-1] || day<1) return false;
		return true;					
	 }	 	
}
//smaze pole data
function SmazData()
{
	data = null;
}
//kontroluje zda pole s datumy zacina na indexu 1, 
//pokud pole zacina od nuly, posune ho na index 1
function CtrlDatum(arDatum)
{
	if (arDatum[0]!=null)
	{
		var i;
		for(i=arDatum.length;i>0;i--)
		{
			arDatum[i] = arDatum[i-1]
		}
		arDatum[0]=null;
	}	
	return arDatum;
}
//prida radek dat do pole data
//promenna arDatum musi byt pole datumu
function PridejData(osoby,deti,arDatum)
{	
	var nextIndex = data.length;
	if(nextIndex == null) nextIndex = 1;
	if(nextIndex == 0) nextIndex = 1;
	arDatum = CtrlDatum(arDatum);
	radek = new Array(3);
	radek[0] = osoby;
	radek[1] = deti;
	radek[2] = arDatum;
	data[nextIndex]= radek;
}
//odesle formular pokud v nem neni zadna chyba
function SendForm(idForm)
{	
	if(errorCounter==0)
	{	
		var	frm = document.getElementById(idForm);		

		frm.submit();	//pokud neni chyba odesleme form

		if (document.getElementById("waitingwindow") != null)
		{
			///funkce z popcalendar - vsude kde je vyhledavani je i popcalendar
			//hideElement( 'SELECT', document );
			document.getElementById("waitingwindow").style.visibility = "visible";
		}

	}
	/*else
	{	//jinak zobrazime chybovou hlasku a nahradime text [count] pocetm chyb
		alert(text[7].replace(/\[count\]/g,errorCounter.toString()));
	}*/
}

///funckce umoznuje na zaklade parametru zmenit hodnotu formularoveho prvku, aktualne vyuzivana
///pri kliknuti tlacitka hledat na upresnujicim formulari, abych vedel co bylo vybrany
///arrCombo - pole dropdownlistu - kde vybrane id nesmi byt < 1
function CheckFormAndChangeValue(idForm,arrNumberData,arrDateData,arrMinOneFromN,arrAllReq, arrCombo, idHiddenSpecify, value)
{
	var el = document.getElementById(idHiddenSpecify);
	
	if (el != null)
	{
		el.value = value;
	}
	
	CheckForm(idForm,arrNumberData,arrDateData,arrMinOneFromN,arrAllReq, arrCombo);
}

//zkontroluje formular  s temito podminkami
// arrNumberData musi obsahovat validni cisla nebo prazdny retezec
// arrDateData musi obsahovat validni datumy nebo prazdny retezec
// arrMinOneFromN musi obsahovat alespon jeden neprazdny retezec
//arrAllReq - vsechny textbooxy musi obsahovat neprazdny retezec
///arrCombo - pole dropdownlistu - kde vybrane id nesmi byt < 1
function CheckForm(idForm,arrNumberData,arrDateData,arrMinOneFromN,arrAllReq, arrCombo)
{
	for(i=0;i<arrNumberData.length;i++)
	{
		CheckValue(arrNumberData[i],"number");
	}
	
	
	for(i=0;i<arrDateData.length;i++)
	{
		CheckValue(arrDateData[i],"date");
	}
	
	
	if(!(arrMinOneFromN == null || arrMinOneFromN.length == 0))
	{
		var counter = 0;
		//pole OneFromN obsahuje pole ID prvku, 
		//neprazdny string musi obsahovat alespon jeden input
		for(i=0;i<arrMinOneFromN.length;i++)
		{		
			var e = document.getElementById(arrMinOneFromN[i]);
			if(Trim(e.value)!=="") counter++;				
		}	
		
		if(counter == 0)
		{	
			//pokud neni vyplneno alespon jedno pole	
			for(i=0;i<arrMinOneFromN.length;i++)
			{//rozvitime na vsech indikaci
				ShowErrorIndication(arrMinOneFromN[i],"OneFromN");
			}
			alert(text[8]);
			return false;		
		}
		else
		{	
			for(i=0;i<arrMinOneFromN.length;i++)
			{
				RemoveErrorIndication(arrMinOneFromN[i],"OneFromN");
			}
		}
	}
	
	
	if(!(arrAllReq == null || arrAllReq.length == 0))
	{	
		var counter = 0;		
		for(i=0;i<arrAllReq.length;i++)
		{
			var e = document.getElementById(arrAllReq[i]);
			if(Trim(e.value)!=="") counter++;				
		}	
	
		for(i=0;i<arrAllReq.length;i++)
		{//smazeme vsechny indikace chyby
			RemoveErrorIndication(arrAllReq[i],"AllReq");
		}
		//a rozvitime je kde je treba	
		if(counter != arrAllReq.length)
		{	//pokud nejsou vyplneny vsechny textboxy
			for(i=0;i<arrAllReq.length;i++)
			{//rozvitime na vsech nevyplnenych indikaci
				var e = document.getElementById(arrAllReq[i]);
				if(Trim(e.value)=="") ShowErrorIndication(arrAllReq[i],"AllReq");
			}
			alert(text[9]);
			return false;			
		}
	}
	
	if(!(arrCombo == null || arrCombo.length == 0))
	{	
		var counter = 0;		
		var nullCounter	= 0;
		for(i=0;i<arrCombo.length;i++)
		{
			var e = document.getElementById(arrCombo[i]);
			if(e!= null && Trim(e.value)!=="0") counter++;				
			if (e == null)	
			{
				nullCounter++;		
			}
		}	
	
		for(i=0;i<arrCombo.length;i++)
		{//smazeme vsechny indikace chyby
			if (document.getElementById(arrCombo[i]) != null)
			{
				RemoveErrorIndication(arrCombo[i],"Combo");
			}
		}
		//a rozvitime je kde je treba	
		if((counter+nullCounter) != arrCombo.length)
		{	//pokud nejsou vyplneny vsechny textboxy
			for(i=0;i<arrCombo.length;i++)
			{//rozvitime na vsech nevyplnenych indikaci
				var e = document.getElementById(arrCombo[i]);
				if(Trim(e.value)=="0") ShowErrorIndication(arrCombo[i],"Combo");
			}
			alert(text[8]);
			return false;		
		}
	}
	
	SendForm(idForm);
	return true;
}

function changeArrivalEstec() {
	var dayFrom = document.getElementById('dayfrom');
	var monthFrom = document.getElementById('monthfrom');
	var yearFrom = document.getElementById('yearfrom');
          
	if (!(dayFrom && monthFrom && yearFrom)) {
		return false;
	}

	var dayTo = document.getElementById('dayto');
	var monthTo = document.getElementById('monthto');
	var yearTo = document.getElementById('yearto');

	if (!(dayTo && monthTo && yearTo)) {
		return false;
	}
          
	var dayToValue = parseInt(dayFrom.value);
	var monthToValue = parseInt(monthFrom.value);
	var yearToValue = parseInt(yearFrom.value);
	dayToValue++;
					
	if (dayToValue > 31) {
		dayToValue = 1;
		monthToValue++;
		if (monthToValue > 12) {
			monthToValue = 1;
			yearToValue++;
		}
	}
					
	dayTo.value = dayToValue;
	monthTo.value = monthToValue;
	yearTo.value = yearToValue;
          
        return true;
}
