	
	// zmena vlajky po vyberu jazyka
	function language_change(path)
	{
		el = document.getElementById('language_select');
		si = el.selectedIndex;
		
		if (el.options[si].value != fc_language)
		{
			document.getElementById('language_image').src = path + fc_languages[el.options[si].value];
			fc_language = el.options[si].value;
		}
		
		return true;
	}
	
	// validace emailu
	function valid_mail()
	{
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		var infd = document.getElementById('mail_info');
		
		if (reg.test(document.getElementById('reg_mail').value) == false)
		{
			infd.style.display = 'inline';
		}
		else
		{
			infd.style.display = 'none';
		}
		
		return true;
	}
	
	// dodaci se lisi od fakturacni
	function toggle_addresses()
	{
		var el = document.getElementById('fakturacni_adresa');
		
		if (el.style.display == 'none')
		{
			el.style.display = 'block';
		}
		else
		{
			el.style.display = 'none'
		}
		
		return true;
	}
	
	// kontrola dvou hesel
	function passes_differ()
	{
		p1 = document.getElementById('pass1').value;
		p2 = document.getElementById('pass2').value;
		var infd = document.getElementById('passes_info');

		if (p1 == p2)
		{
			infd.style.display = 'none';
		}
		else
		{
			infd.style.display = 'inline';
		}
		
		return true;
	}
	
	// kontrola existence uzivatelskeho jmena
	function username_exists()
	{
		var infd = document.getElementById('user_e_info');
		var req = new Request({
								url:'../action.php',
								async:true,
								onSuccess: function(rett) {
									if (rett == 'bad')
									{
										userok = false;
										infd.style.display = 'inline';
									}
									else
									{
										userok = true;
										infd.style.display = 'none';
									}
								}
							}).send("user_exists=" + document.getElementById('uzivatel').value);
	}
	
	// kontrola registracniho formulare
	function valid_registrace(nopass, diffpass, badmail, other, passes, uch, ucherr)
	{
		// ajax zjisteni uzivatelskeho jmeno
		if (uch)
		{				
			if (document.getElementById('uzivatel').value != "" && !userok)
			{
				alert(ucherr);
				document.getElementById('uzivatel').focus();
				return false;
			}
		}
		
		var p1 = document.getElementById('pass1');
		var p2 = document.getElementById('pass2');
	
		if (passes)
		{		
			// vyplnene heslo, vcetne delky
			if ((p1.value == '') || (p1.value.length < 5))
			{
				alert(nopass);
				p1.focus();
				return false;
			}
		}
		else
		{
			// jen delka hesla
			if ((p1.value.length > 0) && (p1.value.length < 5))
			{
				alert(nopass);
				p1.focus();
				return false;
			}
		}
	
		// shoda hesel
		if (p1.value != p2.value)
		{
			alert(diffpass);
			p2.focus();
			return false;
		}
		
		var mail = document.getElementById('reg_mail');
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		
		// kontrola mailu
		if (reg.test(mail.value) == false)
		{
			alert(badmail);
			mail.focus();
			return false;
		}
		
		var inps = new Array('jmeno', 'prijmeni', 'adresa1', 'psc', 'mesto');
		
		// ostatni
		for (var i = 0; i < inps.length; i++)
		{
			var el = document.getElementById(inps[i]);
			
			if (el.value == '')
			{
				alert(other);
				el.focus();
				return false;
			}
		}
		
		// fakturacni adresa
		if (document.getElementById('fakturacni_adresa').style.display != 'none')
		{
			var inps = new Array('dfirma', 'dic', 'dadresa1', 'dpsc', 'dmesto');
		
			for (var i = 0; i < inps.length; i++)
			{
				var el = document.getElementById(inps[i]);
				
				if (el.value == '')
				{
					alert(other);
					el.focus();
					return false;
				}
			}
		}
		
		return true;	
	}
	
	// validace emailu pri zapomenutem uzivatelskem jmenu
	function valid_forgotten(msg)
	{
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		var mail = document.getElementById('forg_mail');
		
		// kontrola mailu
		if (reg.test(mail.value) == false)
		{
			alert(msg);
			mail.focus();
			return false;
		}
		
		return true;	
	}
	
	// kontrola delky hledaneho vyrazu
	function long_searchterm(msg)
	{
		var st = document.getElementById('q_st');
		
		if (st.value.length < 3)
		{
			alert(msg);
			st.focus();
			return false;
		}
		
		return true;	
	}
	
	// kontrola vybrani poctu kusu
	function moc_kusu(ks, ksid, msg)
	{
		var el = document.getElementById(ksid);
		
		if (el.value > ks)
		{
			alert(msg);
			el.value = ks;
			el.focus();
			return false;
		}
		
		return true;
	}
	
	// odstraneni zbozi z kosiku
	function delete_stock_pc(id, link, bu, really)
	{
		if (confirm(really))
		{
			window.location = link + '?delete_stock=' + id + '&bu=' + bu;
		}
		
		return;		
	}
	
	// vyprazdneni kosiku
	function delete_stock_all(link, bu, really)
	{
		if (confirm(really))
		{
			window.location = link + '?delete_all_stock=1&bu=' + bu;
		}
		
		return;
	}
	
	// kontrola objednavkoveho formulare
	function valid_order(other)
	{
		var inps = new Array('jmeno', 'prijmeni', 'adresa1', 'psc', 'mesto');
		
		// ostatni
		for (var i = 0; i < inps.length; i++)
		{
			var el = document.getElementById(inps[i]);
			
			if (el.value == '')
			{
				alert(other);
				el.focus();
				return false;
			}
		}

		var mail = document.getElementById('reg_mail');
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		
		// kontrola mailu
		if (reg.test(mail.value) == false)
		{
			alert('Please enter proper e-mail address.');
			mail.focus();
			return false;
		}
		
		return true;	
	}
	
	// zmena zpusobu dopravy v kosiku
	function pick_d(did, popis, cena, pl, sel)
	{
		// nastavime typ dopravy do formu
		document.getElementById('hid_d').value = did;
		doprava = did;
		
		var el = document.getElementById('pl_span');
		var html = '';
		// projdeme zvolene platby
		for(var i = 0; i < pl.length; i++)
		{	
			// mame aktualni ze session?
			var checked = '';

			if ((platby[pl[i]][4] == '1') && (prevsel == true))
			{
				checked = ' checked="checked"';
				prevsel = false;
			}
			else
			{
				checked = ' checked="checked"';
			}
		
			// vytvorime radio buttony plateb
			html = html + '<input type="radio" name="plat_r" id="pla_' + platby[pl[i]][0] + '" value="' + platby[pl[i]][0] + '" onClick="pick_p(' + platby[pl[i]][0] + ', \'' + platby[pl[i]][2] + '\');"' + checked + '><label for="pla_' + platby[pl[i]][0] + '">' + platby[pl[i]][1] + platby[pl[i]][3] + '</label><br>';
		}
		
		el.innerHTML = html;
		platba = 'nop';
		document.getElementById('dap_details').style.display = '';
		document.getElementById('de_span').innerHTML = popis;
		
		return true;
	}
	
	// zmena zpusobu platby v kosiku
	function pick_p(pid, popis)
	{
		// nastavime typ platby do formu
		document.getElementById('hid_p').value = pid;
		platba = pid;
		
		// detaily
		if (popis != "")
		{
			popis = '<br>' + popis;
		}
		document.getElementById('de_span').innerHTML = document.getElementById('de_span').innerHTML + popis;
		
		return true;
	}
	
	// povolit submit dap?
	function dap_submit(msg)
	{
		if ((document.getElementById('hid_d').value == 'nop') || (document.getElementById('hid_p').value == 'nop'))
		{
			alert(msg);
			return false;
		}

		return true;
	}