// JavaScript Document

function zkontroluj_MailForm(formular)
{
	re = new RegExp("^([a-zA-Z0-9_.-]+@([a-zA-Z0-9_-]+\.)+[a-z]{2,4}){0,1}$");
	
	if (formular.email.value=="")
    {
        alert("V e-mail muste vyplnit!");
        formular.email.focus();
        return false;
    }
	else if (formular.text.value=="")
    {
        alert("Text zprvy muste vyplnit!");
        formular.text.focus();
        return false;
    }
	else if (!re.test(formular.email.value))
	{
            alert("Chybn vyplnn e-mail!");
            formular.email.focus();
            return false;
    }
	else
		return true;
}

/* ============================================================================================================================= */
/* ------- ANKETA ------- */
/* ============================================================================================================================= */

function voteByLabelClick(id) {
     var labels, form;
     // najdeme formular
     form = document.getElementById(id);
     // budeme pokracovat jedine, pokud jsme
     // nasli formular
     if (form) {
          // formulari priradime tridu "voteByLabel",
          // pres kterou je v CSS definovano skryti
          // radiobuttonu a obarveni labelu tak, aby
          // vypadaly jako odkazy
          form.className += ' voteByLabelClick';
          // najdeme labely
          labels = form.getElementsByTagName('label');
          for (i = 0; i < labels.length; i++) {
               // kazdemu opet priradime na onclick
               // funkci, ktera odesle formular
               labels[i].onclick = function () {
                    if (form.onsubmit instanceof Function && false === form.onsubmit()) {
                         return false;
                    }
					
					// nastaveni radiu pro tuto volbu checked na true
                    document.getElementById(this.htmlFor).checked = true;
                    form.submit();
               }
			   
          }
       }
}
function podtrhni (co) {
	co.style.textDecoration='underline';
}
function zrus (co) {
	co.style.textDecoration='none';
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split('; ');
	alert(ca);
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}


function isVoted (id_ankety) {
	//alert(readCookie2('anketa'+id_ankety+'Voted'));
	
	return true;
}

/* ============================================================================================================================= */
/* ------- Vyhledavani ------- */
/* ============================================================================================================================= */
function ShowHide(id) {
    obj = document.getElementsByTagName("div");
    if (obj[id].style.visibility == 'visible'){
    obj[id].style.visibility = 'visible';
    }
    else {
    obj[id].style.visibility = 'visible';
    }
}

function Hide(id) {
    obj = document.getElementsByTagName("div");
    if (obj[id].style.visibility == 'visible'){
    	obj[id].style.visibility = 'hidden';
		document.getElementById("hledat").focus();
    }
}

/* ============================================================================================================================= */
/* ------- Pridat k oblibenym ------- */
/* ============================================================================================================================= */
function AddFavorite(linkObj,addUrl,addTitle)
{
  if (document.all && !window.opera)
  {
    window.external.AddFavorite(addUrl,addTitle);
    return false;
  }
  else if (window.opera && window.print)
  {
    linkObj.title = addTitle;
    return true;
  }
  else if ((typeof window.sidebar == 'object') && (typeof window.sidebar.addPanel == 'function'))
  {
    if (window.confirm('Přidat oblíbenou stránku jako nový panel?'))
    {
      window.sidebar.addPanel(addTitle,addUrl,'');
      return false;
    }
  }
  window.alert('Po potvrzení stiskněte CTRL-D,\nstránka bude přidána k vašim oblíbeným odkazům.');
  return false;
}

/* ============================================================================================================================= */
/* ------- Odber novinek ------- */
/* ============================================================================================================================= */
function zkontroluj_OdberNovinek(formular)
{
	re = new RegExp("^([a-zA-Z0-9_.-]+@([a-zA-Z0-9_-]+\.)+[a-z]{2,4}){1}$");
	
	if (formular.email.value=="")
    {
        alert("Váš e-mail musíte vyplnit!");
        formular.email.focus();
        return false;
    }
	else if (!re.test(formular.email.value))
	{
            alert("Chybně vyplněný e-mail!");
            formular.email.focus();
            return false;
    }
	
	else
		return true;
}


/* ============================================================================================================================= */
/* ------- FORMULAR ------- */
/* ============================================================================================================================= */
function zkontroluj_form(formular)
{
	r_email	= new RegExp("^([a-zA-Z0-9_.-]+@([a-zA-Z0-9_-]+\.)+[a-z]{2,4}){0,1}$");
	r_num 	= new RegExp("^[-]?[0-9]*$");
	r_float	= new RegExp("^[-]?[0-9]*[.]?[,]?[0-9]*$");
	r_url	= new RegExp("^(http://[a-zA-Z0-9]+[a-zA-Z0-9_.-]*\.[a-z]{2,4}\.*){0,1}$");
	r_login	= new RegExp("^[a-z0-9]+[-]?[a-z0-9]+$");
	
	r_html 	= new RegExp("<[\/\!]*?[^<>]*?>");
	r_a		= new RegExp("<[/a]*>");
	
	
	var labels = formular.getElementsByTagName ('label');
	var pole;
	var nazev;
		
	if (formular) {
	  
		for (var i = 0; i < (formular.length); i++) {
			
			
	
			if (formular[i].tagName!='INPUT' && formular[i].tagName!='SELECT' && formular[i].tagName!='TEXTAREA') continue;
		
			pole = formular[i];
			nazev = null;
			
			
			for (var j = 0; j < (labels.length); j++) {
				if 	(labels[j].htmlFor==pole.id)
				{
					nazev = labels[j];
					break;
				}
			}
			if (nazev) nazev = nazev.innerHTML;
			else nazev = pole.name;
			
			dvojtecka = nazev.lastIndexOf(':');
			if (dvojtecka > -1) nazev2 = nazev.substring(0, dvojtecka);
			else nazev2 = nazev;
			
			nazev = nazev2;
			

			// vyzadovano
			if (pole.name.indexOf("req_") > -1) {
				
				switch (pole.type) {
				
					case 'checkbox':	if (!pole.checked)
										{
											nazev2 = nazev.replace(r_html, '');
											nazev3 = nazev2.replace(r_a, '')
											alert("Pole \""+nazev3+"\" musí být zaškrtnuto!");
											pole.focus();
											return false;
										}
										break;
										
					
					case 'radio':		var prevName;
										var nazevRadio = '';
										var radios = document.getElementsByName(pole.name);
										var isChecked = false;
											
										if (prevName == pole.name) continue;
											
										for (var q=0; q<radios.length; q++) if (radios[q].checked) isChecked = true;
											
										for (j = 0; j < (labels.length); j++) {
											if 	(labels[j].htmlFor==radios[0].id)
											{
												for (q=0; q<radios.length; q++) nazevRadio = nazevRadio +'\n - "'+labels[j+q].innerHTML+'"';
												break;
											}
										}
										prevName = pole.name;
											
										if (!isChecked)
										{
											alert("Jedno z následujících polí musí být zaškrtnuto!"+nazevRadio);
											pole.focus();
											return false;
										}
										break;
					
					default:	if (pole.value == "") {
									alert("Pole \""+nazev+"\" musí být vyplněno!");        		
									pole.focus();				
									return false;
								}	
				
				}													
			}
			
			
			// email
			if (pole.name.indexOf("email") > -1) 
				if (!r_email.test(pole.value)) {
					alert("Pole \""+nazev+"\" musí obsahovat platnou e-mailovou adresu!");
					pole.focus();
					return false;
				}
			
			// URL adresa
			if (pole.name.indexOf("url_") > -1) 
				if (!r_url.test(pole.value)) {
					alert("Pole \""+nazev+"\" musí obsahovat platnou URL adresu včetně \"http://\" !");
					pole.focus();
					return false;
				}
			
			// overeni souhlasu 2 hesel
			if (pole.name.indexOf("heslo2") > -1) 
				if (pole.value != formular.req_heslo.value) {
					alert("Zadaná hesla nesouhlasí!");
					formular.req_heslo.focus();
					return false;
				}
			
			// celociselne hodnoty
			if (pole.name.indexOf("num_") > -1)
				if (!r_num.test(pole.value)) {
					alert("Pole \""+nazev+"\" může obsahovat pouze číselné znaky!");
					pole.focus();
					return false;
				}
						
			// desetinna cisla
			if (pole.name.indexOf("float_") > -1)
				if (!r_float.test(pole.value)) {
				alert("Pole \""+nazev+"\" může obsahovat pouze číselné znaky!\nPoužívejte desetinnou tečku!.");
				pole.focus();
				return false;
			}
			
			// velikost cisla od do
			if (pole.name.indexOf("between_") > -1)
			{
				var pomoc = pole.name.substring(pole.name.indexOf("between_")+8);
				var betw1 = pomoc.substring(0,pomoc.indexOf("_"));
				pomoc = pomoc.substring(pomoc.indexOf(betw1+'_')+betw1.length+1);
				var betw2 = pomoc.substring(0,pomoc.indexOf("_"));
				
				if (pole.value < Number(betw1) || pole.value > Number(betw2) || !r_num.test(pole.value))
				{
					alert('Pole "'+nazev+'" může obsahovat pouze hodnoty v rozmezí '+ betw1 +' až '+ betw2 +' včetně.');
					pole.focus();
					return false;
				}
					
			}
			
			// delka retezce od do
			if (pole.name.indexOf("length_") > -1)
			{
				var pomoc = pole.name.substring(pole.name.indexOf("length_")+7);
				var betw1 = pomoc.substring(0,pomoc.indexOf("_"));
				pomoc = pomoc.substring(pomoc.indexOf(betw1+'_')+betw1.length+1);
				var betw2 = pomoc.substring(0,pomoc.indexOf("_"));
				
				if (pole.value.length < Number(betw1) || pole.value.length > Number(betw2))
				{
					if (pole.value.length < Number(betw1)) alert('Pole "'+nazev+'" musí obsahovat nejméně '+ betw1 +' znaky.');
					if (pole.value.length > Number(betw2)) alert('Pole "'+nazev+'" musí obsahovat maximálně '+ betw2 +' znaků.');
					
					pole.focus();
					return false;
				}
													
			}
			
			// coolurl pro login
			if (pole.name.indexOf("login") > -1)
				if (!r_login.test(pole.value)) {
					alert("Pole \""+nazev+"\" musí obsahovat pouze povolené znaky (a-z, 0-9, -)!");
					pole.focus();
					return false;
				}
			
			
		}
	}
	  
	return true;
}


