// Language items.

var d0 = "&hellip;";

if(l)
	{
	var d = "před méně než 2 minutami";
	var d1 = "Zpět";
	var d2 = "Náhled";
	var d3 = "Zadej hledaný výraz.";
	var d4 = "Prezentace";
	var d5 = "Načítám";
	var d6 = "Kompletní výběr pozadí";
	var d7 = "Neplatná e-mailová adresa.";
	var d8 = "Vyber předmět, prosím.";
	var d9 = "Nezatržené potvrzovací políčko.";
	var d10 = "Zpráva je prázdná.";	
	var d11 = "Nápověda";
	var d12 = "Opravdu smazat?";
	var d15 = "Mažu";	
	var d20 = "Vytvářím";
	var d22 = "Komentáře";
	var d23 = "Ukládám";
	var d24 = "Dovolený počet znaků byl překročen.";
	var d26 = "Některé z polí je prázdné.";
	var d27 = "Interaktivní výběr";
	}
else
	{
	var d = "less than 2 minutes ago";
	var d1 = "Back";
	var d2 = "Preview";
	var d3 = "Enter your query.";
	var d4 = "Slideshow";
	var d5 = "Loading";
	var d6 = "Multiple background view";
	var d7 = "Invalid e-mail address.";
	var d8 = "Please, select a subject.";
	var d9 = "Confirming box not checked.";
	var d10 = "Message is empty.";	
	var d11 = "Help";
	var d12 = "Really delete?";
	var d15 = "Deleting";	
	var d20 = "Creating";
	var d22 = "Comments";
	var d23 = "Saving";
	var d24 = "Character count limit exceeded.";
	var d26 = "Some of the fields are empty.";
	var d27 = "Interactive selection";
	}

// Element getter.

function gE(name)
	{
	return document.getElementById(name);
	}
	
// Hider / Displayer.
	
function h(el)
	{
	var e = gE(el);

	if(e.className.indexOf("none") != -1)
		{
		e.className = e.className.slice(0, e.className.indexOf("none") - 1);
		}
	else
		{
		e.className += " none"; 
		}                          
	}
    
// Switching photos.
	
function sE(type, event)
	{
	var addr;
	var ok = false;
	
	if(event.keyCode == 37 || event.keyCode == 39)
		{
		if(event.keyCode == 37)
			{
			if(type)
				{
				aB(1);
				addr = gE("hp").href;
				}
			else
				{
				if(gE("pg_p"))
					{
					ok = true;
					addr = gE("pg_p").href;
					}
				}
			}
		else
			{
			if(type)
				{
				aB(2);
				addr = gE("hn").href;
				}
			else
				{
				if(gE("pg_n"))
					{
					ok = true;
					addr = gE("pg_n").href;
					}
				}
			}

		if(type || ok)
			{
			location.assign(addr);
			}
		}
	}

// Search engine appearance settings.

function clr(el, cmp)
	{ 		
	if(el.value == cmp)
		{
		el.value = "";
		if(el.className.indexOf("ch") != -1)
			{
			el.className = "ch";
			}
		else
			{
			el.className = "";
			}
		}
	else
		{
		if(!el.value)
			{			
			el.value = cmp;		
			el.className += " d";
			}		
		}
	}

// Search query emptyness checker.

function chQuery(text)
	{
	var result = true;
	var qa = gE("q");	
	
	if(qa.value == text || !qa.value)
		{
		window.alert(d3);
		result = false;
		}
		
	return result;
	}
	
// Remaining characters counter.

function cChars(el, el2, maxcount)
	{					
	if(el.value.length <= maxcount)
		{
		gE(el2).innerHTML = maxcount - el.value.length; 
		}
	else
		{
		window.alert(d24);
		el.value = el.value.slice(0, maxcount);
		}
	}

// Cookie setter.

var t;
function sCk(el, name, type)
	{
	var d = new Date();
	var expires = d.getTime() + 86400000;
		
	d.setTime(expires);		
	document.cookie = name + "=" + type + ";expires=" + d.toUTCString();
	if(name != "SL" && name != "NS")
		{
		el.innerHTML = d5 + d0;
		}
	
	switch(name)
		{
		case "NS":
			break;
		
		case "L":
			sCk(gE("b"), "NS", 1);
			window.location.reload();
			break;
			
		case "SL":
			if(type > 1)
				{
				q(-2,null,0,0,0);;
				}
			else
				{
				var s = gE('st');
			
				clearTimeout(t);	
				el.className = "none";
				s.className = "";
				}
			break;
			
		default:
			q(-1,null,0,0,0);;		
		}
	}

// Photo view options. Underliner and previous/next photo highlighter.

function a(el)
    {
	if(el.href)
		{
		el.removeAttribute("href");
		}
		
    if(el.className == "n" || !el.className)
    	{
		el.className = "hv";
		}
	else
		{
		if(el.className == "hv")
			{
			el.className = "n";
			}
    	}
    }
    
function aB(number)
	{
	var el = gE("cv" + number);
	
	if(el.className)
		{
		el.className = "";
		}
	else
		{
		el.className = "cv";
		}
	}
	
// Email form checker.

function chMail()
	{
	var result = true;
	var f = gE("f");
	
	if(f.elements[4].value)
		{
		if(f.elements[3].value.search(/^[a-z0-9._-]+@[a-z0-9-]+\.[a-z]{2,3}$/i) != -1)
			{
			if(f.elements[0].checked || f.elements[1].checked || f.elements[2].checked)
				{			
				if(!f.elements[6].checked)
					{
					window.alert(d9);
					result = false;
					}
				}
			else
				{
				window.alert(d8);
				result = false;
				}
			}
		else
			{
			window.alert(d7);
			result = false;
			}
		}
	else
		{
		window.alert(d10);
		result = false;
		}
		
	return result;
	}

// Help viewer.

function sH(el, topic)
	{
	if(el.innerHTML == "?")
		{
		el.className = "SH";
		el.innerHTML = "<span onclick='q(0,this.parentNode," + topic +"," + l + ",0)' onmouseout='eH(this.parentNode)'>" + d11 + "</span>";
		}
	}

function eH(el)
	{
	el.className = "sh";
	el.innerHTML = "";
	if(!el.id)
		{
		el.innerHTML = "?";
		} 
	}

// Comment preview.

function pV(el)
	{
	var n = gE("n");
	var p = gE("pV");
	var w = gE("tw");
	var cl = gE("cl");
	
	if(!p.innerHTML)
		{		
		el.value = d1;
		p.innerHTML = "<div class='xc'><i><b>" + n.value.replace(/<|>/g, " ") + "</b>, <span class='sml'>" + d + "</span></i><br><br>" + w.firstChild.value.replace(/<|>/g, " ") + "</div>";
		w.className = "none";
		cl.className += " none";
		n.style.visibility = "hidden";
		}
	else
		{
		el.value = d2;
		p.innerHTML = "";
		w.className = "";
		cl.className = "bt";
		n.style.visibility = "visible";
		}
	}

// Saving comment.
	
function sC(el,id,a,b)
	{
	el.type = "button";
	
	var text = gE("t").value;
	var name = gE("n").value;  
	
	if(!name || !text || name == a || text == b)
		{
		window.alert(d26);
		}
	else
		{
		q(7,el,id,name,text);
		}
	}
	
// Multi query processor.

function q(type, el, id1, id2, id3)
	{
	var url;
	var data;
	var pre = "ajax.php";
	
	switch(type)
		{			
		case -1:
			// Silent refresher.

			url = document.URL;
			break;

		case -2:
			// Slider.

			url = gE("hn").href;			
			break;

		case 0:
			// Help viewer.
		
			url = pre;
			data = "tp=" + id1 + "&ath=1";
			el.innerHTML = d5 + d0;
			break;
		
		case 1:
			// Rate photo.
			
			url = pre;
			data = "rt=" + id2 + "&i=" + id1 + "&ath=1";
			el.innerHTML = d5 + d0;
			break;
			
		case 2:
			// Delete photo.

			if(confirm(d12))
            	{
				url =  pre + "?c=" + id1 + "&p=" + id2;
				data = "dp=1&dl1=1&sz=1&ath=1";
				el.innerHTML = d15 + d0;			
				break;
				}
			else
				{
				return;
				}
			
		case 3:
			// Delete message.

			if(confirm(d12))
            	{			
				url = pre + "?i=" + id1 + "&t=5";
				data = "dm=1&ath=1";
				el.innerHTML = d15 + d0;
				break;
				}
			else
				{
				return;
				}

		case 4:
			// Create new account.
			
			var nn = gE("nn").value;
			var np = gE("np").value;
			var ga = 0;
			if(gE("ga").checked)
				{
				ga = 1;
				}			
			url = pre;
			data = "ca_only=1&nn=" + nn + "&np=" + np + "&ga=" + ga + "&usr=" + id1 + "&ath=1";
			el.value = d20 + "...";
			break;
			
		case 5:
			// View comments.

			url = pre;
			data = "cm=v&s=0&i=" + id1 + "&u=" + id3 + "&ath=1";
			el.innerHTML = d5 + d0;
			break;			

		case 6:
			// View comments - old first.

			url = pre;
			data = "cm=v&s=1&i=" + id1 + "&u=" + id3 + "&ath=1";
			el.innerHTML = d5 + d0;
			break;
			
		case 7:
			// Save comments.

			url = pre;
			data = "cm=s&i=" + id1 + "&n=" + id2 + "&t=" + id3 + "&ath=1";
			el.value = d23 + "...";
			break;
			
		case 8:
			// Delete comments.
			
			if(confirm(d12))
            	{			
				url = pre;
				data = "cm=d&i=" + id1 + "&ath=1";
				el.innerHTML = d15 + d0;
				id1 = id2;
				break;
				}
			else
				{
				return;
				}
			
		case 9:
			// RollOut.
		
			url = "index.php?a=1&m=1&c=" + el.value;
			data = "me=" + id1;
			break;

		case 10:
			// Interactive color selection tool.
			
			if(gE("d").innerHTML)
				{
				gE("d").className = "";
				return;
				}
			else
				{
				url = pre;
				data = "ic=1&ath=1";
				el.innerHTML = d5 + d0;
				}			
		}
		
	if(window.XMLHttpRequest)
		{
		request = new XMLHttpRequest();
		}
	else
		{
		request = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
	request.open("POST", url, true);
	request.setRequestHeader("content-type", "application/x-www-form-urlencoded");
	request.send(data);
	
	request.onreadystatechange = function()
		{
		if(request.readyState == 4 && request.status == 200)
			{
			switch(type)
				{
				case -2:
					sOn();
				
				case -1:
					sCk(null, "NS", 1);
					gE("b").innerHTML = request.responseText;
					break;

				case 0:
					if(!id3)
						{
						el.className = "hlp";
						el.innerHTML = request.responseText;
						}
					else
						{
						el.innerHTML = d25;
						el.nextSibling.className = "hlp";
						el.nextSibling.innerHTML = request.responseText;
						}
					break;

				case 6:
					
				case 5:
					el.innerHTML = d22;
					var cms = gE("cms"); 
					cms.innerHTML = request.responseText;
					cms.style.display = "block";
					break;

				case 8:
					
				case 7:
					q(5,el,id1,0,0);
					break;
					
				case 9:
					var t = request.responseText;
					var	s = id1.toString();
					var f = t.indexOf("t" + s) + 3 + s.length;
					gE("t" + s).innerHTML = t.slice(f, t.indexOf("<b></b>", f));
					break;
					
				case 10:
					el.innerHTML = d27;
					el.nextSibling.innerHTML = request.responseText;
					break;
					
				default:
					q(-1,null,0,0,0);
				}
			}
		}
	}
	
sCk(null, "NS", 1); 
