// comments js
var cmntsloaddiv = '';
function setCommentsWaiter() {
	$().ajaxStart(
		function () {
			if(cmntsloaddiv != '') {
				div = document.createElement('div');
				div.className = 'waiter';

				if($_(cmntsloaddiv) != null) {
					$_(cmntsloaddiv).innerHTML = '';
					$_(cmntsloaddiv).appendChild(div);
				}
			}
		}
	);
}

function getComments(divid,url) {
	cmntsloaddiv = divid;
	setCommentsWaiter();

	$.post(
		url,
		{
		},
		function(data) {
			$_(divid).innerHTML = data;
		}
	);

	cmntsloaddiv = '';
}

function getCommentsForm(divid,url,reply) {
	if($_(divid).innerHTML == '') {
		cmntsloaddiv = divid;
		setCommentsWaiter();

		$.post(
			url+'cmnt-reply/'+reply+'/',
	
		{
			},
			function(data) {
				$_(divid).innerHTML = data;
			}
		);
	}else{
		$_(divid).innerHTML = '';
	}

	cmntsloaddiv = '';
}

function getCommentsDel(divid,url,id) {
	cmntsloaddiv = divid;
	setCommentsWaiter();

	$.post(
		url,
		{
		},
		function(data) {
			$_(divid).innerHTML = data;
		}
	);

	cmntsloaddiv = '';
}

function setComment(frm) {
	divid = frm.parentNode.id;

	cmntsloaddiv = divid;
	setCommentsWaiter();

	if($_('cmnt_username') != null) {
		var username = $_('cmnt_username').value;
	}else{
		var username = '';
	}

	if($_('cmnt_captcha') != null) {
		var captcha = $_('cmnt_captcha').value;
	}else{
		var captcha = '';
	}

	$.post(
		frm.action,
		{
			'cmnt[username]': username,
			'cmnt[content]': $_('cmnt_content').value,
			'cmnt[captcha]': captcha
		},
		function(data) {
			if(data == '200') {
				getComments(COMMENTS_DIV,COMMENTS_LIST);
			}else{
				$_(divid).innerHTML = data;
			}
		}
	);

	cmntsloaddiv = '';
}
// change form lang
var chlang = "none";
function changeFormLang(id,tlang,plang) {
	var rid;
	var re;
	var tmp;
	var i;
	if(chlang != "none"){
		plang = chlang;
	}
	chlang = tlang;
	if(plang != tlang) {
		$("#"+id+"_links a").each(
			function() {
				tmp = $(this);
				if(tmp.attr("id") == id+"_"+tlang+"_link") {
					tmp.attr("class","lang-link2");
				}else{
					tmp.attr("class","lang-link");
				}
			}
		);
		i=0;
		$("#"+id+" div").each(
			function() {
				//if(i == 0) {
				//	this.focus();
				//}
				if(this.style.display == "none") {
					this.style.display = "";
					re = new RegExp('lang_'+tlang,"i");
					rid = this.id.replace(re,'lang_'+plang);
					el = this.id.replace('_lang','');

					$_(rid).style.display = "none";
				}
				i++;
			}
		);
	}
}

// reload captcha 
	function captchaReload(id) {
		$_(id).src = "/lib/kcaptcha/?"+Math.random();
	}

// search page
	function sPage(page) {
		$_('search_spage').value = page;
		$_('search').submit();
		return false;
	}

// check all
	function checkAll(id) {
		$('.'+id).attr("checked",true);
	}

// validate generic form
	function validateForm(form,req) {
		var id_form = form.id;
		var field;
		var value;
		var txt;
		var flag = true;
		for(var i = 1; i<req.length; i++) {
			field = id_form+'_'+req[i][0];
			if($_(field) == null || $_(field) == undefined) {
				field += '_'+langNick;
			}

			value = $_(field).value;
			if($_(field) != null) {
				if(value.length == 0) {
					txt = req[i][3];
					if(txt == '') {
						txt = req[i][4];
					}
					flag = false;
				}else if(req[i][1] != 0 && req[i][2] != 0 && (value.length < req[i][1] || value.length > req[i][2])) {
					txt = req[i][5];
					flag = false;
				}

				if(!flag) {
					formError(field,txt);
					break;
				}else{
					$('#'+field).btOff();
				}
			}
		}

		return flag;
	}

// tooltips errors
	function formError(field,txt) {
		if(txt != '') {
			if($_(field) == null || $_(field) == undefined) {
				field += '_'+langNick;
			}

			$_(field).focus();

			$('#'+field).bt(txt,{
				trigger: ['none'],
				cssClass: 'field_tip',
				positions: ['right'],
				fill: '#fff'
			});

			$('#'+field).btOn();
		}
	}

// unique value
	var uniq = new Array();
	function checkUnique(link,frm,key,fld) {
		if(uniq[key] == undefined || (uniq[key] != undefined && uniq[key] != fld.value)) {
			$_(frm+'_'+key+'_uniq').src = '/templates/images/icons/load.gif';

			field = frm+'_'+key;
			if($_(field) == undefined) {
				field += '_'+langNick;
			}

			$.post(
				link+'field/'+fld.value,
				{
				},
				function(data) {
					if(data == 0) {
						$_(frm+'_'+key+'_uniq').src = '/templates/images/icons/ok.png';
						$('#'+field).btOff();
					}else{
						formError(field,$_(frm+'_'+key+'_uniq').title);

						$_(frm+'_'+key+'_uniq').src = '/templates/images/icons/no.png';
					}
				}
			);

		}
	}

// set hidden value
	function setHiddenById(id,v) {
		$_(id).value = v;
	}

// set hidden value
	function setHidden(elem,id) {
		$_(id).value = elem.value;
	}

// get cities by ajax
	var cities_block;
	function getCities(elem,form,item,url) {
		cities_block = form + "_" + item + "_elem";
		//felem = form + "_" + item;
		//elems = $_(form).elements;
		//elems[felem].length = 0;
		//elems[felem].options[0] = new Option("test","0");
		$.get(
			url+"id/"+elem.value+"/form/"+form+"/item/"+item,
			{
			},
			function(data) {
				$_(cities_block).innerHTML = data;	
			}
		);
	}

// get voting result by ajax
	function getVotingResult(voting_id, loading_text, url, flag_results) {
		voting_choice = $_('vchoice').value;
		$('#voting_container').prepend(loading_text);
		$.post(
			url+"id/"+voting_id+"/id_choice/"+voting_choice+"/results/"+flag_results,
			{
			},
			function(data) {
				$('#voting_container').html(data);	
			}
		);
	return false;
	}

// search
function doSearch(link) {
	if($_('search-text').value.length > 0) {
		location.href = link+'q/'+$_('search-text').value+'/';
	}

	return false;
}

function chHeader(id) {
	if($_(id).style.display == 'none') {
		$('#'+id).show(300);
	}else{
		$('#'+id).hide(300);		
	}
}var W3CDOM = (document.createElement && document.getElementsByTagName);

// add to bookmarks
function addBookMark(link) {
	window.external.AddFavorite(link.href, link.title);
	return false;
}

// make home page
function makeHome(link) {
	link.style.behavior='url(#default#homepage)';
	link.setHomePage('http://expert-prognoz.info/');
	return false;
}

// init files
function initFileUploads() {
	if (!W3CDOM) return;
	var fakeFileUpload = document.createElement('div');
	fakeFileUpload.className = 'fakefile';
	var input = document.createElement('input');
	input.className = 'ifile';
	fakeFileUpload.appendChild(input);
	var image = document.createElement('img');
	image.src='/templates/images/file.png';
	image.align = 'top';
	image.className = 'fimg';
	fakeFileUpload.appendChild(image);
	var x = document.getElementsByTagName('input');
	for (var i=0;i<x.length;i++) {
		if (x[i].type != 'file') continue;
		if (x[i].parentNode.className != 'fileinputs') continue;
		x[i].className = 'file';
		var clone = fakeFileUpload.cloneNode(true);
		x[i].parentNode.appendChild(clone);
		x[i].relatedElement = clone.getElementsByTagName('input')[0];
		x[i].onchange = x[i].onmouseout = function () {
			this.relatedElement.value = this.value;
		}
	}
}

// $_ function
function $_(elem) {
	return document.getElementById(elem);
}

// show or hide owners
function showOwners(id,id_elem) {
	var tr = $('#tr_'+id_elem);
	var sel = document.getElementById('select_'+id_elem);
	if(id == 0) {
		tr.show();
	}else{
		tr.hide();
		sel.value = 0;
	}
}

// show and hide blocks
function ShowOrHide(id) {
	var elem = $(id);
	if(elem.css("display") == "none") {
		elem.show();
	}else{
		elem.hide();
	}
}

// getting cookies
function getCookie(c_name)
{
	if (document.cookie.length>0)
	  {
	  c_start=document.cookie.indexOf(c_name + "=");
	  if (c_start!=-1)
		 { 
		 c_start=c_start + c_name.length+1; 
		 c_end=document.cookie.indexOf(";",c_start);
		 if (c_end==-1) c_end=document.cookie.length;
		 return unescape(document.cookie.substring(c_start,c_end));
		 } 
	  }
	return "";
}

// setting cookies
function setCookie(c_name,value,expiredays)
{
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+
	((expiredays==null) ? "" : ";expires="+exdate.toGMTString()) + ";path=/";
}
// change tree status
function chTreeStatus(id) {
	var flag = getCookie('status['+id+']')
	var fimg = 'minus';
	var timg = 'plus';
	var src = $_('elem_image_'+id).src;

	if(flag == null || flag == 0) {
		flag = 1;
	}else{
		flag = 0;
	}

	if(src.indexOf(fimg) > 0) {
		$_('elem_image_'+id).src = src.replace(fimg,timg);
	}else{
		$_('elem_image_'+id).src = src.replace(timg,fimg);
	}
	
	ShowOrHide('#childs_'+id);
	setCookie('status['+id+']',flag)
}

// open tree
function openTree(id) {
	if(getCookie('status['+id+']') == 1) {
		ShowOrHide('#childs_'+id);
	}
}
// field type select
function ftypeSelect(prev,id){
	if(prev!='n'){
	document.getElementById(prev).style.display = 'none';
	}
	document.getElementById(id).style.display = 'block';
}