var NewsId = 0;
var Logged = 0;
var xPos = 0;
var yPos = 0;
var Browser = 0;
NewsCur = 0;
OldOver = new Array();
OldOut = new Array();

if (navigator.appName.indexOf("Netscape") >= 0)
{
	Browser = 1;
	window.captureEvents(Event.MOUSEUP);
	window.onmouseup = GetCoords;
}
else if (navigator.appName.indexOf("Microsoft") >= 0)
{
	Browser = 2;
}

else if (navigator.appName.indexOf("Opera") >= 0)
{
	Browser = 3;
}
// ###########################################
function GetEl(id)
{
	return document.getElementById(id);
}

function reload_news()
{
	setTimeout('xajax_reload_news();', 120000); //vremea ravnoe 5 minutam ravno 300000
	return;
}

function TabSwitch(Mode)
{
	Obj1 = GetEl('tab1');
	Obj2 = GetEl('tab2');
	Obj3 = GetEl('tab_content1');
	Obj4 = GetEl('tab_content2');

	if (Mode == 1)
	{
		Obj1.style.display = 'block';
		Obj2.style.display = 'none';
		Obj3.style.display = 'block';
		Obj4.style.display = 'none';
	}
	else
	{
		Obj1.style.display = 'none';
		Obj2.style.display = 'block';
		Obj3.style.display = 'none';
		Obj4.style.display = 'block';
	}

	return false;
}
//################## Функция вывода сообщения ######################################
function GetCoords(e)
{
	if (Browser == 2 || Browser == 3)
	{
		xPos = event.clientX;
		yPos = event.clientY + document.documentElement.scrollTop;//event.screenY;
		//alert (yPos + '=' + event.clientY + '+' + document.documentElement.scrollTop);
	}
	else if (Browser == 1 && e)
	{
		xPos = e.pageX;
		yPos = e.pageY;
		//alert (document.documentElement.scrollTop);
	}
	else
	{
		xPos = 1;
		yPos = 1;
	}

}

function SwitchNews(id, SwitchFlag)
{
	x = new getObj('n'+id);
	if (!OldOver[id] || !OldOut[id])
	{
		Obj = GetEl('n'+id);
		OldOver[id] = (Obj.onmouseover) ? Obj.onmouseover : null;
		OldOut[id] = (Obj.onmouseout) ? Obj.onmouseout : null;
	}

	if (OldOver[id] && OldOut[id])
	{
		if (SwitchFlag)
		{
			x.obj.onmouseover = null;
			x.obj.onmouseout = null;
		}
		else
		{
			x.obj.onmouseover = OldOver[id];
			x.obj.onmouseout = OldOut[id];
		}
	}
}

function getObj(name)
{
	if (document.getElementById)
	{
		this.obj = document.getElementById(name);
		this.stl = document.getElementById(name).style;
	}
	else if (document.all)
	{
		this.obj = document.all[name];
		this.stl = document.all[name].style;
	}
	else if (document.layers)
	{
		this.obj = document.layers[name];
		this.stl = document.layers[name];
	}
}
//+++++++++++++++++++++++ Переключение наигации в панели юзера +++++++++++++++++++++++
function cabinet_nav()
{
	url='';
	index = document.getElementById('cab_nav').options.selectedIndex;
	if (index > -1)
		url = document.getElementById('cab_nav').options[index].value;
	document.location.href = "/Profile/"+url;
}
//+++++++++++++++++++++++ Отправка преглашения +++++++++++++++++++++++
function Send_Mes(Act, to, from, event)
{
	GetEl('subject').value = '';
	GetEl('text_body').value = '';
	Menu = GetEl('send_message');
	Menu.style.display = 'none';
	ObjBG = GetEl('not_logged_bg');
	ObjBG.style.display = 'none';

	if ( Source = GetEl('send_mes'+Act) )
	{
//		if (isThisMozilla) 	event=evt;
		var rightedge = document.body.clientWidth-event.clientX;
		var bottomedge = document.body.clientHeight-event.clientY;

		if (rightedge < Menu.offsetWidth)
			Menu.style.left = document.body.scrollLeft + event.clientX - Menu.offsetWidth;
		else
			Menu.style.left = document.body.clientWidth / 2;

		if (bottomedge < Menu.offsetHeight)
			Menu.style.top = document.body.scrollTop + event.clientY - Menu.offsetHeight;
		else
			Menu.style.top = document.body.scrollTop + event.clientY;

		if (to != '')
			GetEl('emailto').value = to;

		if (from != '')
			GetEl('emailfrom').value = from;
		Menu.style.display = 'block';
	}
	return false;
}
//+++++++++++++++++++++++ Отправка новости на емаил +++++++++++++++++++++++
function Complain2(newsId){
	GetEl("compl_div_"+newsId).innerHTML = 'Принято!';
}


// ++++++++++++++++++++++++++++++++ NEW FUNCTION ++++++++++++++++++++++++++++++++++++++++++
var bodyHeight;
function login(){
	bodyHeight = $(document).height();
	$("#allcontent").css("height",document.body.offsetHeight+10).css("overflow",'hidden');
	WarnClose();
	obj = GetEl('login_form2');
	obj.style.display = 'block';
	$("#shading").css("height",document.body.offsetHeight+10);
	showShading();
}

function login_close(){
	$("#allcontent").css("height",bodyHeight);
	WarnClose();
	obj = GetEl('login_form2');
	obj.style.display = 'none';
}

//#########################Loader Section#############################
function loader_set()
{
	Obj = GetEl('error_form');
	textObj = GetEl('error_text');
	textObj.innerHTML = 'Загрузка';
	Obj.style.display = 'block';
	login_close();
}

function remove()
{
	Obj = GetEl('error_form');
	textObj = GetEl('error_text');
	textObj.innerHTML = '';
	Obj.style.display = 'none';
}

function change(request)
{
//	loader_set();
	request;
	return false;
}

function Warn2(Act)
{
	Obj = GetEl('error_form');
	textObj = GetEl('error_text');
	textObj.innerHTML = 'На данный момент эта функция не доступна';
	Obj.style.display = 'block';
	login_close();

	return false;
}

function Warn()
{
	login_close();
	Obj = GetEl('error_form');
	textObj = GetEl('error_text');
		textObj.innerHTML = 'На даний момент у Вас нема доступу до цієї функції. Вам необхідно <a href="/User/Register/">зареєструватися</a> або <a href="#" onClick="login(); return false;">увійти у свій акаунт</a>.<br>&nbsp;';
	Obj.style.display = 'block';
	showShading();
	return false;
}

function WarnClose()
{
	Obj = GetEl('error_form');
	textObj = GetEl('error_text');
	textObj.innerHTML = '';
	Obj.style.display = 'none';
	hideShading();
	return false;
}

function Complain(id)
{
	NewsId = id;
	Menu = GetEl('complain');
	Menu.style.display = 'none';

	if (Source = GetEl('c_'+id))
	{
		Menu.style.top = (Source.offsetTop + Source.offsetHeight + 6) + 'px';
		Menu.style.left = (Source.offsetLeft + 3) + 'px';
		Menu.style.display = 'block';
	}
	return false;
}
//+++++++++++++++++++++++ Вывод карточки пользователя +++++++++++++++++++++++
function myTo_email(Act, id)
{
	var element = document.getElementById(Act);
	var bounds = getBounds(element);
	GetEl('uid').value = id;

	loader_set();
	var form = GetEl('user_card');
	form.style.top = bounds.top; //event.clientY;
	form.style.left = bounds.left; //event.clientX;
	xajax_getProfail(GetEl('d56b69').value, GetEl('uid').value);
	remove();
}

function getBounds(element)
{
  var left = element.offsetLeft;
  var top = element.offsetTop;
  for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
  {
    left += parent.offsetLeft;
    top += parent.offsetTop;
  }
  return {left: left, top: top, width: element.offsetWidth, height: element.offsetHeight};
}

function Profile(id, event)
{
	var form = GetEl('user_card');
	form.style.display = 'block';
	return false;
}

function ProfileClose()
{
	GetEl('user_card').style.display = 'none';
	return false;
}

//+++++++++++++++++++++++ Отправка новости на емаил +++++++++++++++++++++++

function To_email(Act, event)
{
	if ('' == Act)
		return Warn();

	Menu = GetEl('mes_email');
	Menu.style.display = 'none';
	GetEl('tmes_email').style.display = 'none';
	GetEl('emailto').value = '';

	if ( Source = GetEl('mes_email_'+Act) )
	{
		Menu.style.left = event.clientX;
		Menu.style.top = event.clientY;
		Menu.style.display = 'block';
		GetEl('tmes_email').style.display = 'block';
	}
	return false;
}


//===================== Затенение сайта при выводе на шапке зеленой плашки с сообщением =========

function reposicion(){
	//IE6 in non-quirks doesnt get document.body.scrollTop:
	var pos = (document.body.scrollTop)?document.body.scrollTop:document.documentElement.scrollTop;
	document.getElementById("shading").style.top = parseInt(pos + 35) + "px";
	document.getElementById("shading").style.top = 0+"px";
}

function showShading () {
	shadingObj = GetEl('shading');

	if(document.getElementById && !window.getComputedStyle){// DOM but not Mozilla
		shadingObj.style.position = "absolute";
	//	window.onscroll = reposicion;
	}
	
	shadingObj.style.display = 'block';
	var tmp = location.href;
	// if (tmp.slice(tmp.length-1) == '#') { 
		// location.replace(tmp);
	// }
	// else location.href += '#';
}

function hideShading () {
	shadingObj = GetEl('shading');
	shadingObj.style.display = 'none';
}


//====================== отправка icq сообщения ==============================

function show_icq_form(uin, from, fromemail) {
	if (!from) from = '';
	if (!fromemail) fromemail = '';
	//alert(fromemail);
	window.open('http://icq.com/people/webmsg.php?to='+uin+'&from='+from+'&fromemail='+fromemail,'Newsland','status=yes,toolbar=no,location=no,menubar=no,resizeable=no,width=500,height=550');
}


//===================== динамический список тегов ======================================

var list_currentLetters = new Array();

function buildTagsList (inputObj, e) {
	// down key = 40
	// up key = 38
	if (e.keyCode==38 || e.keyCode==40) {
		var listObj = document.getElementById('tags_list');
		if (listObj.style.display == 'block') {
			var item_index = document.getElementById('tags_item_index').value;
			if (e.keyCode==40) {
				item = GetEl('tag_item'+item_index);
				item.className = 'tag_item_off';
				item_index++;
				item = GetEl('tag_item'+item_index);
				item.className = 'tag_item_on';
			}
			else if (e.keyCode==38) {
				item = GetEl('tag_item'+item_index);
				item.className = 'tag_item_off';
				item_index--;
				item = GetEl('tag_item'+item_index);
				item.className = 'tag_item_on';
			}
			document.getElementById('tags_item_index').value = item_index;
		}
		return;
	}
	else if (e.keyCode==13 || e.keyCode==9) {
		var listObj = document.getElementById('tags_list');
		if (listObj.style.display == 'block') {
			item_index = document.getElementById('tags_item_index').value;
			item = GetEl('tag_item'+item_index);
			tag_value = item.innerHTML;
			//alert('add_selected_tag('+item_index+', '+tag_value+')');
			add_selected_tag(tag_value);
			return false;
		}
	}
	
	if(e.keyCode==13 || e.keyCode==9) return;
	if(inputObj.value.length < 1) return;
	if(list_currentLetters[inputObj.name]==inputObj.value) return;
	list_currentLetters[inputObj.name] = inputObj.value;

	var letters = inputObj.value;
	
	xajax_getTagsList(letters);
	var tagstr = document.getElementById('tags').value;
//	alert(tagstr);
	tagstr = tags_filter(tagstr, letters);
//	alert(tagstr2);
	var tagsArr = new Array();
	if (tagstr != '') tagsArr = tagstr.split(",");
	var count = (tagstr != '') ? tagsArr.length : 0;
	count = (count < 6) ? count : 6;
	if (count > 0) {
		var listHTML = '';
		for (var i = 0; i < count; i++) {
			if (i == 0) {
				listHTML += '<div class="tag_item_on" id="tag_item0" onmouseover="this.className=\'tag_item_on\'" onmouseout="this.className=\'tag_item_off\'" onclick="add_selected_tag(\''+tagsArr[i]+'\');">'+ tagsArr[i] +'</div>';
				document.getElementById('tags_item_index').value = 0;
				//document.getElementById('tags_item_index_value').value = tagsArr[0];
			}
			else {
				listHTML += '<div class="tag_item_off" id="tag_item'+ i +'" onmouseover="this.className=\'tag_item_on\'" onmouseout="this.className=\'tag_item_off\'" onclick="add_selected_tag(\''+tagsArr[i]+'\');">'+ tagsArr[i] +'</div>';
			}
		}
		document.getElementById('tags_list').innerHTML = listHTML;
		show_list(inputObj, e);
	}
	else {
		hide_list();
	}
	
}

function tags_filter (tagstr, letters) {
	if (tagstr == '' || letters == '') return;
	if (letters.length == 1) return;
	if (letters.indexOf(',')) {
		letters = get_last_tag(letters);
	}
	
	var new_tags = new Array();
	var tagsArr = new Array();
	tagsArr = tagstr.split(",");
	var counter = 0;
	for (var i = 0; i < tagsArr.length; i++) {
		if (tagsArr[i].indexOf(letters) == 0) {
			new_tags[counter] = tagsArr[i];
			counter++;
		}
	}
	var new_tagstr = new_tags.join(',');
	return new_tagstr;
}

function get_last_tag (letters) {
	while (letters.indexOf(',') > 0) {
		letters = letters.substr(letters.indexOf(',')+1);
	}
	if (letters.indexOf(' ') == 0) {
		while (letters.indexOf(' ') == 0) {
			letters = letters.substr(1);
		}
	}
	return letters;
}

function show_list (inputObj, e) {
	
	var listObj = document.getElementById('tags_list');
	listObj.style.top = getAbsoluteTop(inputObj) + 33;
	listObj.style.left = getAbsoluteLeft(inputObj);
	listObj.style.display = 'block';
}

function add_selected_tag (tagstr) {
	//var tagsArr = new Array();
	//tagsArr = tagstr.split(",");
	//var new_tag = tagsArr[tag_index];
	var new_tag = tagstr;
	
	var inputObj = document.getElementById('tag');
	if (inputObj.value.indexOf(",") > 0) {
		var tag_parts = new Array();
		tag_parts = inputObj.value.split(",");
		var new_tags_string = '';
		for (var i = 0; i < tag_parts.length; i++) {
			if (i == (tag_parts.length - 1)) {
				new_tags_string += ' ' + new_tag;
			}
			else {
				new_tags_string += tag_parts[i] + ',';
			}
		}
		inputObj.value = new_tags_string;
	}
	else {
		inputObj.value = new_tag;
	}	
	hide_list();
}

function hide_list () {
	var listObj = document.getElementById('tags_list');
	if (listObj) listObj.style.display = 'none';
}

document.documentElement.onclick = autoHideList;
	
function autoHideList(e) {
	if(document.all)e = event;
	
	if (e.target) source = e.target;
		else if (e.srcElement) source = e.srcElement;
		if (source.nodeType == 3) // defeat Safari bug
			source = source.parentNode;		
	if(source.tagName.toLowerCase()!='input' && source.tagName.toLowerCase()!='textarea') hide_list();
	
}

function getAbsoluteTop(inputObj) {
	
  var returnValue = inputObj.offsetTop;
  while((inputObj = inputObj.offsetParent) != null){
  	returnValue += inputObj.offsetTop;
  }
  return returnValue;
}
function getAbsoluteLeft(inputObj) {
	oLeft = inputObj.offsetLeft;
	while(inputObj.offsetParent!=null) {
		oParent = inputObj.offsetParent;
		oLeft += oParent.offsetLeft;
		inputObj = oParent;
	}
	return oLeft;
}

//===================== выбор тегов из облака самых популярных =====================

function chooseTag () {
	var element = document.getElementById('show_tags_cloud');
	var bounds = getBounds(element);
	
	var cloud = GetEl('tags_cloud');
	cloud.style.top = bounds.top-260; //event.clientY;
	cloud.style.left = bounds.left-115; //event.clientX;
	//xajax_getTopTags('tags_cloud');
	cloud.style.display = 'block';
	cloud.style.width = 525;
}
function close_cloud () {
	var cloud = GetEl('tags_cloud');
	cloud.style.display = 'none';
}
function add_tag_to_tags (str) {
	var element = document.getElementById('tag');
	element.value += (element.value != '') ? ', ' : '';
	element.value += str;
}


//====================== проверка повтора ====================================

function show_repeat_list () {
	var element = GetEl('repeat_list');
	element.display = 'block';
}


//===================== Выбор рубрик при добавление новости ======================================

function checkRubricNum () {
	var rubricObj = GetEl('rubricCombo');
	var selectedOpt = new Array();
	var counter = 0;
	for (var i = 0; i < rubricObj.length; i++) {
		if (rubricObj.options[i].selected) {
			selectedOpt[counter] = i;
			counter++;
		}
	}
	if (selectedOpt.length > 3) {
		rubricObj.options[selectedOpt[0]].selected = false;
	}
}


function fullsizeImage (url) {
	window.open(url, 'Newsland', 'toolbar=no,width=700,height=700');
}

function pause(milliseconds)
{
    var now = new Date();
    var exitTime = now.getTime() + milliseconds;

    while(true)
    {
        now = new Date();
        if(now.getTime() > exitTime) return;
    }
}
// ++++++++++++++++++++++++++++++++ END NEW FUNCTION ++++++++++++++++++++++++++++++++++++++++++


// show icon over a <input type="button" value="Txt">
//
/*
function KaKa6e4Ka(Btn, Ico, TxtWidth)
{
	if ((Btn = GetEl(Btn)) && (Ico = GetEl(Ico)))
	{
		Ico.style.display = 'block';
		IcoHeight = Math.floor(Ico.offsetHeight/2);
		IcoWidth = Ico.offsetWidth + 5;
		Ico.style.display = 'none';

		Btn.style.position = 'absolute';
		Btn.style.position = 'relative';

		Ico.style.left = (Btn.offsetLeft + Math.floor((Btn.offsetWidth - TxtWidth - IcoWidth)/2)) + 'px';
		Ico.style.top = (Btn.offsetTop + Math.floor(Btn.offsetHeight/2) - IcoHeight) + 'px';

		Ico.style.display = 'block';
	}
}
*/
function Redir(Href)
{
	document.location.href = Href;
}


function showHideComment(id) {
	if (id == null) return false;
	
	var avaID = 'ava' + id;
	var commID = 'comm' + id;
	var pmID = 'plusMinus' + id;
	
	var ava = document.getElementById(avaID);
	var comm = document.getElementById(commID);
	var plusMinus = document.getElementById(pmID);
	
	if (ava.style.display != 'none') {
		ava.style.display = 'none';
		comm.style.display = 'none';
		plusMinus.innerHTML = '[+]';
	}
	else {
		ava.style.display = 'block';
		comm.style.display = 'block';
		plusMinus.innerHTML = '[&minus;]';
	}
}
//==================crossbrowser class adding============
	var u = navigator.userAgent.toLowerCase();
	
	is = function(t){return (u.indexOf(t)!=-1)};
	addClass = function(el,val){
		if(!el.className) {
			el.className = val;
		} else {
			var newCl = el.className;
			newCl+=(" "+val);
			el.className = newCl;
		}
	}
	var el = document.getElementsByTagName('html')[0];
	if(is('chrome')) addClass(el,'chrome');
	if(is('msie')) addClass(el,'msie');
	if(is('msie 7.0')) addClass(el,'msie7');
	if(is('opera/9')) addClass(el,'opera9');
	if(is('opera')) addClass(el,'opera');
	if(is('firefox/2')) addClass(el,'gecko ff2');
	if(is('firefox/3')) addClass(el,'gecko ff3');
	if(is('gecko/')) addClass(el,'gecko');
	if(is('safari/')) addClass(el,'safari');
	if(is('mozilla/')) addClass(el,'gecko');
	if(is('msie 8')) addClass(el,'msie8');
	if(is('msie 6')){ 
		if(!is('msie 7')){ 
			ie6=true;
			addClass(el,'msie6');
		}
	}
	if(is('msie 9') || is('nt 6')) addClass(el,'msie9'); 
//==================crossbrowser class adding fine============

