function LoadProfile(id,e) {
	showFloat(e, 350, "ajax:a=get.profile&id="+id, "Профиль пользователя");
}

function GetWheater(){
		$.post(dlib,{a:"getweather"}, function(data) {
			$("#wPlace").html(data);
		})
}

function check_faq_form(){
	$("form").submit(function() {
	var i = 0;
		if($("#name").val().length < 2) i = 1;
		if($("#mail").val().length < 7) i = 1;
		if($("#question").val().length < 10) i = 1;
		
	if (i == 0){
		return true;
	} else {
		$("#errordiv").css("display","block");
		$("#errordiv").html("Пожалуйста, заполните все поля.");
		return false;
	}	
	});
}

function auth() {
	$("#authProc").empty();
	
	if($$('authMail').value == "" || $$('authPass').value == "") {
		$("#authProc").html("<span class='normal red' align=center>Вы не заполнили форму!</span>").fadeIn("fast");
	} else {
		$("#authBut").hide();
		$("#authProc").html(progress()).fadeIn("fast");
		
		$.post(dlib,{
			a:"auth",
			mail:$$('authMail').value,
			pass:$$('authPass').value,
			once:$$('authOnce').selected
		}, function(data) { 
			data=data.split(":");
			if(data[0] == "error") {
				$("#authBut").fadeIn("fast");
				$("#authProc").html("<span class='normal red' align=center>"+data[1]+"</span>");
			} else {
				location.href=document.location+"?"+Math.floor(Math.random()*1001);
			}
		})
	}
}

function logout() {
	$.post(dlib, {a:"exit"}, function(data) {
		if(data == "ok") location.href=document.location+"?"+Math.floor(Math.random()*1001);
		else showError("Ошибка при выходе из системы, попробуйте повторить попытку позднее");
	})
}

function LoadComments(parms) {
	$("#commentsStatus").html(progress());
	GetXML('a=get.comments'+parms, 'LoadCommentsRes');
}

function LoadCommentsRes(res) {
	$("#commentsStatus").empty();
	
	if(res == "error") alert('Ошибка загрузки комментариев!')
	else $('#commentsPlace').html(res);
}

function SendComment(id) {
	var text=tinyMCE.get('comText').getContent();
	var guest_mode=false; 
	if($$('comName')) guest_mode=true;
	
	if(text.length == 0) {
		$("#sendProc").html("<span class='normal red'>Вы не ввели сообщение!</span>");
	} else {
		var error=false;
		
		if(guest_mode) {
			var name=$$('comName').value;
			if(name.length < 2) {
				$("#sendProc").html("<span class='normal red'>Имя должно содержать минимум два символа!</span>");
				error=true;
			}
		} else {var name=0;}
		
		if(!error) {
			$("#sendProc").html(progress());
			$("#sendBut").hide();
			
			$.post(dlib,{a:"send.comment",id:id,text:ParceText(text),guest:name},function(data){
				$("#sendBut").fadeIn("slow");
				
				if(data == "error") {
					$("#sendProc").html("<span class='normal red'>Ошибка при добавлении комментария</span>");
				} else {
					$("#sendProc").empty();
					$('#commentsForm').slideToggle('slow');
					LoadComments('&id='+data);
				}
			})
		}
	}
}

function DeleteComment(id, author) {
	if(confirm("Вы действительно хотите удалить сообщение пользователя "+author+"?")) {
		$("#commentsStatus").html(progress());
		$.post(dlib,{a:"del.comment",id:id},function(data){
			$("#commentsStatus").empty();
			if(data == "error") {
				showFloat(false, 300, "text:Ошибка при удалении сообщения", "Сообщение об ошибке");
			} else {
				LoadComments('&id='+data);
			}
		})
	}
}

function QuotePost(id) {
	$('#commentsForm').fadeIn('slow');
	$$('comBut').disabled=true;
	$$('comText').disabled=true;
	
	$("body").animate({
		scrollTop:$('#commentsB').offset().top
	}, 1100);
	
	tinyMCE.get('comText').setContent("Подождите, идет загрузка...");
	
	$.post(dlib,{a:"get.quote",id:id}, function(data){
		$$('comBut').disabled=false;
		$$('comText').disabled=false;
		tinyMCE.get('comText').setContent(data);
		$$('comText').focus();
	});
}

function LoadCalendar(parms) {
	if(!parms) parms="";
	//$$('calendarPlace').innerHTML="<div class='small' align=center>загрузка календаря... <img src='images/load.gif' align=absmiddle></div>";
	GetXML('a=calendar'+parms, 'LoadCalendarRes');
}

function LoadCalendarRes(res) {
	$$('calendarPlace').innerHTML=res;
}

function ChangeFav(id) {
	GetXML('a=change.favorites&id='+id, 'ChangeFavRes');
}

function ChangeFavRes(res) {
	if(res == "error") {
		showError("Ошибка при изменении статуса сообщения");
	} else {
		var res_a=res.split(":");
		
		if(res_a[0] == "1") {
			$$('e'+res_a[1]+'_fav').innerHTML="<img src='images/fav.gif' align=absmiddle title='Избранное'>";
			$$('e'+res_a[1]+'_favl').innerHTML="убрать из избранных";
		} else {
			$$('e'+res_a[1]+'_fav').innerHTML="";
			$$('e'+res_a[1]+'_favl').innerHTML="в избранное";
		}
	}
}

function MemberCommunity(id) {
	if(confirm("Подтверждаете?")) GetXML('a=member.community&id='+id, 'MemberCommunityRes');
}

function MemberCommunityRes(res) {
	var res_a=res.split(":");
	
	if(res_a[0] == "ok") {
		document.location.reload();
	} else {
		showError(res_a[1]);
	}
}

function ShowCmtyUsers(id, key) {
	if(!key) key="";
	
	$.post(dlib,{a:'community.list',id:id,key:key}, function(data){
		$('#cmtyUsers').html(data);
		$('#cmtyUsers').slideToggle('slow');
	})
}

function ShowCatSelect() {
	showDiv('changeCat');

	if(ua == 'Opera' || ua == 'IE') {
		document.attachEvent("onclick", HideCatSelect);
		window.event.cancelBubble = true;
		window.event.returnValue = false;
	} else {
		document.addEventListener("mouseup", HideCatSelect, true);
		_event.preventDefault();
	}

}

function HideCatSelect() {
	if(ua == 'Opera' || ua == 'IE') {
		document.detachEvent("onclick", HideCatSelect);
	} else {
		document.removeEventListener("mouseup", HideCatSelect, true);
	}
	hideDiv('changeCat');
}

function AddFriend(id, name) {
	if(confirm("Добавить в друзья: "+name+"?\n"+"Пользователю будет отправлен запрос на подтверждение")) GetXML('a=add.friend&id='+id, 'AddFriendRes');
}

function AddFriendRes(res) {
	var res_a=res.split(":");
	
	if(res_a[0] == "ok") {
		showError("Пользователю отправлен запрос на разрешение добавить его в список ваших друзей");
	} else {
		showError(res_a[1]);
	}
}

function DelFriend(id, name) {
	if(confirm("Вы уверены, что хотите удалить пользователя из друзей: "+name)) GetXML('a=del.friend&id='+id, 'DelFriendRes');
}

function DelFriendRes(res) {
	var res_a=res.split(":");
	
	if(res_a[0] == "ok") {
		showError("Пользователь удален из списка ваших друзей");
		LoadProfile(res_a[1]);
	} else {
		showError(res_a[1]);
	}
}

function SendMsg(user, name, repl) {
	showFloat(false, 350, 'div:sendMsg', 'Отправка сообщения');
	$$('sendMsgText').focus();
	$$('sendMsgTo').innerHTML=name;
	$$('sendMsgId').value=user;
}

function SendMsgAct() {
	var text=$$('sendMsgText').value;
	
	if(text.length > 0) {
		$.post(dlib,{
			a:"send.msg",
			to:$$('sendMsgId').value,
			text:ParceText(text)
		},function(data) {
			if(data == "ok") window.location="msg/out";
			else showError(res);
		})
	} else {
		showError('Ошибка при отправке сообщения! Попробуйте повторить позднее');
	}
}

function DelMsg(id) {
	if(confirm("Вы действительно хотите удалить сообщение?")) GetXML('a=del.msg&id='+id, 'DelMsgRes');
}

function DelMsgRes(res) {
	if(res == "ok") location.href=location.href+"?"+(Math.floor(Math.random()*9000)+1000);
	else showError(res);
}

function ConfirmFriend(id) { GetXML('a=confirm.friend&id='+id, 'ConfirmFriendRes'); }
function ConfirmFriendRes(res) {
	var res_a=res.split(":");
	
	if(res_a[0] == "ok") {
		showError("Пользователь добавлен в список ваших друзей");
	} else {
		showError(res_a[1]);
	}
}

function DenyFriend(id) { GetXML('a=deny.friend&id='+id, 'DenyFriendRes'); }
function DenyFriendRes(res) {
	var res_a=res.split(":");
	
	if(res_a[0] == "ok") {
		showError("Заявка откланена");
	} else {
		showError(res_a[1]);
	}
}

function changeCmtyStatus(id) {
	if(confirm("Подтверждаете изменение прав доступа для сообщества?")) GetXML('a=community.changestatus&id='+id, 'changeCmtyStatusRes');
}

function changeCmtyStatusRes(res) {
	if(res == "ok") window.location="blogs/community/list?"+(Math.floor(Math.random()*9000)+1000);
	else alert(res);
}

function cmtyTruncEntries(id) {
	
}

function searchCmty() {
	var key=$$('searchCmtyKey').value;
	if(key.length > 0) {
		GetXML('a=community.list&id='+$$('searchCmtyId').value+"&key="+key, 'ShowCmtyUsersRes');
	} else {
		GetXML('a=community.list&id='+$$('searchCmtyId').value, 'ShowCmtyUsersRes');
	}
}

function cmtyAllowQuery(id, user) {GetXML('a=community.allow&id='+id+"&user="+user, 'reloadWin');}
function cmtyDenyQuery(id, user) { if(confirm("Отклонить заявку пользователя?")) GetXML('a=community.deny&id='+id+"&user="+user, 'reloadWin');}

function reloadWin(res) {
	if(res == "ok") window.location.reload();
	else alert(res);
}

function inviteCmty(id) {
	var key=$$('inviteCmtyKey').value;
	if(key.length > 0) {
		GetXML('a=community.invite&id='+$$('inviteCmtyId').value+"&key="+key, 'ShowInviteUsersRes');
	} else {
		GetXML('a=community.invite&id='+$$('inviteCmtyId').value, 'ShowInviteUsersRes');
	}
}


function ShowInviteUsersRes(res) {
	if(res == "error") {
		alert("Ошибка при загрузке списка пользователей");
	} else {
		$$('cmtyInviteList').innerHTML=res;
		$$('cmtyInviteList').style['overflow-x']="hidden";
		$$('cmtyInviteList').style['overflow-y']="scroll";
		showDivResize('cmtyInviteList', 100, true);
	}
}


function editProfile(birth_d, birth_m, birth_y) {
	showDiv('editProfile', 450, 460, true);
	
	if(birth_d) $$('u_bDay').value=birth_d;
	if(birth_m) $$('u_bMonth').value=birth_m;
	if(birth_y) $$('u_bYear').value=birth_y;
}

function idxShowRating(rtg) {
	$$('idxRatingsPlace').innerHTML="...загрузка...";
	GetXML('a=get.idx.rating&rId='+rtg, 'idxShowRatingRes');
}

function idxShowRatingRes(res) {
	$$('idxRatingsPlace').innerHTML=res;
}

function DelAva() {
	if(confirm("Вы действительно хотите удалить свой аватар?")) {
		$.post(dlib, {a:"del.ava"}, function(data) {
			location.href=document.location+"?"+Math.floor(Math.random()*1001);
		})
	}
}

function DelAvaRes() {
	document.location.reload();
}


function DeletePost(id) {
	if(confirm("Вы действительно хотите удалить эту запись?")) GetXML('a=del.entry&id='+id, 'DeletePostRes');
}

function DeletePostRes(res) {
	if(res == "error") alert("Ошибка при удалении записи");
	else location.href=location.href+"?"+(Math.floor(Math.random()*9000)+1000);
}

function ChangeTitle() {
	var title=$$('newTitle').value;
	
	$.post(dlib, {
		a:"change.title",
		title:title
	}, function(data) {
		if(data == "ok") location.href=location.href+"?"+(Math.floor(Math.random()*9000)+1000);
		else showError(data);
	})
}

function voteNews(id, vte) {
	$("#voteRes").html(progress());
	
	$.post(dlib,{
			a:"news.vote",
			id:id,
			vote:vte
		}, function(data) { 
			var ress=data.split(":");
			if(ress[0] == "ok") {
				$("#voteRes").html("Ваш голос принят!");
				setTimeout("hideFloat();", 1000);
				location.href=location.href+"?"+(Math.floor(Math.random()*9000)+1000);
			} else if(ress[0] == "error") {
				$("#voteRes").html(ress[1]);
			} else {
				$("#voteRes").html("Ошибка! Попробуйте позднее");
			}
		})
}

function voteNewsRes(res) {
	var ress=res.split(":");
	if(ress[0] == "ok") {
		$$('voteRes').innerHTML="Ваш голос принят!";
		setTimeout("hideFloat();", 1000);
		location.href=location.href+"?"+(Math.floor(Math.random()*9000)+1000);
	} else if(ress[0] == "error") {
		$$('voteRes').innerHTML=ress[1];
	} else {
		$$('voteRes').innerHTML="Ошибка! Попробуйте позднее";
	}
}

function reportError() {
	$$('errorButton').disabled=true;
	if($$('errorText').value != '') GetXML('a=report.error&text='+$$('errorText').value+'&loc='+window.location, 'reportErrorRes');
	else {$$('errorButton').disabled=false;hideDiv('errorReport');}
}

function reportErrorRes(res) {
	var ress=res.split(":");
	$$('errorButton').disabled=false;

	if(ress[0] == "ok") {
		$$('errorText').value="Сообщение об ошибке отправлено!";
		setTimeout("hideFloat('errorReport');", 2000);
	} else {
		$$('errorForm').innerHTML="Ошибка! Попробуйте позднее";
	}
}

function sendNews(id) {
	sn_name=$$('snName').value;
	sn_mail=$$('snMail').value;
	if(sn_name == '' || sn_mail == '') {
		$$('snResult').innerHTML="<span class='red'>Вы не заполнили все поля формы!</span>";
	} else {
		$$('snButton').disabled=true;
		GetXML('a=send.news&id='+id+'&name='+sn_name+'&mail='+sn_mail, 'sendNewsRes');
	}
}

function sendNewsRes(res) {
	$$('snButton').disabled=false;

	if(res == "ok") {
		$$('snResult').innerHTML="<span class='green'>Новость отправлена!</span>";
		setTimeout("hideDiv('snDiv');", 2000);
	} else {
		$$('snResult').innerHTML="<span class='red'>"+res+"</span>";		
	}
}

function mailProc(id) {
	var mail=$$('mailMail').value;
	if(mail == '') {
		$("#mailError").html("Введите адрес!");
	} else {
		$("#mailError").html(progress());
		
		$.post(dlib,{
			a:"mailcom",
			mail:mail,
			id:id
		}, function(data) { 
			data=data.split(":");
			if(data[0] == "error") {
				$("#mailError").html(data[1]);
			} else {
				$("#mailError").html("<span class='green'>Отслеживание включено!</span>");
				setTimeout(hideFloat, 3000);
			}
		})
	}
}

function addEntryProc() {
	if($$('entry_tags_field').value != "") {
		compliterSpyKeys($$("entry_tags_field").value+",");
		return true
	} else {
		return true;
	}
}

function GetVote(id) {
	$("#votePlace").html(progress());
	$.post(dlib,{ a:"get.vote",	id:id }, function(data) { $("#votePlace").html(data) })
}

function GoVote(id) {
	sel=$('input:radio[name=vItem]:checked').val();
	
	if(sel != "undefined" && sel) {
		$.post(dlib,{ 
			a:"go.vote",
			id:id, 
			sel:sel
		}, function(data) {
			data=data.split(":");
			if(data[0] == "ok") GetVote(data[1]);
			else alert('error');
		})
	}
}
