

var pageUpIcon=homePath+"/public/images/iconUp_036.gif";
var pagePrintIcon=homePath+"/public/images/iconPrint_036.gif";
var pageMailIcon=homePath+"/public/images/iconMail_036.gif";
var viewDocIcon=homePath+"/public/images/iconDocView_036.gif";
var viewDocIcon3=homePath+"/public/images/iconDocView_HiPath.gif";
var actionIcon=homePath+"/public/images/arrow_036.gif";
var linkIcon=homePath+"/public/images/arrow_F90.gif";
var moreIcon=homePath+"/public/images/arrow_036.gif";
var viewArchiveIcon=homePath+"/public/images/iconDocView_F90.gif";

var quotes=new Array();quotes[0]="„";quotes[1]="“";

function addEvent(obj, evType, fn, useCapture){
	// Opera 7+ hacks
	if (window.opera) {
		// Opera doesn't accept attaching events on object window, but accepts them on object document
		if (obj == window) {
			obj = document;
		}
	}
	
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, useCapture);
		return true;
	} else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

function removeEvent(obj, evType, fn, useCapture) {
	// Opera 7+ hacks
	if (window.opera) {
		// Opera doesn't accept detaching events on object window, but accepts them on object document
		if (obj == window) {
			obj = document;
		}
	}
	if (obj.removeEventListener) {
		obj.removeEventListener(evType, fn, useCapture);
		return true;
	} else if (obj.detachEvent) {
		var r = obj.detachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

function setClass(elm,className)
	{
	elm.className=className;
	return(true);
	}

function hasClass(elm,className)
	{
	try
		{
		if(elm.className)
			{
			var result=false;
			classes=elm.className.split(' ');
			for(i=0;i<classes.length;i++)
				if(classes[i]==className) result=true;
			return(result);
			}
		else return(false);
		}
	catch(ex) {alert("hasClass exception: "+ex);return(false);}
	}

function addClass(elm,className)
	{
	try
		{
		if(elm.className) elm.className+=" "+className;
		else elm.className=className;
		return(true);
		}
	catch(ex) {alert("addClass ex: "+ex);return(false);}
	}

function rmClass(elm,className)
	{
	try
		{
		if(elm.className)
			{
			var result="";
			classes=elm.className.split(' ');
			for(i=0;i<classes.length;i++)
				{
				if(classes[i]!=className) {result+=classes[i];}
				if(i<(classes.length-1)) result+=" ";
				}
			elm.className=result;
			}
		return(true);
		}
	catch(ex) {alert("rmClass exception: "+ex);return(false);}
	}

function replaceClass(elm,oldClassName,newClassName)
	{
	rmClass(elm,oldClassName);
	addClass(elm,newClassName);
	}

function addContent(item,contentString,position){
	try{
		cnt=document.createTextNode(contentString);
		if(position=="before") item.insertBefore(cnt.cloneNode(true),item.firstChild);
		else item.appendChild(cnt.cloneNode(true));
		return(true);
	}
	catch(ex) {alert("addContent error "+ex);return(false);}
}

function fixE(e)
	{	// Oprava chyby MSIE
	if (!e && window.event) e = window.event;
	if (!e.target) e.target = e.srcElement;
	return e;
	}

function addIcon(item,iconImage,position)
	{
	try
		{
		space=document.createTextNode(" ")
		icon=document.createElement("IMG");
		icon.src=iconImage;
		icon.className="icon";
		if(position=="before")
			{item.insertBefore(space,item.firstChild);item.insertBefore(icon,item.firstChild);}
		else
			{item.appendChild(space);item.appendChild(icon);}
		}
	catch(exception) {}
	return(true);
	}

function switchListItem(e)
	{
	e=fixE(e);
	var obj;
	if (e.currentTarget) obj = e.currentTarget;
	else obj = e.target;
	obj=obj.parentNode;
	if(obj.className)
		if(hasClass(obj,"open"))
			replaceClass(obj,"open","closed");
		else if(hasClass(obj,"closed"))
			replaceClass(obj,"closed","open");
		else
			addClass(obj,"closed");
	else
		addClass(obj,"closed");
	}

function initFoldingList(list)
	{
	listChildren=list.childNodes;
	for(i=0;i<listChildren.length;i++)
		{
		if(listChildren[i].tagName=="LI")
			{
			child=null;
			children=listChildren[i].childNodes;
			for(j=0;j<children.length;j++) if(children[j].tagName=="H4") child=children[j];
			if(child)
				{
				addEvent(child,"click",switchListItem);
				if(!(hasClass(listChildren[i],"open")||hasClass(listChildren[i],"closed")))
					addClass(listChildren[i],"closed");
				}
			}
		}
	}


function openFilter(obj)
	{ // otevre popup s filtrem
	href=obj.href;
	var w = window.open(
		href,"pressFilter",
		"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=400,height=550"
		);
	w.parentWindow = window;
	return(true);
	}

function selectDivision(e)
	{
	e=fixE(e);
	var obj;
	if (e.currentTarget) obj = e.currentTarget;
	else obj = e.target;
	numbers=new RegExp("^[0-9]{1,}$");
	if(obj.value.search(numbers)==-1)
		obj.form.target="_blank";
	else if(obj.form.target=="_blank") obj.form.target="";
	obj.form.submit();
	obj.selectedIndex=0;
	return(true);
	}

function clearTextField(e)
	{
	e=fixE(e);
	var obj;
	if (e.currentTarget) obj = e.currentTarget;
	else obj = e.target;
	if(obj.value) obj.value="";
	return(true);
	}

function setTarget(link)
	{
	if(link.href)
		{
		var domain=document.location.host;
		// Obsahuje-li domain port, odstranime ho
		if(domain) domain=(domain.indexOf(":")>-1)?domain.substr(0,domain.indexOf(":")):domain;
		var host=link.host;
		// Obsahuje-li host port, odstranime ho
		if(host) host=(host.indexOf(":")>-1)?host.substr(0,host.indexOf(":")):host;

		var protocol=link.protocol;
		if((host!=domain)&&((protocol=="http:")||(protocol=="https:")||(protocol=="ftp:")))
			{
			// jestlize se doména dokumentu a odkazu neshoduji, otevirani nastavime do noveho okna
			link.target="_blank";
			}
		return(true);
		}
	else return(false);
	}
	
function show_partner(input) {
	if(input.id != 'nabidka')
		return(false);
	var fp = document.getElementById("field_partner");
	var partner = document.getElementById("partner");
	
	if(input.checked) {
		cls.remove(fp, 'nonVisual');
		cls.add(partner, 'special_select');
	}
	else {
		cls.add(fp, 'nonVisual');
		cls.remove(partner, 'special_select');
	}

	return(true);
}

function init()
	{
	try
		{
		if(document.all)
			items=document.all;
		else
			items=document.getElementsByTagName("*");
		for(var i=0;i<items.length;i++)
			{
			if(items[i].id)
				switch(items[i].id)
					{
					case "select_division_id":
//						addClass(items[i].form,"js_on");
						addClass(document.body,"js_on");
						addEvent(items[i],"change",selectDivision);
						break;
					// case "pressFilter":addEvent(items[i],"click",openFilter);break;
					case "search_query":addEvent(items[i],"focus",clearTextField);break;
					case "nabidka":show_partner(items[i]);break;
					}
			if(items[i].tagName)
				switch(items[i].tagName)
					{
					case "A":if(items[i].className!= "noblank") {setTarget(items[i]);} break;
					case "Q":if(document.getElementsByTagName&&document.all&&!window.opera) {addContent(items[i],quotes[0],"before");addContent(items[i],quotes[1],"after");} break;
					case "BLOCKQUOTE":if(document.getElementsByTagName&&document.all&&!window.opera){addContent(items[i],quotes[0],"before");addContent(items[i],quotes[1],"after");}break;
					}
			if(items[i].className)
				{
				classes=items[i].className.split(" ");
				for(var j=0;j<classes.length;j++)
					{
					switch(classes[j])
						{
						case "pageUp":addIcon(items[i],pageUpIcon,"after");break;
						case "pagePrint":addIcon(items[i],pagePrintIcon,"after");break;
						case "pageMail":addIcon(items[i],pageMailIcon,"after");break;
						case "viewDoc":addIcon(items[i],viewDocIcon,"after");break;
						case "viewArchive":addIcon(items[i],viewArchiveIcon,"after");break;
						case "link":addIcon(items[i],linkIcon,"before");break;
						case "linkAction":addIcon(items[i],actionIcon,"before");break;
						case "linkMore":addIcon(items[i],actionIcon,"before");break;
						//case "foldingList":initFoldingList(items[i]);break;
						case "target_blank":items[i].target="_blank";break;
						case "target_image":items[i].target="_blank";break;
						case "viewDoc2":
              if(!invertAddon)
                addIcon(items[i],viewDocIcon,"after");break;
						case "viewDoc3":
							if(invertAddon)
								addIcon(items[i],viewDocIcon3,"after");
							else
								addIcon(items[i],viewDocIcon,"after");
							break;
						}
					}
				}
			}
		}
	catch(ex)
		{alert("Javascript initialization exception: "+ex);}
	}


addEvent(window,"load",init);
