// JavaScript Document

function potvrd(co) {
	if (co=="" || co==null) co="tento záznam";
	return window.confirm("Opravdu chcete nenávratně smazat " + co + " ?");
}

function zkontroluj_mail(formular)
{
	re = new RegExp("^([a-zA-Z0-9_.-]+@([a-zA-Z0-9_-]+\.)+[a-z]{2,4}){0,1}$");
	
	if (formular.kontakt_text.value=="" || formular.kontakt_text.value=="Zpráva…")
    {
        alert("Text zprávy musíte vyplnit!");
        formular.kontakt_text.focus();
        return false;
    }
	else if (formular.kontakt_email.value=="")
    {
        alert("Váš e-mail musíte vyplnit!");
        formular.kontakt_email.focus();
        return false;
    }
	else if (!re.test(formular.kontakt_email.value))
	{
            alert("Chybně vyplněný e-mail!");
            formular.kontakt_email.focus();
            return false;
    }
	else
		return true;
}

function zkontroluj_doporucit(formular)
{
	re = new RegExp("^([a-zA-Z0-9_.-]+@([a-zA-Z0-9_-]+\.)+[a-z]{2,4}){0,1}$");
	
	if (formular.doporucit_emailOdesilatele.value=="")
    {
        alert("Váš e-mail musíte vyplnit!");
        formular.doporucit_emailOdesilatele.focus();
        return false;
    }
	else if (!re.test(formular.doporucit_emailOdesilatele.value))
	{
            alert("Chybně vyplněný e-mail odesílatele!");
            formular.doporucit_emailOdesilatele.focus();
            return false;
    }
	else if (formular.doporucit_emailPrijemce.value=="")
    {
        alert("E-mail příjemce musíte vyplnit!");
        formular.doporucit_emailPrijemce.focus();
        return false;
    }
	else if (!re.test(formular.doporucit_emailPrijemce.value))
	{
            alert("Chybně vyplněný e-mail příjemce!");
            formular.doporucit_emailPrijemce.focus();
            return false;
    }
	else
		return true;
}



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}$");
	
	var inputs 		= formular.getElementsByTagName ('input');
	var selects		= formular.getElementsByTagName ('select');
	var textareas	= formular.getElementsByTagName ('textarea');
	var labels = formular.getElementsByTagName ('label');
	var required;
	var pole;
	var dvojtecka;
	
	var nazev;
	var i_input = i_select = i_textarea = 0;
	
		
	for (var i = 0; i < (labels.length); i++) {
			
		dvojtecka = labels[i].innerHTML.lastIndexOf(':');
		if (dvojtecka > -1) nazev = labels[i].innerHTML.substring(0, dvojtecka);
		else nazev = labels[i].innerHTML;
			
		// zjiteni o jaky typ pole jde
		if (inputs[i_input].id == labels[i].htmlFor) {
			pole = inputs[i_input];
			i_input ++;
		}
		else if (textareas[i_textarea].id == labels[i].htmlFor) {
			pole = textareas[i_textarea];
			i_textarea ++;
		}
			
		// vyzadovano
		if (pole.name.indexOf("req_") > -1)
			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;
			}
			
		// celociselne hodnoty
		if (pole.name.indexOf("num_") > -1)
			if (!r_num.test(pole.value)) {
				alert("Pole \""+nazev+"\" musí obsahovat pouze celočíselné znaky!");
				inputs[i].focus();
				return false;
			}
			
		// desetinna cisla
		if (pole.name.indexOf("float_") > -1)
			if (!r_float.test(pole.value)) {
			alert("Pole \""+nazev+"\" musí obsahovat pouze číselné znaky!\nPoužívejte desetinnou tečku.");
			pole.focus();
			return false;
		}
			
		// URL
		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 (inputs[i].name.indexOf("heslo2") > -1) 
			if (inputs[i_input-1].value != inputs[i_input].value) {
				alert("Zadaná hesla nesouhlasí!");
				inputs[i_input-1].focus();
				return false;
			}
	}
		  
	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();
    }
}

/* ============================================================================================================================= */
/* ------- KRAJE, OKRESY, MESTA ------- */
/* ============================================================================================================================= */
/*
* @param string method GET|POST|...
* @param string url URL požadavku
* @param string [content] tělo zprávy
* @param array [headers] pole předaných hlaviček ve tvaru { 'hlavička': 'obsah' }
* @return bool true v případě úspěchu, false jinak
* @copyright Jakub Vrána, http://php.vrana.cz
*/
function send_xmlhttprequest(obsluha, method, url, content, headers) {
    var xmlhttp = (window.XMLHttpRequest ? new XMLHttpRequest : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
    if (!xmlhttp) {
        return false;
    }
    xmlhttp.open(method, url);
    xmlhttp.onreadystatechange = function() {
        obsluha(xmlhttp);
    };
    if (headers) {
        for (var key in headers) {
            xmlhttp.setRequestHeader(key, headers[key]);
        }
    }
    xmlhttp.send(content);
    return true;
}

function ajax_zmena_okresu(id) {
    // odeslání požadavku na aktualizaci dat
    if (!send_xmlhttprequest(zmena_okresu_obsluha, 'GET', 'ajax_vypis_okresu.php?id='+id)) {
		return false;
    }
	document.getElementById('ajax-loader-okres').style.display = '';
    return true;
}

function zmena_okresu_obsluha(xmlhttp) {
    if (xmlhttp.readyState == 4) {
		var oldoption_value = document.getElementById('okres').options[0].value;
		var oldoption_text = document.getElementById('okres').options[0].text;
		document.getElementById('okres').options.length = 0;
		document.getElementById('okres').options[0] = new Option(oldoption_text,oldoption_value);
		
		oldoption_value = document.getElementById('mesto').options[0].value;
		oldoption_text = document.getElementById('mesto').options[0].text;
		document.getElementById('mesto').options.length = 0;
		document.getElementById('mesto').options[0] = new Option(oldoption_text,oldoption_value);
		
		var models = xmlhttp.responseXML.getElementsByTagName ('okres');
		if (models) {
			for (var i = 1; i <= models.length; ++i) {
				document.getElementById('okres').options[i] = new Option(models[i-1].getElementsByTagName("name")[0].firstChild.nodeValue ,models[i-1].getElementsByTagName("id")[0].firstChild.nodeValue);
			}
		}
		document.getElementById('ajax-loader-okres').style.display = 'none';
    }
}

// ========================
// ======== MESTO =========
// ========================
function ajax_zmena_mesta(id) {
    // odeslání požadavku na aktualizaci dat
    if (!send_xmlhttprequest(zmena_mesta_obsluha, 'GET', 'ajax_vypis_mesto.php?id='+id)) {
		return false;
    }
	document.getElementById('ajax-loader-mesto').style.display = '';
    return true;
}

function zmena_mesta_obsluha(xmlhttp) {
    if (xmlhttp.readyState == 4) {
		var oldoption_value = document.getElementById('mesto').options[0].value;
		var oldoption_text = document.getElementById('mesto').options[0].text;
		document.getElementById('mesto').options.length = 0;
		document.getElementById('mesto').options[0] = new Option(oldoption_text,oldoption_value);
		
		var models = xmlhttp.responseXML.getElementsByTagName ('mesto');
		if (models) {
			for (var i = 1; i <= models.length; ++i) {
				document.getElementById('mesto').options[i] = new Option(models[i-1].getElementsByTagName("name")[0].firstChild.nodeValue ,models[i-1].getElementsByTagName("name")[0].firstChild.nodeValue);
			}
		}
		document.getElementById('ajax-loader-mesto').style.display = 'none';
    }
}

// ==========================================
// ======== ROZCESTNIK PODKATEGORIE =========
// ==========================================
function ajax_zmena_podkategorie(id) {
    // odeslání požadavku na aktualizaci dat
    if (!send_xmlhttprequest(zmena_podkategorie_obsluha, 'GET', 'modules/rozcestnik/ajax_vypis_podkategorie.php?id='+id)) {
		return false;
    }
	document.getElementById('ajax-loader-podkategorie').style.display = '';
    return true;
}

function zmena_podkategorie_obsluha(xmlhttp) {
    if (xmlhttp.readyState == 4) {
		var oldoption_value = document.getElementById('podkat').options[0].value;
		var oldoption_text = document.getElementById('podkat').options[0].text;
		document.getElementById('podkat').options.length = 0;
		document.getElementById('podkat').options[0] = new Option(oldoption_text,oldoption_value);
		
		var models = xmlhttp.responseXML.getElementsByTagName ('podkat');
		if (models) {
			for (var i = 1; i <= models.length; ++i) {
				document.getElementById('podkat').options[i] = new Option(models[i-1].getElementsByTagName("name")[0].firstChild.nodeValue ,models[i-1].getElementsByTagName("id")[0].firstChild.nodeValue);
			}
		}
		document.getElementById('ajax-loader-podkategorie').style.display = 'none';
    }
}