/**
*	MAIN JAVASCRIPT FOR SITE
*/

/////////////////////////////////////////

var BrowserDetect = {
        init: function () {
                this.id = '';
		this.browser = this.searchString(this.dataBrowser, true) || "An unknown browser";
                this.version = this.searchVersion(navigator.userAgent)
                        || this.searchVersion(navigator.appVersion)
                        || "an unknown version";
                this.OS = this.searchString(this.dataOS) || "an unknown OS";
		this.DHTML = this.testActions();
        },
        searchString: function (data) {
                for (var i=0;i<data.length;i++) {
                        var dataString = data[i].string;
                        var dataProp = data[i].prop;
                        this.versionSearchString = data[i].versionSearch || data[i].identity;
                        if (dataString) {
                                if (dataString.indexOf(data[i].subString) != -1){
					if(arguments[1]){
						this.id = data[i].id || '';
					}
                                        return data[i].identity;
				}
                        }
                        else if (dataProp){
				if(arguments[1]){
					this.id = data[i].id || '';
				}
                                return data[i].identity;
			}
                }
		return null;//prideta eilute
        },
        searchVersion: function (dataString) {
                var index = dataString.indexOf(this.versionSearchString);
                if (index == -1) return null;// prideta null
                return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
        },
	testActions: function(){
		var actions=new Array('document.getElementById', 'document.getElementsByTagName');
		for(var i=0; i<actions.length; i++){
			if(!eval(actions[i])){
				return false;
			}
		}
		return true;
	},
        dataBrowser: [
		{               // for Chrome
                        string: navigator.userAgent,
                        subString: "Chrome",
                        identity: "Chrome",
			id: 'ch'
                },
                {       string: navigator.userAgent,
                        subString: "OmniWeb",
                        versionSearch: "OmniWeb/",
                        identity: "OmniWeb",
			id: 'ow'
                },
                {
                        string: navigator.vendor,
                        subString: "Apple",
                        identity: "Safari",
			id: 'sf'
                },
                {
                        prop: window.opera,
                        identity: "Opera",
			id: 'op'
                },
                {
                        string: navigator.vendor,
                        subString: "iCab",
                        identity: "iCab",
			id: 'ic'
                },
                {
                        string: navigator.vendor,
                        subString: "KDE",
                        identity: "Konqueror",
			id: 'kq'
                },
                {
                        string: navigator.userAgent,
                        subString: "Firefox",
                        identity: "Firefox",
			id: 'fx'
                },
                {
                        string: navigator.vendor,
                        subString: "Camino",
                        identity: "Camino",
			id: 'ca'
                },
                {               // for newer Netscapes (6+)
                        string: navigator.userAgent,
                        subString: "Netscape",
                        identity: "Netscape",
			id: 'ns'
                },
                {
                        string: navigator.userAgent,
                        subString: "MSIE",
                        identity: "Explorer",
                        versionSearch: "MSIE",
			id: 'ie'
                },
                {
                        string: navigator.userAgent,
                        subString: "Gecko",
                        identity: "Mozilla",
                        versionSearch: "rv",
			id: 'gc'
                },
                {               // for older Netscapes (4-)
                        string: navigator.userAgent,
                        subString: "Mozilla",
                        identity: "Netscape",
                        versionSearch: "Mozilla",
			id: 'mz'
                }
        ],
        dataOS : [
                {
                        string: navigator.platform,
                        subString: "Win",
                        identity: "Windows"
                },
                {
                        string: navigator.platform,
                        subString: "Mac",
                        identity: "Mac"
                },
                {
                        string: navigator.platform,
                        subString: "Linux",
                        identity: "Linux"
                }
        ]

};
BrowserDetect.init();

/////////////////////////////////////////

function print_v(){
	
	var ww=618;
	var hh=600;
	var tops=(screen.height-hh)/2;
	var lefts=(screen.width-ww)/2;
	var settings='top='+tops+', left='+lefts+', width='+ww+', height='+hh+',';
	settings+="scrollbars=1, resizable=1, status=0, toolbar=0, menubar=0, location=0";
	var mypage = '';
	var myname='print_v';
	var ptt = document.title;
	if(window['print_title']){
		ptt = print_title;
	}
	var path_str='';
	/*if(window['printv_path']){
		path_str='<h5>'+printv_path+'</h5>';
	}*/
	var url = location.href.split("").join("&#8203;");
	var myturinys="<"+"!"+"DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\
	<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\">\
	<head>\
	<title>"+document.title+"</title>\
	<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=utf-8\">\
	<script type=\"text/javascript\" src=\""+root_url+"application/site/themes/default/js/print.js\"></script>\
	"+getUsedStyleSheets()+"\
	<LINK href=\""+root_url+"application/site/themes/default/css/print_style.css\" type=text/css rel=STYLESHEET>\
	</head>\
	<body style=\"margin:20pt 20pt 20pt 20pt;\" onload=\"get_content(); do_print();\">\
	<div class=\"bb2\">\
	<h1>"+ptt+"</h1>"+path_str+"\
	<h2>"+page_tit+"</h2></div>\
	<center>\
	<div id=\"print_content\" align=\"left\"></div>\
	</center>\
	<div class=\"bt2 print_url\">URL: "+url+"</div>\
	</body>\
	</html>";
	var pavas=window.open(mypage,myname,settings);//
	pavas.document.open();
	pavas.document.write(myturinys);
	pavas.document.close();
}

function getUsedStyleSheets(){
	/*return '';*/
	var output='';
	var allLinks = document.getElementsByTagName("link");
	for(var i=0; i<allLinks.length; i++){
		if(allLinks[i].type=='text/css'){
			output+='<LINK href="'+allLinks[i].href+'" type=text/css rel="'+allLinks[i].rel+'">';
		}
	}
	return output;
}

function calcOffset(){
	if(document.getElementById('page_title')){
		var xmlHttp=null;
		try{
			xmlHttp=new XMLHttpRequest();
		}
		catch (e){
			try{
				xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch (e){
				try{
					xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch(e){
					xmlHttp = null;
				}
			}
		}
		if(xmlHttp){
			//location.href = root_url;
		}
	}
	
	
	if(document.getElementById('page') && document.getElementById('menu')){
		var left=document.getElementById('page').offsetLeft;
		var w = document.getElementById('page').offsetWidth
		for(var i=0; i<document.getElementById('menu').childNodes.length; i++){
			var obj=document.getElementById('menu').childNodes[i];
			if(obj.tagName && obj.tagName == 'LI'){
				var divs=document.getElementById('menu').childNodes[i].getElementsByTagName('div')[0];
				if(divs.className == '' || divs.className == 'inactive'){
					divs.style.left=left+'px';
					divs.style.width=w+'px';
					divs.className = '';
					if(BrowserDetect.id == 'ie' && BrowserDetect.version < 7){
						divs.style.top='199px';
					}
				}
			}
		}
	}

}

/////////////////////////////////////
var hObjectName='contentContainer';
var pageObject='pg';
var btb='foot';
var bmenu='footLine';
var gminus=0;
function set_pos_new(){
	setTimeout("do_bott()",100);
	}
function do_bott(){
	if(BrowserDetect.DHTML && document.getElementById(hObjectName) && document.getElementById(pageObject) && document.getElementById(btb)){
		var hb, hp, hi;
		var minusas=gminus;
		var rez=50;
		if(BrowserDetect.id == 'ie'){
			hb=document.documentElement.offsetHeight;
			if(BrowserDetect.version < 7){minusas+=11;}
		}
		else{
			hb=document.documentElement.scrollHeight;
			if(BrowserDetect.id == 'fx'){minusas+=6;}
		}
		if(document.getElementById(pageObject).offsetHeight > hb){
			hb = document.getElementById(pageObject).offsetHeight;
		}
		var hm=0;
		var ot = findPos(document.getElementById(hObjectName));
		hp=document.getElementById(hObjectName).offsetHeight;
		
		if(document.getElementById(bmenu)){
			hm=document.getElementById(bmenu).offsetHeight;
		}
		hi=document.getElementById(btb).offsetHeight;
		if((ot[1]+hp+hm+hi)<hb){
			//alert("KEICIAM "+(hb-(ot[1]+hp+hm+hi)));
			if(BrowserDetect.id == 'ie' && BrowserDetect.version < 7){
				document.getElementById(hObjectName).style.height=(hb-(ot[1]+hm+hi))+"px";
			}
			else{
				document.getElementById(hObjectName).style.minHeight=(hb-(ot[1]+hm+hi))+"px";
			}
		}
		/*else{
			alert("NEKEICIAM\n"+ot[1]+'+'+hp+'+'+hm+'+'+hi+' = '+(ot[1]+hp+hm+hi)+' >= '+hb);
		}*/
/*
		hp=document.getElementById(pageObject).offsetHeight;
		hi=document.getElementById(btb).offsetHeight;
		var hm=-10;
		
		if(document.getElementById(bmenu)){
			hm=document.getElementById(bmenu).offsetHeight;
		}
		if(hp>hb){
			hb=hp;
		}
		rez=hb-((hp-hi)+hm+minusas);
		alert("body:"+hb+"\npage:"+hp+"\ntable:"+hi+"\nrezult:"+rez+"\nbmenu:"+hm);
		if(rez>document.getElementById(hObjectName).offsetHeight){
			if(hb>hp){
				if(BrowserDetect.id == 'ie' && BrowserDetect.version < 7){
					document.getElementById(hObjectName).style.height=rez+"px";
				}
				else{
					document.getElementById(hObjectName).style.minHeight=rez+"px";
				}
			}
		}
*/
	}
}

/*
	paieskai
*/
function repairSearchInput(obj, txt){
	if(arguments[2]){
		if(obj.value == ''){
			obj.value = txt;
			setSearchBtn(false);
		}
		obj.onblur = null;
	}
	else{
		if(obj.value == txt){
			obj.value = '';
		}
		setSearchBtn((obj.value.length > 3));
		obj.onblur = function(){
			repairSearchInput(obj, txt, true);
		};
	}	
}

function checkSearchInput(f, txt){
	return (f.elements['q[text]'].value != '' && f.elements['q[text]'].value != txt && f.elements['q[text]'].value.length>3);
}

function setSearchBtn(){
	if(document.getElementById('searchBtn')){
		document.getElementById('searchBtn').className = ((arguments[0])?'asb':'nsb');
	}
}

var qs_request=null;
var qs_suggest_id = 'searchsuggest';

function doQuickSearch(t, url){
	setSearchBtn((t.value.length > 3));
	if(t.value.length > 3){
		qs_loader(true);
		if(qs_request){
			qs_request.onreadystatechange=null;
			qs_request.abort();
			qs_request = null;
		}
		var post = new Array();
		post.push('qstext='+t.value);
		qs_request = execPost(url, post, 'setQsResults', t);
	}
	else{
		hideQsResults();
		qs_loader(false);
	}
}

function setQsResults(content){
	if(content.responseText!=''){
		showQsResults(content.responseText);
	}
	else{
		hideQsResults();
	}
	qs_loader(false);
}

function showQsResults(content){
	if(document.getElementById(qs_suggest_id)){
		document.getElementById(qs_suggest_id).innerHTML = content;
		document.getElementById(qs_suggest_id).style.visibility = 'visible';
		addEvent(document.documentElement, 'click', closeQsSugest);
	}
}

function hideQsResults(){
	if(document.getElementById(qs_suggest_id)){
		document.getElementById(qs_suggest_id).style.visibility = 'hidden';
		removeEvent(document.documentElement, 'click', closeQsSugest);
	}
}

function closeQsSugest(){
	hideQsResults();
}


function qs_loader(){
	if(document.getElementById('qs_loader')){
		document.getElementById('qs_loader').style.visibility = ((arguments[0])?'visible':'hidden');
	}
}
function addEvent(obj, evType, fn){
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}
function removeEvent(obj, evType, fn){
  if (obj.removeEventListener){
    obj.removeEventListener(evType, fn, false);
    return true;
  } else if (obj.detachEvent){
    var r = obj.detachEvent("on"+evType, fn);
    return r;
  } else {
    return false; 
  }
}
//////////////////////////////////////

function setAttributes(arr, attribute, value)
{
	for(var i = 0;i < arr.length;i++)
	{
		var obj = document.getElementById(arr[i]);
		if(obj)
		{
			obj.setAttribute(attribute, value);
		}
	}
}

/*function repairSearchInput(obj, txt){
	if(arguments[2]){
		if(obj.value == ''){
			obj.value = txt;
		}
		obj.onblur = null;
	}
	else{
		if(obj.value == txt){
			obj.value = '';
		}
		obj.onblur = function(){
			repairSearchInput(obj, txt, true);
		};
	}	
}

function checkSearchInput(f, txt){
	return (f.elements.by_title.value != '' && f.elements.by_title.value != txt);
}*/

function showThis2(obj)
{
	obj.style.visibility = "visible";
	obj.style.display = "block";
}

function hideThis2(obj)
{
	obj.style.visibility = "hidden";
	obj.style.display = "none";
}

function calcCenter(w,h)
{
        var top = 0;
        var left = 0;
        top = (((screen.availHeight-168) - h) / 2);
        left = ((screen.availWidth - w) / 2);
        return [left, top];
}

function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}

function f_scrollLeft() {
	return f_filterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		document.documentElement ? document.documentElement.scrollLeft : 0,
		document.body ? document.body.scrollLeft : 0
	);
}

function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}

function moveToCenter(obj)
{
	ds = calcCenter($(obj).outerWidth(), $(obj).outerHeight());
	obj.style.left = ds[0]+'px';
	obj.style.top = ds[1]+'px';
}

function submitThis(th)
{
	if(arguments[1] && typeof(arguments[1]) == 'object')
	{
		for(var i in arguments[1])
		{
			if(th.elements[i] && typeof(th.elements[i].value)!= 'undefined')
			{
				th.elements[i].value = arguments[1][i]; 
			}
		}
	}
	/*var a = new Array();
	for(var j = 0; j < th.elements.length; j++)
	{
		a.push(th.elements[j].name+'='+th.elements[j].value);
	}
	alert(a.join("\n"));*/
	th.submit();
}

function sendLetterForm(url, id, formid)
{
        $.post(url, $("#"+formid).serialize(), function(data)
	{
		$("#"+id).fadeOut("fast", function()
		{
			$("#"+id).html(data);
			$("#"+id).fadeIn("normal");
		});
	});
}

function _getT(key){
	if(translations[key]){
		return translations[key];
	}
	return '*'+key+'*';
}


function _getI(key){
	if(icons[key]){
		return icons[key];
	}
	return '';
}
function findPos(obj) {
	var curleft = 0;
	var curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj.offsetParent) {
			obj = obj.offsetParent
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

if(!Array.indexOf){
  Array.prototype.indexOf = function(obj){
   for(var i=0; i<this.length; i++){
    if(this[i]==obj){
     return i;
    }
   }
   return -1;
  }
}

function js_prerun()
{
	//setFootToBottom();
	
}

function setFootToBottom()
{
return;
	var id = 'pg';
	var foot_id = 'foot';
	var div = document.getElementById(id);
	if(div)
	{
		var hh = document.documentElement.clientHeight;
		//div.style.height=height+'px';
		var foot = document.getElementById(foot_id);
		if(foot)
		{
			var pos = findPos(foot);
			//alert(hh+'-'+pos[1]+'-'+33+'='+(hh-pos[1]-33));
			var sh = (hh-pos[1]-33);
			if(sh > 0){
				foot.style.height = (hh-pos[1]-33)+'px';
			}
		}
	}
}
