/* BASIC */

function center(sirka, vyska, scrollbars) {
	if (scrollbars) {
		sirka += 17; 
		scrollbars = ", scrollbars";
	}
	x = (window.screen.width/2) - (sirka/2 + 10);
	y = (window.screen.height/2) - (vyska/2 + 25);
	window.open("", "center", "width="+sirka+", height="+vyska+", left="+x+", top="+y+", status" + scrollbars +"");
}

function change(id, fotka) {
	if (fotka) document.getElementById('img').src = '/pictures/big/' + id + '/' + fotka + '.jpg';
	else document.getElementById('header').style.backgroundImage = 'url(/fotky/fotky/' + id + '.jpg)';
}

function swap(hide, show) {
	document.getElementById(hide).style.display = "none";
	document.getElementById(show).style.display = "block";
}

function display(hidden) {
	el = document.getElementById(hidden).style;
	el.display = (el.display == 'block') ? 'none' : 'block';
}

function display(hidden) {
	el = document.getElementById(hidden).style;
	el.display = (el.display == 'block') ? 'none' : 'block';
}

function display_typ(hidden) {
	fo = document.getElementById("table-fo").style;
	po = document.getElementById("table-po").style;
        if (hidden == "table-fo") {
		fo.display = "block";
		po.display = "none";
	}
        else if (hidden == "table-po") {
		fo.display = "none";
		po.display = "block";
	}
}

function animace(vysledku) {
	p = []
	x = [];
	for(i = 0; i < vysledku; i++) p[i] = i;
	for(i = 0; i < vysledku; i++) x[i] = p.splice(Math.floor(Math.random() * p.length), 1)[0] + 1;
	pole = x;

	animace2();

	function animace2() {
		for (i = 0; i < pole.length; i++) {
			y = i + 1;
			fid = pole[i];
			nid = i == pole.length - 1 ? pole[0] : pole[y];
			setTimeout(changes(fid, nid), 6000 * i);
			if (i == pole.length - 1) {
				setTimeout(function() {
					animace2();
				}, 6000 * vysledku)
			}
		}

		function changes(fid, nid) {
			return function() {
				change(fid, nid);
			}
		}

		function change(fid, nid) {	
			function opacity(opacity) {
				return function() {
					document.getElementById("img-"+nid).style.opacity = opacity;
					document.getElementById("img-"+nid).style.filter = "alpha(opacity=" + opacity * 100 + ")";
				}
			}
			for (i = 1; i <= vysledku; i++) {
				document.getElementById("img-"+i).style.display = "none";
				document.getElementById("img-"+i).style.opacity = 0;
				document.getElementById("img-"+i).style.filter = "alpha(opacity=0)";
			}
			document.getElementById("img-"+nid).style.display = "block";
			for (i = 1; i <= 20; i++) {
				setTimeout(opacity(i / 20), i * 20);
			}
			setTimeout(function() {
				document.getElementById("image").style.background = "url("+document.getElementById("img-"+nid).src+")";
			}, 400);
		}
	}
}

function slide() {
	var popis = document.getElementById("popis");
	var arrow = document.getElementById("arrow");
	puvodni = 41;
	if (popis.style.height && popis.style.height != puvodni + "px") {
		akce = "sbalit";
		vyska = parseInt(popis.style.height);
	}
	else {
		akce = "rozbalit";
		popis.style.height = "auto";
		vyska = popis.offsetHeight;
		popis.style.height = puvodni + "px";
	}

	function height(height) {
		return function() {
			popis.style.height = puvodni + height + "px";
		}
	}

	for (i = 1; i <= Math.ceil((vyska - puvodni) / 20); i++) {
		if (akce == "sbalit") {
			krok = vyska - puvodni - i * 20;
			if (krok < 0) krok = 0;
		}
		else {
			krok = i * 20;
			if (krok + puvodni > vyska) krok = vyska - puvodni;
		}
		setTimeout(height(krok), i * 20);
	}

	setTimeout(function() {
		if (akce == "sbalit") {
			arrow.className = "down";
			popis.style.height = puvodni + "px";
		}
		else {
			arrow.className = "up";
			popis.style.height = vyska + "px";
		}
	}, 400);
}

function uvod(hidden) {
        if (hidden == "novinky") {
		document.getElementById("novinky").style.display = "block";
		document.getElementById("a-novinky").className = "selected";
		document.getElementById("akce").style.display = "none";
		document.getElementById("a-akce").className = "";
	}
        else if (hidden == "akce") {
		document.getElementById("akce").style.display = "block";
		document.getElementById("a-akce").className = "selected";
		document.getElementById("novinky").style.display = "none";
		document.getElementById("a-novinky").className = "";
	}
}

/* FORM */

function kontrola_hledat(formular) {
	var vysledek = true;
	if (formular.search.value.length < 3) vysledek = false;
	return vysledek;
}

function kontrola_produkt(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.kategorie2.value=="") chyba += "- kategorie 2\n";
	if (formular.kategorie2rady.value=="") chyba += "- kategorie 2 (řada)\n";
	if (formular.kategorie3.value=="") chyba += "- kategorie 3\n";
	if (formular.cena.value=="") chyba += "- cena\n";
	if (formular.dph.value=="") chyba += "- dph\n";
	if (formular.info1.value=="") chyba += "- obj. číslo\n";
	if (formular.info2_nazev.value=="" && formular.info2.value!="") chyba += "- název pole info 2\n";
	if (formular.info3_nazev.value=="" && formular.info3.value!="") chyba += "- název pole info 3\n";
	if (formular.info4_nazev.value=="" && formular.info4.value!="") chyba += "- název pole info 4\n";
	for (i = 1; i <= 4; i++) {
		nazev = document.getElementById("varianty" + i + "_nazev");
		varianty = document.getElementById("varianty" + i);
		if ((nazev.value && !varianty.value) || (!nazev.value && varianty.value)) chyba += "- varianty " + i + "\n";
	}
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	else {
		document.getElementById("loading").style.display = "block";
	}
	return vysledek;
}

function kontrola_akce(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_vzorniky(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_vzorky(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (formular.vzorek.value=="") chyba += "- vzorek\n"
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie1(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie2(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.nazev.value=="") chyba += "- název\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie3(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie4(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.kategorie2.value=="") chyba += "- kategorie 2\n";
	if (formular.nazev.value=="") chyba += "- název\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie5(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.kategorie2.value=="") chyba += "- kategorie 2\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie6(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.kategorie2.value=="") chyba += "- kategorie 2\n";
	if (formular.kategorie3.value=="") chyba += "- kategorie 3\n";
	if (formular.nazev.value=="") chyba += "- název\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kategorie7(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.kategorie2.value=="") chyba += "- kategorie 2\n";
	if (formular.kategorie3.value=="") chyba += "- kategorie 3\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_rady(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (formular.fotka.value=="") chyba += "- fotka\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_heslo(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.heslo.value=="") chyba += "- nové heslo\n";
	if (formular.kontrola.value=="") chyba += "- nové heslo znovu (pro kontrolu)\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_kurz(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.manualne.checked && formular.kurz.value=="") chyba += "- kurz\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_zapomenute(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.mail.value=="" || formular.mail.value.indexOf("@") == -1) chyba += "- e-mail\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_registrace(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.login.value=="") chyba += "- login\n";
	if (formular.heslo.value=="") chyba += "- heslo\n";
	if (formular.kontrola.value=="") chyba += "- heslo znovu (pro kontrolu)\n";
	if (formular.mail.value=="" || formular.mail.value.indexOf("@") == -1) chyba += "- e-mail\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_objednavka(formular, typ) {
	var chyba = "";
	var vysledek = true;
	if (typ == "kosik") {
		if (!document.getElementById("plneni-ano").checked && !document.getElementById("plneni-ne").checked) chyba += "- náhradní plnění\n";
		if (!document.getElementById("montaz-ano").checked && !document.getElementById("montaz-ne").checked) chyba += "- montáž\n";
		if (!document.getElementById("doruceni-dodavatelem").checked && !document.getElementById("doruceni-osobne").checked && !document.getElementById("doruceni-postou").checked) chyba += "- doručení\n";
		if (!document.getElementById("platba-dobirkou").checked && !document.getElementById("platba-hotove").checked && !document.getElementById("platba-prevodem").checked) chyba += "- platba\n";
		zprava = "Vyberte prosím:\n\n";
	}
	else if (typ == "objednavka") {
		if (document.getElementById("typ-fo").checked) {
			if (formular.fo_jmeno.value=="") chyba += "- jméno\n";
			if (formular.fo_prijmeni.value=="") chyba += "- příjmení\n";
			if (formular.fo_mail.value=="" || formular.fo_mail.value.indexOf("@") == -1) chyba += "- e-mail\n";
			if (formular.fo_telefon.value=="") chyba += "- telefon\n";
			if (formular.fo_ulice.value=="") chyba += "- ulice\n";
			if (formular.fo_mesto.value=="") chyba += "- město\n";
			if (formular.fo_psc.value=="") chyba += "- psč\n";
			if (formular.fo_zeme.value=="") chyba += "- země\n";
		}
		else {
			if (formular.po_firma.value=="") chyba += "- název firmy\n";
			if (formular.po_ic.value.length!="")  {
				var a = 0;
				var b = formular.po_ic.value.split('');
				var c = 0;
				for (var i = 0; i < 7; i++) a += (parseInt(b[i]) * (8 - i));
				a = a % 11;
				c = 11 - a;
				if (a == 1) c = 0;
				if (a == 0) c = 1;
				if (a == 10) c = 1;
				if (parseInt(b[7]) != c) chyba += "- neplatné IČ\n";
			}
			if (formular.po_osoba.value=="") chyba += "- kont. osoba\n";
			if (formular.po_mail.value=="" || formular.po_mail.value.indexOf("@") == -1) chyba += "- e-mail\n";
			if (formular.po_telefon.value=="") chyba += "- telefon\n";
			if (formular.po_fakturacni_ulice.value=="") chyba += "- ulice\n";
			if (formular.po_fakturacni_mesto.value=="") chyba += "- město\n";
			if (formular.po_fakturacni_psc.value=="") chyba += "- psč\n";
			if (formular.po_fakturacni_zeme.value=="") chyba += "- země\n";
		}
		zprava = "Níže uvedená pole nejsou vyplněna:\n\n";
	}
	if (chyba != "") {
		vysledek = false;
		alert(zprava + chyba);
	}
	return vysledek;
}

function kontrola_kontakt(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.jmeno.value=="") chyba += "- Vaše jméno\n";
	if (formular.kontakt.value=="") chyba += "- kontakt na Vás\n";
	if (formular.celkem.value=="") chyba += "- kontrolní výsledek\n";
	if (formular.zprava.value=="") chyba += "- zpráva\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_bonusy(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.nazev.value=="") chyba += "- název\n";
	if (formular.cena.value=="") chyba += "- cena nad\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola_montaz(formular) {
	var vysledek = true;
	if (!formular.montaz.value) vysledek = false;
	return vysledek;
}

function kontrola_mail(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.predmet.value=="") chyba += "- předmět\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function posta(formular, zeme) {
	if (typeof window.ActiveXObject != "undefined") httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
	else httpRequest = new XMLHttpRequest();
	httpRequest.open("GET", "/postovne.php?zeme=" + zeme, true);
	httpRequest.onreadystatechange = function() {
		setTimeout(function() {
			postovne = httpRequest.responseText.split("-");
			document.getElementById("zdarma").innerHTML = postovne[0];
			document.getElementById("dodavatel").innerHTML = postovne[1];
			document.getElementById("posta").innerHTML = postovne[2];
			document.getElementById("dobirka").innerHTML = postovne[3];
			formular.postovne_dodavatel.value = postovne[4];
			formular.postovne_posta.value = postovne[5];
			formular.postovne_dobirka.value = postovne[6];
		}, 100)
	}
	httpRequest.send(null);
	setTimeout(function() {
		if (document.getElementById("doruceni-dodavatelem").checked) kosik(formular, postovne[4], 'doruceni', 1);
		else if (document.getElementById("doruceni-postou").checked) kosik(formular, postovne[5], 'doruceni', 1);
		if (document.getElementById("platba-dobirkou").checked) kosik(formular, postovne[6], 'platba', 1);
	}
	, 500)
}

function doprava(formular, doruceni) {
	dobirkou = document.getElementById('platba-dobirkou');
	hotove = document.getElementById('platba-hotove');
	if (doruceni == "dodavatelem" || doruceni == "osobní odběr") {
		dobirkou.disabled = true;
		if (dobirkou.checked) {
			dobirkou.checked = false;
			kosik(formular, 0, 'platba');
		}
	}
	else dobirkou.disabled = false;
	if (doruceni == "poštou" || doruceni == "přepravní službou") {
		hotove.disabled = true;
		if (hotove.checked) hotove.checked = false;
	}
	else hotove.disabled = false;
}

function cena(pole, id, puvodni) {
	var cena = "cena" + id;
	var sleva = "sleva" + id;
	if (pole == "cena") {
		document.getElementById(cena).style.background = "#FFFFFF";
		document.getElementById(sleva).style.background = "#ECE9D8";
		document.getElementById(sleva).value = "";
	}
	else if (pole == "sleva") {
		document.getElementById(sleva).style.background = "#FFFFFF";
		document.getElementById(cena).style.background = "#ECE9D8";
		document.getElementById(cena).value = puvodni;
	}
}

function varianty(formular, hodnota, varianta, kurz, dph) {
	hodnota = hodnota.split("#");
	if (!hodnota[1]) hodnota[1] = 0;
	formular.cena.value -= parseFloat(document.getElementById("varianta" + varianta + "_cena").value);
	formular.cena.value = parseFloat(formular.cena.value) + parseFloat(hodnota[1]);
	document.getElementById("varianta" + varianta + "_nazev").value = hodnota[0];
	document.getElementById("varianta" + varianta + "_cena").value = hodnota[1];

	var celkem = Math.round(formular.cena.value / kurz).toLocaleString();
	document.getElementById("celkem").innerHTML = celkem + ',00';

	celkem_dph = Math.round(Math.round(formular.cena.value / kurz) * (1 + dph / 100)).toLocaleString();
	document.getElementById("celkem-dph").innerHTML = celkem_dph + ',00';
}

function kontrola_pc(formular) {
	var chyba = "";
	var vysledek = true;
	if (!formular.pc.value && (document.getElementById("sluzba-cp").checked || document.getElementById("sluzba-ppl").checked)) chyba += "- podací číslo zásilky\n";
	if (formular.pc.value && !document.getElementById("sluzba-cp").checked && !document.getElementById("sluzba-ppl").checked) chyba += "- doručovací služba\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kontrola(formular, pole) {
	var chyba = "";
	if (formular.kategorie1.value=="") chyba += "- kategorie 1\n";
	if (formular.kategorie2.value=="") chyba += "- kategorie 2\n";
	if (formular.kategorie2rady.value=="") chyba += "- kategorie 2 (řada)\n";
	if (formular.kategorie3.value=="") chyba += "- kategorie 3\n";
	if (chyba) alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
}

function kontrola_ucty(formular) {
	var chyba = "";
	var vysledek = true;
	if (formular.jmeno.value=="") chyba += "- jméno\n";
	if (formular.prijmeni.value=="") chyba += "- příjmení\n";
	if (formular.mail.value=="" || formular.mail.value.indexOf("@") == -1) chyba += "- e-mail\n";
	if (formular.heslo.value=="") chyba += "- heslo\n";
	if (formular.kontrola.value=="") chyba += "- heslo znovu (pro kontrolu)\n";
	if (chyba != "") {
		vysledek = false;
		alert("Níže uvedená pole nejsou vyplněna:\n\n" + chyba);
	}
	return vysledek;
}

function kosik(formular, hodnota, nazev) {
	kurz = formular.kurz.value;
	if (hodnota == "postovne_dodavatel" || hodnota == "postovne_sluzba" || hodnota == "postovne_posta" || hodnota == "postovne_dobirka") hodnota = document.getElementById(hodnota).value;

	formular.cena.value -= Math.round(parseFloat(document.getElementById(nazev + "_cena").value) / kurz);
	formular.cena.value = parseFloat(formular.cena.value) + Math.round(parseFloat(hodnota) / kurz);
	formular.cena_dph.value -= parseFloat(Math.round(Math.round(document.getElementById(nazev + "_cena").value / kurz) * 1.20));
	formular.cena_dph.value = parseFloat(formular.cena_dph.value) + parseFloat(Math.round(Math.round(hodnota / kurz) * 1.20));
	document.getElementById(nazev + "_cena").value = hodnota;

	var celkem = parseFloat(formular.cena.value).toLocaleString();
	document.getElementById("celkem").innerHTML = celkem + ',00';

	celkem_dph = parseFloat(Math.round(formular.cena_dph.value)).toLocaleString();
	document.getElementById("celkem-dph").innerHTML = celkem_dph + ',00';

	celkem_doprava = parseFloat(formular.doruceni_cena.value) + parseFloat(formular.platba_cena.value);
        celkem_doprava = Math.round(celkem_doprava / kurz);
	if (celkem_doprava) {
		document.getElementById("doprava").style.display = "";
		celkem_doprava = celkem_doprava.toLocaleString();
		document.getElementById("celkem-doprava").innerHTML = celkem_doprava + ',00';
	}
	else document.getElementById("doprava").style.display = "none";
}

function session(session, hodnota) {
	if (typeof window.ActiveXObject != "undefined") httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
	else httpRequest = new XMLHttpRequest();
	httpRequest.open("GET", "/kosik.php?session=" + session + "&hodnota=" + hodnota, true);
	httpRequest.send(null);
}

function kontrola_koupit(formular) {
	var chyba = "";
	var vysledek = true;
	for (i = 1; i <= 4; i++) {
		varianta = document.getElementById("varianta" + i + "_select");
		if (varianta) {
			if (varianta.value) {
				if (vzor = document.getElementById("varianta" + i + "_vzor")) {
					if (vzor.value == "=vyberte vzor ze vzorníku=" || !vzor.value) chyba += "- vyberte vzor ze vzorníku: " + document.getElementById("varianta" + i + "_nazev").value.toLowerCase() + "\n";
				}
			}
			else chyba += "- vyberte variantu: " + document.getElementById("varianta" + i).value.toLowerCase() + "\n";
		}
	}
	if (chyba != "") {
		vysledek = false;
		alert("Sestavte si své provedení:\n\n" + chyba);
	}
	return vysledek;
}

function mails(id, formular) {
	if (formular.mail.value && formular.mail.value != "váš e-mail" && formular.mail.value != "e-mail příjemce") {
		if (typeof window.ActiveXObject != "undefined") httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
		else httpRequest = new XMLHttpRequest();
		httpRequest.open("GET", "/mail.php?id=" + id + "&mail=" + formular.mail.value, true);
		httpRequest.onreadystatechange = function() {
			setTimeout(function() {
					document.getElementById(id).innerHTML = httpRequest.responseText;
			}, 100)
		}
		httpRequest.send(null);
	}
	return false;
}
