function validateCallback ()
{
	var f = document.callbackform;
	var e = document.getElementById('val_error');
	var reg_exp = "^[_a-zA-Z0-9\.\-]+@[_a-zA-Z0-9\.\-]+[\.]{1}[a-zA-Z]{2,4}$";
	var telefon_mask = "^([0-9]{9,15}|([0]{2,2}|[+]{1,1})[0-9]{11,18})$";
	var date_mask = "^((/1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31/{1}[\/,\.]{1}/1|3|5|7|8|10|12/{1}[\/,\.]{1}(\d{2}|\d{4}){1})|(/1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30/{1}[\/,\.]{1}/4|6|9|11/{1}[\/,\.]{1}(\d{2}|\d{4}){1})|(/1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29/{1}[\/,\.]{1}/2/{1}[\/,\.]{1}(\d{2}|\d{4}){1}))$";
	var name_mask="^[0-9\*\?';]";
	var jmeno_valid = true;
	var prijmeni_valid = true;
	var mesto_valid = true;
	var telefon_valid = true;
	var partner_valid = true;
	var pobocka_valid = true;
	var makler_valid = true;
	var poznamka_valid = true;
	var typ_valid = true;
	var cas_valid = true;
	var email_valid = true;
	var email_valid_format = true;
	var jmeno_valid_format = true;
	var prijmeni_valid_format = true;
	var mesto_valid_format = true;
	var telefon_valid_format = true;
	var psc_valid_format = true;
	var datum_valid_format = true;
	var ulice_valid = true;
	var ulice_valid_format = true;
	var partner_valid_format = true;
	var pobocka_valid_format = true;
	var makler_valid_format = true;
	var poznamka_valid_format = true;
	var datum_valid = true;
	var psc_valid = true;
	var jmeno_label = document.getElementById('jmeno_label');
	var prijmeni_label = document.getElementById('prijmeni_label');
	var mesto_label = document.getElementById('mesto_label');
	var telefon_label = document.getElementById('telefon_label');
	var email_label = document.getElementById('email_label');
	var datum_label = document.getElementById('datum_label');
	var psc_label = document.getElementById('psc_label');
	var cas_label = document.getElementById('cas_label');
	var typ_label = document.getElementById('typ_label');
	var partner_label = document.getElementById('partner_label');
	var pobocka_label = document.getElementById('pobocka_label');
	var makler_label = document.getElementById('makler_label');
	var ulice_label = document.getElementById('ulice_label');
	var poznamka_label = document.getElementById('poznamka_label');
	var validation_errors = '';
	var invMessage;
	if (f.jmeno)
	{
		if (f.jmeno.value === "")
		{
			jmeno_valid = false;
			jmeno_label.style.color="indianred";
			validation_errors = 'jméno';
		}
		else if ((f.jmeno.value.match(name_mask))&&(!(f.jmeno.value==="")))
		{
			jmeno_valid_format = false;
			jmeno_label.style.color="indianred";
			//document.getElementById('jmeno_help_icon').style.visibility = "visible";
			validation_errors = 'jméno (nesprávný formát)';
		}
		else
		{
			jmeno_label.style.color="#000";
		}
	}
	if (f.prijmeni) {
		if (f.prijmeni.value === "")
		{
			prijmeni_valid = false;
			prijmeni_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'příjmení';
			}
			else
			{
				validation_errors = validation_errors + ', příjmení';
			}
		}
		else if ((f.prijmeni.value.match(name_mask))&&(!(f.prijmeni.value==="")))
		{
			prijmeni_valid_format = false;
			prijmeni_label.style.color="indianred";
			//document.getElementById('prijmeni_help_icon').style.visibility = "visible";
			if (validation_errors === '')
			{
				validation_errors = 'příjmení (nesprávný formát)';
			}
			else
			{
				validation_errors = validation_errors + ', příjmení (nesprávný formát)';
			}
		}
		else
		{
			prijmeni_label.style.color="#000";
		}
	}
	
		if (f.ulice) {
		if (f.ulice.value === "")
		{
			ulice_valid = false;
			ulice_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'ulice';
			}
			else
			{
				validation_errors = validation_errors + ', ulice';
			}
		}
		else if ((f.ulice.value.match(name_mask))&&(!(f.ulice.value==="")))
		{
			ulice_valid_format = false;
			ulice_label.style.color="indianred";
			//document.getElementById('prijmeni_help_icon').style.visibility = "visible";
			if (validation_errors === '')
			{
				validation_errors = 'ulice (nesprávný formát)';
			}
			else
			{
				validation_errors = validation_errors + ', ulice (nesprávný formát)';
			}
		}
		else
		{
			ulice_label.style.color="#000";
		}
	}
	
	
	if (f.mesto) {
		if (f.mesto.value === "")
		{
			mesto_valid = false;
			mesto_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'město';
			}
			else
			{
				validation_errors = validation_errors + ', město';
			}
		}
		else if ((f.mesto.value.match(name_mask))&&(!(f.mesto.value==="")))
		{
			mesto_valid_format = false;
			mesto_label.style.color="indianred";
			//document.getElementById('prijmeni_help_icon').style.visibility = "visible";
			if (validation_errors === '')
			{
				validation_errors = 'město (nesprávný formát)';
			}
			else
			{
				validation_errors = validation_errors + ', město (nesprávný formát)';
			}
		}
		else
		{
			mesto_label.style.color="#000";
		}
	}
	
	
	if (f.telefon)
	{
		var telefConv = convertPhoneNumber(f.telefon.value);
		if (f.telefon.value === "")
		{
			telefon_valid = false;
			telefon_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'telefon';
			}
			else
			{
				validation_errors = validation_errors + ', telefon';
			}
		}
		else if ((!telefConv.match(telefon_mask))&&(!(f.telefon.value==="")))
			{
				telefon_valid_format = false;
				telefon_label.style.color="indianred";
				//document.getElementById('telefon_help_icon').style.visibility = "visible";
				if (validation_errors === '')
				{
					validation_errors = 'telefon (nesprávný formát)';
				}
				else
				{
					validation_errors = validation_errors + ', telefon (nesprávný formát)';
				}
			}
		else
		{
			telefon_label.style.color="#000";
		}
	}
	if (f.email)
	{
			if ((f.email.value === "")||(f.email.value == "@"))
		{
			email_valid = false;
			email_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'e-mail';
			}
			else
			{
				validation_errors = validation_errors + ', e-mail';
			}
		}
		else
		{
			if (!f.email.value.match(reg_exp)&&(!(f.email.value==="")))
			{
				email_valid_format = false;
				email_label.style.color="indianred";
				//document.getElementById('email_help_icon').style.visibility = "visible";
				if (validation_errors === '')
				{
					validation_errors = 'e-mail (nesprávný formát)';
				}
				else
				{
					validation_errors = validation_errors + ', e-mail (nesprávný formát)';
				}
			}
			else
			{
				email_label.style.color="#000";
				//document.getElementById('email_help_icon').style.visibility = "hidden";
			}
		}
	}
	if (f.datum)
	{
		if (f.datum.value === "")
		{
			datum_valid = false;
			datum_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'datum';
			}
			else
			{
				validation_errors = validation_errors + ', datum';
			}
		}
		else if ((f.datum.value.match(date_mask))&&(!(f.datum.value==="")))
		{
			datum_valid_format = false;
			datum_label.style.color="indianred";
			//document.getElementById('telefon_help_icon').style.visibility = "visible";
			if (validation_errors === '')
			{
				validation_errors = 'datum (nesprávný formát)';
			}
			else
			{
				validation_errors = validation_errors + ', datum (nesprávný formát)';
			}
		}
		else
		{
			datum_label.style.color="#000";
		}
	}
	if (f.cas)
	{
		if ((document.getElementById("cas0").checked===false)&&(document.getElementById("cas1").checked===false)&&(document.getElementById("cas2").checked===false))
		{
			cas_valid = false;
			cas_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
			if (validation_errors === '')
			{
				validation_errors = 'čas';
			}
			else
			{
				validation_errors = validation_errors + ', čas';
			}
		}
		else
		{
			cas_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	if (f.typ)
	{
		if (f.typ.value == "")
		{
			typ_valid = false;
			typ_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
			if (validation_errors === '')
			{
				validation_errors = 'typ klienta';
			}
			else
			{
				validation_errors = validation_errors + ', typ klienta';
			}
		}
		else
		{
			typ_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	
	if (f.partner)
	{
		if (f.partner.value == "")
		{
			typ_valid = false;
			typ_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
			if (validation_errors === '')
			{
				validation_errors = 'partner';
			}
			else
			{
				validation_errors = validation_errors + ', partner';
			}
		}
		else
		{
			partner_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	
	if (f.pobocka)
	{
		if (f.pobocka.value == "")
		{
			pobocka_valid = false;
			pobocka_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
			if (validation_errors === '')
			{
				validation_errors = 'pobočka';
			}
			else
			{
				validation_errors = validation_errors + ', pobočka';
			}
		}
		else
		{
			pobocka_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	
	if (f.makler)
	{
		if (f.makler.value == "")
		{
			makler_valid = false;
			makler_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
			if (validation_errors === '')
			{
				validation_errors = 'makléř';
			}
			else
			{
				validation_errors = validation_errors + ', makléř';
			}
		}
		else
		{
			makler_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	
	if (f.makler)
	{
		if (f.makler.value == "")
		{
			makler_valid = false;
			makler_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
			if (validation_errors === '')
			{
				validation_errors = 'makléř';
			}
			else
			{
				validation_errors = validation_errors + ', makléř';
			}
		}
		else
		{
			makler_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	
	if (f.psc)
	{
		var pscConv = convertPsc(f.psc.value);
		if (f.psc.value === "")
		{
			psc_valid = false;
			psc_label.style.color="indianred";
			if (validation_errors === '')
			{
				validation_errors = 'PSČ';
			}
			else
			{
				validation_errors = validation_errors + ', PSČ';
			}
		}
		else if ((pscConv.length!=5)||(!isNumbers(pscConv)))
		{
			psc_valid_format = false;
			psc_label.style.color="indianred";
			//document.getElementById('psc_help_icon').style.visibility = "visible";
			if (validation_errors === '')
			{
				validation_errors = 'PSČ (nesprávný formát)';
			}
			else
			{
				validation_errors = validation_errors + ', PSČ (nesprávný formát)';
			}
		}
		else
		{
			psc_label.style.color="#000";
			//document.getElementById('psc_help_icon').style.visibility = "hidden";
		}
	}
	if (!jmeno_valid ||!prijmeni_valid||!telefon_valid||!datum_valid||!psc_valid||!jmeno_valid_format||!prijmeni_valid_format||!psc_valid_format||!telefon_valid_format||!typ_valid||!cas_valid||!mesto_valid||!mesto_valid_format||!email_valid||!email_valid_format||!ulice_valid||!ulice_valid_format||!makler_valid||!makler_valid_format)
	{
		invMessage = '<strong>Upozornění!</strong> Pro odeslání je nutné vyplnit správně všechny údaje. Nevyplněná nebo špatně vyplněná pole jsou označena červeně.';
		e.innerHTML = invMessage;
	}
	else
	{
		var jh = f.jmeno.value;
		var ph = f.prijmeni.value;
		var eh = f.email.value;
		var ch = f.psc.value;
		var mh = f.mesto.value;
		//var jhh = convertDiacritics(jh);
		//var phh = convertDiacritics(ph);
		var ehh = convertEmail(eh);
		var chh = convertPsc(ch);
		var thh = telefConv;
		f.jmeno_hid.value = jh;
		f.prijmeni_hid.value = ph;
		f.email_hid.value = ehh;
		f.psc_hid.value = chh;
		f.telefon_hid.value = thh;
		f.mesto_hid.value = mh;
		f.submit();
	}
}
function clearField(evt)
{
	evt = (evt) ? evt : event;
    var form_field = (evt.target) ? evt.target : evt.srcElement; //zdroj kliknutí - tlačítko
    form_field.value = "";
}
function convertEmail(string)
{
	string = string.replace("@","-AT");
	return string;
}
function convertPsc(string)
{
	string = string.replace(" ","");
	return string;
}
function convertPhoneNumber(string)
{
	string = string.replace(/ /g,"");
	return string;
}
function isNumbers(string)
{
	var numbers = ["0","1","2","3","4","5","6","7","8","9"];
	var stringLength = string.length;
	var i;
	var j;
	var m;
	var n = 0;
	for (i = 0; i < stringLength; i++)
	{
		m = 10;
		for (j = 0; j < 10; j++)
		{
			if (string.charAt(i)!==numbers[j])
			{
				m = m - 1;
			}
		}
		n = n + m;
	}
	if (n === stringLength)
	{
		return true;
	}
	else
	{
		return false;
	}
}
/*function validateDate(string)
{
	if ((string.search(/-/)==1)||(string.search(/-/)==2))
	{

	}
	else if ((string.search(/\./)==1)||(string.search(/\./)==2))
	{
	}
}*/
function showPscHelp()
{
	help = document.getElementById('psc_help');
	help.style.display = "block";
}
function hidePscHelp()
{
	help = document.getElementById('psc_help');
	help.style.display = "none";
}
function showEmailHelp()
{
	help = document.getElementById('email_help');
	help.style.display = "block";
}
function hideEmailHelp()
{
	help = document.getElementById('email_help');
	help.style.display = "none";
}
function showJmenoHelp()
{
	help = document.getElementById('jmeno_help');
	help.style.display = "block";
}
function hideJmenoHelp()
{
	help = document.getElementById('jmeno_help');
	help.style.display = "none";
}
function showPrijmeniHelp()
{
	help = document.getElementById('prijmeni_help');
	help.style.display = "block";
}
function hidePrijmeniHelp()
{
	help = document.getElementById('prijmeni_help');
	help.style.display = "none";
}
function showTelefonHelp()
{
	help = document.getElementById('telefon_help');
	help.style.display = "block";
}
function hideTelefonHelp()
{
	help = document.getElementById('telefon_help');
	help.style.display = "none";
}
function showDatumHelp()
{
	help = document.getElementById('datum_help');
	help.style.display = "block";
}
function hideDatumHelp()
{
	help = document.getElementById('datum_help');
	help.style.display = "none";
}
function showCasHelp()
{
	help = document.getElementById('cas_help');
	help.style.display = "block";
}
function hideCasHelp()
{
	help = document.getElementById('cas_help');
	help.style.display = "none";
}
function showTypHelp()
{
	help = document.getElementById('typ_help');
	help.style.display = "block";
}
function hideTypHelp()
{
	help = document.getElementById('typ_help');
	help.style.display = "none";
}

function vybraniPartnera()
{
    selectedPartner = document.forms['callbackform']['partner'].value;
    select = document.forms['callbackform']['pobocka'];
    option=select.options[0];
    i = 1;
    while (option)
    {
        if (selectedPartner == 'GEPARD')
        {
          if (option.className == 'tridaPartner0')
          {
            option.style.display="none";
            option.style.visible="hidden";
          }
          else
          {
            option.style.display = "block";
          }
          select.selectedIndex = 53;
        }
        else
        {
          if (option.className == 'tridaPartner1')
          {
            option.style.display="none";
            option.style.visible="hidden";
          }  
          else
          {
            option.style.display = "block";
          }
          select.selectedIndex = 0;
        }
        option = select.options[i];
        i++
    }
}

function odeslatForm()
{
    document.forms['callbackform']['zmenenVyber'].value = "1";
    document.forms['callbackform'].action = "#kotva_formular";
    document.forms['callbackform'].submit();
}
