$doc = function(name){return document.getElementById(name);}
trim = function (val) { return val.replace(/^\s+|\s+$/, ''); };

function init_def_val(fid, txt)
{
	$('#' + fid).attr('def_val',txt);

	if(empty($('#' + fid).val()))$('#' + fid).val($('#' + fid).attr('def_val'));
	$('#' + fid).focus(function(){if(this.value == $(this).attr('def_val'))this.value = '';});
	$('#' + fid).blur(function() {if(empty(this.value))this.value = $(this).attr('def_val');})
}

function active(obj){if(obj)obj.focus()}
function talert(msg){alert(msg)}

var uTvigle = 0;
function checkLogin(val)
{
	re = /^[-_a-z0-9]+$/ig;
	return val.match(re);
}

function show_statica(res)
{
	if(res['msg'])	alert(res['msg']);
	if(!res || !res['id']) return;

	if((obj = $doc(res['id'])))
	{
		if(res['txt'])
		{
			obj.innerHTML = res['txt'];
			
		}
		if(		res['scrp'])
		eval(	res['scrp']);
		if(res['txt']) showonline();
	}
}

function wait(id, txt)
{
	if(typeof txt =='undefined') txt = "";
	if($doc('wait_view'))
	{
		$doc(id).innerHTML = $doc('wait_view').innerHTML;
		if(!empty(txt)) $('#'+id + ' p').html($('#'+id + ' p').html()+txt);
	}
}

online_user_str ="";
function showonline()
{
//alert(online_user_str);
//	$doc('myface').innerHTML = online_user_str;
	if(online_user_str.length>0)
	$('.avatar').each(function()
	{
		var container=$(this);
		try
		{
			sId = this.id; sId = ','+sId.substring(1)+',';
			r = online_user_str.search(sId);
			if(r>=0)container.addClass('online');
		}		catch(e){}
	});
	
	
	if(typeof(cUser)=='undefined') cUser ='';
	

	if(uTvigle==1) $('.SysAdmTool').show();

	crUserList = ',' + cUser +','
	$('.EditTool').each(function()
	{
		var container=$(this);
		try
		{
			sId = this.id; sId = ','+sId.substring(1)+',';
			r = crUserList.search(sId);
			if((r>=0) || (uTvigle==1))container.show();
		}catch(e){}
	});

	$('.EditTool').each(function()
	{
		var container=$(this);
		try
		{
			sId = this.id; sId = ','+sId.substring(1)+',';
			r = crUserList.search(sId);
			if(r>=0)container.show();
		}catch(e){}
	});

	$('.me').each(function()
	{
		var container=$(this);
		try
		{
			sId = this.id; sId = ','+sId.substring(2)+',';
			r = crUserList.search(sId);
			if(r>=0)container.hide();
		}catch(e){}
	});
}

function user_logining(	param, tp)
{
	x_user_logining(	param, tp, sRef, show_statica);
	return false;
}

function empty(val, mn,mx)
{
	val = val.replace(/([ \n\r])?/ig,""); 
	if(val.length==0) return true;
	if((typeof mn != 'undefined') && (val.length < mn)) return true;
	if((typeof mx != 'undefined') && (val.length > mx)) return true;
	return false;
}


function check_email(val)
{
	val = trim(val);
	re = /^[-_+\.a-z0-9&']+@[-a-z0-9]+[-a-z0-9.]*\.+[a-z]+$/ig;      	
	res = val.match(re);
	return res;
}

function SaveRep()
{
	name	=	$doc('name').value;
	email	=	$doc('email').value;
	brw		=	$doc('brw').value;
	os		=	$doc('os').value;
	eurl	=	$doc('eurl').value;
	anons	=	$doc('anons').value;
	flash	=	$doc('flash_ver').value;
	x_SaveRep(name, email, brw, os, eurl, anons, flash, show_statica);
	return false;
}

function onLogin(res)
{
	if(res['error'])
	{
		//if(onlogin.length) eval(onlogin);
		alert(res['msg']);
		active($doc('login_name'));
	}
	else
	{
		user_logining()
//		if(onLoginAction.length) eval(onLoginAction);

//		if((1==res['admin']) && (onLoginActionAdmin.length)) eval(onLoginActionAdmin);
//		$('.for_reg_user').show();
		hideThisPopup();
		if(res['scrp'])
		{
			eval(res['scrp']);
		}
	}
}


function login()
{
	name			= $doc('login_name').value;
	password		= $doc('login_password').value;
	remember_me		= $doc('remember_me')?$doc('remember_me').checked : 0;
	scrp			= $doc('scrp').value;
	x_login(name, password, remember_me, 0 ,scrp, show_statica)
	return false;
}

function UpadateProfile()
{
	x_UpadateFace(show_statica);
}

function addPlayList(id, name)
{
	if(confirm('добавить ролик "' + name +'" в список Мое избранное?'))
	{
		x_addPlayList(id, name, show_statica);
	}
	return false;
}

function delPlayList(id, name)
{
	if(confirm('удалить ролик "' + name +'" из списка Мое избранное?'))
	{
		x_delPayList(id, name, show_statica);
	}
	return false;
}


function delete_obj(id,name)
{
	if(confirm("Вы хотите удалить \"" + name + "\""))
		x_delete_obj(id, show_statica);
	return false
}

function add_frend(mem_id)
{
	x_add_frend(mem_id, show_statica);
	return false;
}

function del_frend(mem_id, name)
{
	if(confirm("Вы хотите удалить из своих друзей \"" + name + "\""))
	x_del_frend(mem_id, show_statica)
	return false;
}

function own_video(tag, own, obj, tp)
{
	x_own_video(tag,own,obj,tp, show_statica);
	return false;
}


function on_line(id)
{
	wait(id);
	x_online(id, show_statica);
	return false;
}

function complain(obj_id)
{
	x_complain(obj_id, show_statica);
	return false;
}

function complain_spam(msg_id)
{
	if(confirm("Вы Уверены что это сообщение спам?"))
	x_complain_spam(msg_id, show_statica);
	return false;
}

function complain_spam_mail(msg_id)
{
	if(confirm("Вы уверены, что это сообщение спам?"))
	x_complain_spam_mail(msg_id, show_statica);
	return false;
}


function send_complain(obj_id)
{
	if(!$(":radio[name=p[tpc]]").filter(":checked").val())
	{
		alert('Не указали тип жалобы');
		return false;
	}

	prp = $('#send_complain').serialize();
	x_send_complain(prp, show_statica);
	return false;
}

function open_win(url, instanceSettings)
{
	defaultSettings = {height:600,width:800, menubar:0, resizable:0, location:0,status:0,scrollbars:1,toolbar:0}
	settings = $.extend({}, defaultSettings, instanceSettings || {});

	centeredY = (screen.height - settings.height)/2;
	centeredX = (screen.width - settings.width)/2;
	
	var windowFeatures =    'height=' + settings.height +
							',width=' + settings.width +
							',toolbar=' + settings.toolbar +
							',scrollbars=' + settings.scrollbars +
							',status=' + settings.status + 
							',resizable=' + settings.resizable +
							',location=' + settings.location +
							',menuBar=' + settings.menubar;
	
	sSetings = windowFeatures +',left=' + centeredX +',dialogTop=' + centeredY

	window.open(sUrl, 'Вход', sSetings ).focus();	
	return false;
}

function add_friends(frm_id, scrp)
{
	sStr = '0';
	$('#'+ frm_id +' input:checkbox').each(function(){if(this.checked) sStr +=',' +this.value;})

	if(sStr == '0') alert('Вы никого не выбрали');
	else	
	{
		wait('fb_frineds');
		x_add_friends(sStr, scrp, show_statica);
	}
	return false;
}


function set_ch(key, val)
{
	$(key).each(function(){$(this).attr('checked', val);});
	return false;
}