﻿function fNewBlock(block_data)
{
		function fLdrTransfer(data)
		{
			if(!fw.data.isObj(data)) return false;
			var res = fw.io.transfer(this._iohndl, data);
		 	return true;
		}
		function fLdrPing()
		{
			var data = {};
			this.fLdrTransfer(data);
		}
		function fLdrError(err)
		{
			alert(err);
		//	this.fChtStatus(3, fw.data.isError(err)? fw.data.errorDscr(err): err, 6);
			return null;
		}
		
		// Режим ожидания при перетаскивании (опционально)
		function dragMessage()	{
			return false	;
		}

		function fNewBlock_(){
			return false;
		}

		function f_show_prop_(){
			if( this.f_show_prop ){
					
					if( this.d && this.d.dis=='none' ){
						this.b_open_close(this.d.b_index);
					}	
				 
					this.f_show_prop(); 
				}
			else
				alert('Настройки');
			return false;
		}

		function b_refresh(){
			alert('b_refresh');
			return false;
		}
		
		// Удалить виджет
		function b_delete()
		{
			removeElementById('C_'+this.name_block);

			var list = this.d.list;
			var index = this.d.b_index;
			var col = this.d.col;
			
			del_A_(list,col,this.d.poz);
		
			page.d.b[index]=null;
			page.d.L[list].bl[index]=null;
			
			page.block_col--;	
			
			this.d = null;
				
			if(list!=0){ 
				f_send_widget(index);
			}
			else
			{
				removeElementById('List_0');
			}
			return true;
		}

		// Свернуть и развернуть окно виджета
		function b_open_close(arrow)
		{
			var el = $(this.name_block);
			if (el)
			{
				if(el.style.display == "none")
				{
					if($(this.name_block+'_win_hed'))$(this.name_block+'_win_hed').className = "css_widget_ico1";
					el.style.display = "block";
					this.d.dis = "block";
				}else{
					if($(this.name_block+'_win_hed'))$(this.name_block+'_win_hed').className = "css_widget_ico2";
					el.style.display = "none";
					this.d.dis = "none";
				}
				f_send_widget(this.d.b_index);
			}
			
			return true;
		}

		// Показать опции отображения
		function b_view_color(color)
		{
			var vo = $('view_options');
			vo.style.display = 'none';
			this.d.color = color;
			$('winHeader' + this.d.b_index).className = 'theme_widget_top theme_widget_colour' + color;
			f_send_widget(this.d.b_index);
		}
		
		var _topingf = 5000;
		var _tosend = 10000;

 		this.d = block_data;
		
		this.d._topingf	= _topingf;
		this.d._tosend	= _tosend;
		
 		this.name_block  = page.name_block_+this.d.b_index;
		this.name_obj = page.name_obj+"["+this.d.b_index+"]";
		this.gl_xml = "";
		this.fNewBlock_ = fNewBlock_;
		this.b_delete = b_delete;
		this.b_open_close = b_open_close;
		this.b_refresh = b_refresh;
		this.f_show_prop_ = f_show_prop_;
		this.b_view_color = b_view_color;
		this.dragMessage = dragMessage;
		this.fLdrTransfer = fLdrTransfer;
		this.fLdrPing = fLdrPing;
		this.fLdrError = fLdrError;

		
		this.save_cookies = function no(){return false;};
		
		return true;
}	

	function fNewBlock_0()
	{		
			this.d = {};
			this.fNewBlock = fNewBlock;
			return true;
	}	

	function fGetColumsname(index_list,index_col)
	{
		var colums = 'L'+index_list+'colums'+index_col;

		return colums;
	}

//
//
	// Создаём окно виджета
	//el_before - элемент перед которым вставить новый виджет
	function fCreateWindow(list,col,index_new,color,search, title_name,el_before,dis)
	{
			
			dis = (dis=='none')?'none':'block';
			
			var name = page.name_obj+"["+index_new+"]";
			var b_name = page.name_block_+index_new;
			
			var d = document.createElement('div');
  		
			if(el_before == false){ 
				d = $(fGetColumsname(list,col)).appendChild(d); 
			}else{
				d = $(fGetColumsname(list,col)).insertBefore(d,el_before);
			} 

  		d.setAttribute('id', 'C_'+b_name);
			//d.style.height=s_height;
			d.style.width='auto';
			d.style.padding='5px';
			d.style.margin='0px';
			d.innerHTML = tmpl_widget(index_new, name, b_name, title_name, color, search, dis );// txt;
			d.setAttribute('target',index_new);
	}

function fAppCreate(A)
{
	
	var res;

	res = this._iohndl = fw.io.create(f_Get_Engine(A), false, false, 10000);
	
	if(fw.data.isError(res)) 
	{
			return this.fAppError(res);
	}
	
	var er = this.name_app+'.fAppError';
	var rec = this.name_app+'.fAppReceive';

	fw.mess.attMsg(['IO', 'ERROR', this._iohndl],	er);
	fw.mess.attMsg(['IO', 'RECEIVE', this._iohndl],	rec);

	return this;
}

function fAppPing(){
	var data = {};
	this.fAppTransfer(data);
}

function fAppTransfer(data){
	if(!fw.data.isObj(data)) return false;
	var res = fw.io.transfer(this._iohndl, data);
 	return true;
}

function fAppReceive(txt){
	fw.io.close(this._iohndl);
	eval(txt);
	fST_Read(this.d.app_name,this);
	return;
}

function fAppError(err){
	alert(err);
	return null;
}

function fApp_new(app_url,app_name)
{
		this.Modules = {}; 		
 		this.d = {};
		this.d.app_name = app_name;
		this._topingf = 1000;
   	this._tosend = 10000;
		this.name_app = "App1['"+app_name+"']";		
		this.gl_xml = "";
		this.fAppTransfer = fAppTransfer;
		this.fAppCreate = fAppCreate;
		this.fAppPing = fAppPing;
		this.fAppReceive = fAppReceive;
		this.fAppError = fAppError;

	return this;
}

function fApp_new_(index_block, app_name, app_list, app_title_name, app_index_col, app_url_id, app_param)
{		

	if(app_name != 'search' && page.d.L[page.d.L_activ].noedit && !index_block)
	{
		Alert_( 'На эту страницу нельзя добавить виджет!','Confirm_hide();' );
		return;
	}
	//Создание окона (блока) виджета 
	var index_list;
	var index_col;	
	var index_new;
	
	if(!index_block)
	{
		if( app_list || app_list === 0 ){ index_list = app_list;} else {	index_list = page.d.L_activ;}
		if( app_index_col ){ index_col = app_index_col; }else { index_col = 0; }
		index_new = page.d.block_num;	
		//Увеличиваем номер блока и количество блоков
		page.d.block_num++;
		page.block_col++;
	}
	else
	{
		index_new = index_block;
	}
	
		var data_tmp;

	if(!index_block)
		{//Добавление нового блока	
			block[index_new] = new fNewBlock_0();			

			data_tmp={};
			data_tmp.b_index  = index_new;
			data_tmp.col = index_col;
			data_tmp.url_id = app_url_id;
			data_tmp.list = index_list;		
	 		if(app_param){ data_tmp.par_1 = app_param; }
			data_tmp.app_type = app_name;
			data_tmp.color = def_color;
			data_tmp.title_name = app_title_name;
			data_tmp.dis = "block";
			page.d.b[index_new] = index_new;

			//Запоминаем параметры для воссоздания страницы при повторной загрузки
			page.d.L[index_list].bl[index_new] = index_new;
			
			//количество блоков в колонке
			page.d.L[index_list].C[index_col].col_bl++;	

			var col_bl = page.d.L[index_list].C[index_col].col_bl;
			
			el_before = false;
			data_tmp.poz = min_poz_i;
			
			if(parseInt(col_bl) != 0 && index_list != 0)
			{//найдем первый блок
				var min_poz = min_poz_i;	
				var min_k   = -1;			

				for(var k in page.d.L[index_list].bl)//цикл перебора блоков на вкладке(листе)
				{
					if(block[k]==null) continue;
					if(block[k].d==null) continue;
					if(block[k].d.list!=index_list) continue;	
					if(block[k].d.col!=index_col) continue;
		
					if(block[k].d.poz <= min_poz)
					{ //Ищем первый в колонке виджет
						min_poz = block[k].d.poz; 
						min_k = k;
					}

				}	

				if(min_k != -1)
				{
					if($('C_'+page.name_block_+min_k))
					{ 
						el_before = $('C_'+page.name_block_+min_k); 
						data_tmp.poz = block[min_k].d.poz-block[min_k].d.poz/10;
					}
				}
			}
		}
		else
		{
			el_before = false;
			data_tmp=block[index_new].d;
			
			var tmp_poz=0;
			
			for(var k in page.d.b)
			{
					if(block[k]==null)continue;	
					if(block[k].real !='1') continue;	
					if(block[k].d.list != data_tmp.list) continue;	
					if(block[k].d.col != data_tmp.col) continue;	
						
					if(tmp_poz <= block[k].d.poz)
					{
						tmp_poz = block[k].d.poz;
					}
			}
			
			data_tmp.poz = tmp_poz?(tmp_poz+st_poz):min_poz_i ;
		
		}

		block[index_new].fNewBlock(data_tmp);
		
		if( !$(fGetColumsname(data_tmp.list,data_tmp.col)) )
		{
			block[index_new]=null;return;
		}
		
		fCreateWindow(data_tmp.list, data_tmp.col, data_tmp.b_index, data_tmp.color, data_tmp.app_type, data_tmp.title_name, el_before, data_tmp.dis);
		block[index_new].real = '1';

	var act = true;
	var app_name_ = block[index_new].d.app_type;
	var app_url_ = block[index_new].d.app_type+widget_script; 

	if(App1[app_name_] && App1[app_name_].Modules.exist )
	{
		//alert('Загружен');
		App1[app_name_].Modules.f(index_new);
	}else
	{
		//Модуль не загружен
		//alert('НЕ Загружен');
			fST_ADD(app_name_,block[index_new].d.b_index);

		if( App1[app_name_] )
		{
				//alert('Повтор не загружаем');	
		}
		else 
		{
			App1[app_name_] = new fApp_new(app_url_,app_name_);
			
			App1[app_name_].fAppCreate(app_url_);
			App1[app_name_].fAppPing();
 		}
	}	
	if( index_list!=0 &&  app_name != 'search' )
	{
			f_send_widget(index_new);	
			fses_save('fApp_new_');
	}

return true;
}	

function fST_ADD(app_name,id_block)
{		
	
	if(!g_st[app_name])
	{
		g_st[app_name]={};
		g_st[app_name].block={};
		g_st[app_name].count=0;
	}
	g_st[app_name].count++;
	
	var count = g_st[app_name].count;
	g_st[app_name].block[count]={};

	g_st[app_name].block[count].id_bl = id_block;
	g_st[app_name].block[count].status_bl = 'load';

}

function fST_Read(app_name,obj)
{
	//alert('fST_Read');
	var l = g_st[app_name].count;
	//alert(obj.Modules.f);
	for(var i=1; i<=l; i++)
	{
			//alert('cicle');alert(g_st[app_name].block[i].status_bl);
			if(g_st[app_name].block[i].status_bl == 'load')
			{
				g_st[app_name].block[i].status_bl = 'load_complete';
				obj.Modules.f(g_st[app_name].block[i].id_bl);
			}
	}

}

	// Открываем настройки отображения окна
	function b_view(e, block, index)
{
			e = (e)? e : event;
			var pa = $(block);
			var vo = $('view_options');
			
			vo.style.display = 'block';

			var PosX = eX(e);
			var PosY = eY(e);

			vo.style.top = PosY + 5 + "px";
			vo.style.left = PosX -120+ "px";

			vo.innerHTML = tmpl_b_view(index);
	}

//
//
	// Закрываем настройки отображения окна
	function b_view_off()
	{
			var vo = $('view_options');
			vo.style.display = 'none';
	}


//

function fCatalog_write(txt)
{
	f_new_html_block("id_catalog",txt,0);
}

function fCatalog_write_m(tmp)
{//Формируется html каталога
	
	str=''; 
	var count = 12; 
	str += '<div style="float: left; width: 200px;">'; 
	for(var i in tmp.widgets) 
	{ 
		if(!count){ 
			count = 12; 
			str += '</div><div style="float: left; width: 200px; margin-left: 10px">'; 
		} 
		str += tmpl_catalog_widget(tmp.widgets[i]); count--; 
	} 
	f_new_html_block("id_catalog",str,0); str += '</div>'; 
}
	
	
function fCatalog_list_run(tmp)
{// Генерация виджетов из каталога
	var j=0;
	var tmp_g={};
	while(j < 6)
	{
		var s = parseInt(Math.random()*20);
	
		if( !tmp.widgets[s] ) { continue; }
		if( tmp_g[s] ){ continue; }
		tmp_g[s] = s;
		j++; 
		var col = ((j-1)%col_col);
		fApp_new_(0,tmp.widgets[s].type,'',tmp.widgets[s].name, col, tmp.widgets[s].url_id, tmp.widgets[s].par_1);
		
	}

}

function fCatalog_insert(url_)
//подсветка выбранного пункта меню
{
	for(var i in Catalog)
	{
		$('catc' + i).className = 'css_cat_sub_b1';
	}
	if(Catalog[url_])$('catc' + Catalog[url_].type).className = 'css_cat_sub_b2';
}

function fCatalog_gen()
// генерация каталога
{

	Catalog = fw.eval.eval(Catalog_, true);
	str='';
	for(var i in Catalog)
	{
		{ str += tmpl_catalog_gen(Catalog[i]);	}
	}

	f_new_html_block("id_catalog_gen",str,0);

}

function fCatalog_check_type(tmp)
//проверка параметра из location на существование
{
	for(var i in Catalog)
	{
		if( Catalog[i].type == tmp ){ return tmp; } 	
	}

	return false;
}

//<script>
	// Активный раздел каталога
	var catalog_over_var = 1;

	// Подсвечиваем раздел
	function catalog_over(mc, id){
		if(catalog_over_var == id){var tmp = 1;}else{var tmp = 2;};
		mc.className="css_cat_b" + tmp + " css_cat_b3";
	}

	// Убираем подсветку с раздела
	function catalog_out(mc, id){
		if(catalog_over_var == id){var tmp = 1;}else{var tmp = 2;};
		mc.className="css_cat_b" + tmp;
	}

	// Активируем раздел
	function catalog_set(id){
		if(catalog_over_var == id)return;
		catalog_over_var = id;
		$('catawi1').className="css_cat_b2";
		$('catawi2').className="css_cat_b2";
		$('catawi3').className="css_cat_b2";

		// Категории
		if(id == 1){
			fCatalog_run('general');
			$('id_catalog_gen_blank').style.display = 'none';
			$('id_catalog_gen').style.display = 'block';
			$('id_catalog').style.display = 'block';
			$('id_catalog_rss').style.display = 'none';
		}

		// Важнейшие
		if(id == 2){
			fCatalog_run('the_major');
			$('id_catalog_gen_blank').style.display = 'block';
			$('id_catalog_gen').style.display = 'none';
			$('id_catalog').style.display = 'block';
			$('id_catalog_rss').style.display = 'none';
		}

		// Добавить ленту
		if(id == 3){
			$('id_catalog_gen_blank').style.display = 'block';
			$('id_catalog_gen').style.display = 'none';
			$('id_catalog').style.display = 'none';
			$('id_catalog_rss').style.display = 'block';
		}

		catalog_over($('catawi' + id), id);
	}

	function catalog_new_rss()
	{
		var _url = $('new_rss_input').value;
		create_add_widget('xmlAdvanced', 'rss', 1, _url);
	}
//</script>

function winButtons_show(id)
{	
	//$('winButtons' + id).style.display = 'block';
	if($('winButtons' + id).style.visibility != 'visible'){
	$('winButtons' + id).style.visibility = 'visible';
	}
}

function winButtons_hide(id)
{
	//$('winButtons' + id).style.display = 'none';
	if($('winButtons' + id).style.visibility != 'hidden'){
	
	$('winButtons' + id).style.visibility = 'hidden';	
	}
}

//Сохранение данных по сессии
function f_send_Error(err){
	alert(err);
	return null;
}

function f_send_Ping(data){
	//var data = {};
	this.f_send_Transfer(data);
	}

function f_send_Transfer(data){
	if(!fw.data.isObj(data)) return false;
	
	var res = fw.io.transfer(this._iohndl, data);
 
	return true;
}

function f_send_Create(url_,get_post){
	
	var res;
	
	//alert(g_url_ses);

	res = this._iohndl = fw.io.create(url_, get_post, false, 10000);
	
	if(fw.data.isError(res)) 
	{
			return this.f_send_Error(res);
	}
	
	var er = this.name_app+'.f_send_Error';
	var rec = this.name_app+'.f_send_Receive';

	fw.mess.attMsg(['IO', 'ERROR', this._iohndl],	er);
	fw.mess.attMsg(['IO', 'RECEIVE', this._iohndl],	rec);
	
	return this;
}

function f_send_Receive(txt){

	//alert(txt);
	
	fw.io.close(this._iohndl);
	
	if(!page.d.key_save){ page.d.key_save = 1; }
	
	send.id[this.id] = null;//удалим структуру созданную для передачи данных
	return;
}

function f_send_new(id,f_receive)
{
		this._topingf = 1000;
   	this._tosend = 10000;
		
		this.id = id;
		this.name_app = "send.id["+id+"]";		
						
		this.f_send_Transfer = f_send_Transfer;
		this.f_send_Ping = f_send_Ping;
		this.f_send_Error = f_send_Error;

		this.f_send_Create = f_send_Create;
		
		eval('this.f_send_Receive = '+f_receive+';');

	return this;
}

function f_send_(obj, url_, f_receive, get_post)
{	
	var get_post_ = false;
	if( get_post=='post' ){ get_post_=true; }
	send.num++;
	send.id[send.num]={};
	send.id[send.num] = new f_send_new(send.num,f_receive);
					
	send.id[send.num].f_send_Create(url_,get_post_);
	send.id[send.num].f_send_Ping(obj);
	
 return true;
}	

function f_page_all()
{	
	var ses = fCheckCookies_SES();
	
	if(ses!=false)
	{
		return;
	}
	
	var expDate = new Date ();
	var t_time = expDate.getTime();

 	if( (t_time - time_save_all) < 10000 ){ 
 	 		return; 
 	}
	
	var tmp = fw.data.flat_2( page.d );
	
	var tmp_ = {};
	tmp_.block = {};
	tmp_.page = {};
	tmp_.page = fw.eval.eval( tmp,true );
	

	if( tmp_.page.L[0]!=null ) 
	{ 
		tmp_.page.L[0] = null; 
	}
	
	for(var i in tmp_.page.L)
	{
			if(i==0)continue;
			if( tmp_.page.L[i].type && tmp_.page.L[i].type == 'search'){
			tmp_.page.L[i] = null; 
		}	
	}	
	
	for(var i in tmp_.page.b)
	{

		if(block[i]==null)
		{
			tmp_.page.b[i] = null;
			continue;
		}

		if(block[i].d.app_type == 'search' || block[i].d.list == 0)
		{
			tmp_.page.b[i] = null;
			continue;
		}
		tmp_.block[i] = {};
		tmp_.block[i] = block[i].d;
	}
	
	var obj_p = {};
	obj_p.mode = 'all';
	obj_p.json = fw.data.flat_2( tmp_ );

	f_send_( obj_p , g_url_ses , 'f_send_Receive' , 'post' );
	
	return 'f_page_all';
}

function f_send_page(mode)
{//Функция передачи информации о page
	var ses = fCheckCookies_SES();

	if(ses==false)
	{
		f_page_all(); return;
	}

	var obj_p = {};//Сохраняемые данные для post
	
	var expDate = new Date ();
	var t_time = expDate.getTime()
	
	if( !page.time_save ){ page.time_save = 0; }
	if( !page.time_mod || !mode){ page.time_mod = t_time; }	
	
	var tmp_time = t_time - page.time_mod;
	var tmp_save = t_time - page.time_save;
			
	if( page.time_save > page.time_mod ){ return; }
	
	if( tmp_time < dx_time && tmp_save < dx_time_save){
			setTimeout( 'f_send_page(1)', x_time );
			return 1;
	}	 
	page.time_save = t_time;
			
	var tmp = fw.data.flat_2( page.d );
	var tmp_ = fw.eval.eval( tmp,true );
	
	if( tmp_.L[0]!=null ) 
	{ 
		tmp_.L[0] = null; 
	}
	for(var i in tmp_.L)
	{
			if(i==0)continue;
			if( tmp_.L[i].type && tmp_.L[i].type == 'search'){
			tmp_.L[i] = null; 
		}	
	}	
		
	for(var i in tmp_.b)
	{
		if(block[i]==null)
		{
			tmp_.b[i] = null;
			continue;
		}

		if(block[i].d.app_type == 'search' || block[i].d.list == 0)
		{
			tmp_.b[i] = null;
		}
	}
	
	obj_p.mode = 'page';
	obj_p.json = fw.data.flat_2( tmp_ );
	f_send_( obj_p , g_url_ses , 'f_send_Receive' , 'post' );
	
 return true;
}

function f_send_widget(id,mode)
{//Функция передачи информации о виджете
	var ses = fCheckCookies_SES();
	if(ses==false)
	{
		f_page_all(); return;
	}
	if( !id && id!=0 ) return;
	if( !block[id] ) return;
		
	var expDate = new Date ();
	var t_time = expDate.getTime()
	
	if( !block[id].time_save ){ block[id].time_save = 0; }
	if( !block[id].time_mod || !mode){ block[id].time_mod = t_time; }	
	
	var tmp_time = t_time - block[id].time_mod;
			
	if( block[id].time_save > block[id].time_mod ){ return; }
	
	if( tmp_time < dx_time ){
			setTimeout( 'f_send_widget('+id+',1)', x_time );
			return 1;
	}	 
	
	block[id].time_save = t_time;
		
	var obj_p = {};//Сохраняемые данные для post
	
	obj_p.mode = 'block';
	obj_p.id = id;
	obj_p.json = fw.data.flat_2( block[id].d );
	//alert(obj_p.json);
	//f_new_html_block('test1',"<br>obj_p.json="+obj_p.json,1);
	f_send_( obj_p , g_url_ses , 'f_send_Receive' , 'post' );
	
 return true;
}

function f_send_del_list(id)
{//Функция передачи информации о виджете
	var ses = fCheckCookies_SES();
	if(ses==false)
	{
		f_page_all(); return;
	}
	if( !id && id!=0 ) return;
	if( page.d.L[id].type=='search' ) return;
	
	var tmp_obj={};
	var i=0;
	for(var k in page.d.b)
	{
		if(block[k] == null || block[k].d == null || block[k].d.list != id){
 			continue;
		}
		i++;
		tmp_obj[k]=k;
	}	
	
	if(i==0) return;
	
	var obj_p = {};//Сохраняемые данные для post
	
	obj_p.mode = 'd_list';
	obj_p.id = id;
	obj_p.json = fw.data.flat_2( tmp_obj );
	
	f_send_( obj_p , g_url_ses , 'f_send_Receive' , 'post' );
	
 return true;
} 

function fCatalogReceive(txt){
	
	fw.io.close(this._iohndl);
	tmp = fw.eval.eval(txt, true);	

	if(fw.data.isError(tmp) || !fw.data.isObj(tmp)){
			return false;	
	}
	fCatalog_write_m(tmp);
	send.id[this.id] = null;
	
	return;
}

function fCatalog_run(url_)
{		
		fCatalog_insert(url_);
		var obj_p = {};
		f_send_( obj_p , g_url_cat+url_+'.txt' , 'fCatalogReceive' , 'get' );
	
	return true;
}	

function fCatalogReceive_list(txt){

	fw.io.close(this._iohndl);
	tmp = fw.eval.eval(txt, true);	

	if(fw.data.isError(tmp) || !fw.data.isObj(tmp)){
			return false;	
	}

	fCatalog_list_run(tmp);
	send.id[this.id] = null;
	
	return;
}

function fCatalog_list(url_)
{		
	var obj_p = {};
		f_send_( obj_p , g_url_cat+url_+'.txt' , 'fCatalogReceive_list' , 'get' );
	
return true;
}	

function f_styleReceive(txt){

	fw.io.close(this._iohndl);

	send.id[this.id] = null;
	
	if(!$("ModeCss"))
	{
		var A=document.createElement("style");
		A.id="ModeCss";
		A.setAttribute("type","text/css");
		document.getElementsByTagName("head")[0].appendChild(A)
	}
	
	if(Browser=='noIE'){
		$("ModeCss").innerText="";
		var B=document.createTextNode(txt);
		$("ModeCss").appendChild(B);
	}else{
		$("ModeCss").styleSheet.cssText = txt;
	}
	return false;
}

function f_style_(url_)
{		
	var obj_p = {};
	f_send_( obj_p , g_url_st+'?st='+url_+'' , 'f_styleReceive' , 'get' );
	
	return false;
}	


function f_send_login(login,pass)
{//Функция передачи информации для авторизации
	
	var obj_p = {};//Сохраняемые данные для post
	
	obj_p.login = login;
	obj_p.pass = pass;
	
	f_send_( obj_p , 'http://'+g_url_pr+'/feed/pass_ver.php' , 'f_send_Receive_login' , 'post' );
	
 return true;
}

function f_send_reg(login,pass,pass2)
{//Функция передачи информации для авторизации
	
	var obj_p = {};//Сохраняемые данные для post
	
	obj_p.login = login;
	obj_p.pass = pass;
	obj_p.pass2 = pass2;
	
	f_send_( obj_p , 'http://'+g_url_pr+'/feed/pass.php' , 'f_send_Receive_reg' , 'post' );
	
 return true;
}

function f_send_out()
{//Функция передачи информации для выхода
	
	var obj_p = {};
	obj_p.rnd = parseInt(Math.random()*20);
	
	f_send_( obj_p , 'http://'+g_url_pr+'/feed/pass_out.php' , 'f_send_Receive_out' , 'post' );
	
 return true;
}

function REG_( )
{
	if( getCookie('WEB_REG') ) return;
	
	$('Alert_window').innerHTML = tmpl_REG('Confirm_hide();', 'Confirm_hide();' );
	b_open('Alert_window');
	
	//$('login_reg').focus();
			
	return;
}

function INPUT_( )
{
	$('Alert_window').innerHTML = tmpl_INPUT('Confirm_hide();', 'Confirm_hide();' );
	b_open('Alert_window');
	
	//$('login_reg').focus();
			
	return;
}    	

function IN_OUT()
{
	var ses = fCheckCookies_SES();
	if(ses==false)
	{
		return;
	}
	//Анализ кук 
	$in = false;
	
	var $ses = getCookie('PHPSESSID');
	var $ses_ = getCookie('SESSID_');
	if( !$ses_ ){//Выход
		 $in = true; 
		}
	//else Вход
	if($in){ INPUT_(); return ;}
	
	//Выход
	OUT();
	
	return;
}	
function IN_OUT_()
{
	//Анализ кук 
	$in = false;
	
	var $ses = getCookie('PHPSESSID');
	var $ses_ = getCookie('SESSID_');
	if( !$ses_ ){//Выход
		 $in = true; 
		}
	//else Вход
	if($in){ $('in_out').innerHTML = 'Вход'; return ; }
	
	//Выход
	$('in_out').innerHTML = 'Выход'; return;
	
}	


function f_reg(form)
	{
	
	if(__reader){__reader.close();}
	
		var login = fw.data.trim_ap(form.login_.value);
		var pass = fw.data.trim_ap(form.pass.value);
		var pass2 = fw.data.trim_ap(form.pass2.value);
		
		var error='';
		
		var res = f_check_email(login);		
		if( res == false ){ error+='<div>Введите правильный e-mail</div>';  }
		if( pass != pass2 ){ error+='<div>Пароль и Подтверждение пароля должны совпадать</div>';  }
		
		if(	error != '' )
		{	
			if( $('input_mess') ){ $('input_mess').innerHTML=error;  }
			return;
		}
	
		//if( $('input_mess') ){ $('input_mess').innerHTML = '<img src="/public/visual/img/loading.gif">'; }
		
		//Попробуем зарегистрировать
		f_send_reg(login,pass,pass2);
		
		//b_close('Alert_window');
			
		return ;
	}
	
function f_input(form)
	{
		if(__reader){__reader.close();}
	
		var login = fw.data.trim_ap(form.login_.value);
		var pass = fw.data.trim_ap(form.pass.value);
		
		var error='';
		
		var res = f_check_email(login);		
		if( res == false ){ error+='<div>Введите правильный e-mail</div>';  }
		
		if(	error != '' )
		{	
			if( $('input_mess') ){ $('input_mess').innerHTML=error;  }
			return;
		}
		
		//if( $('input_mess') ){ $('input_mess').innerHTML = '<img src="/public/visual/img/loading.gif">'; }
			
				
		f_send_login(login,pass);

		return false;
	}
	
function f_send_Receive_login(txt){
	fw.io.close(this._iohndl);
	send.id[this.id] = null;//удалим структуру созданную для передачи данных

	if( txt.length < 5 ){
		txt = 0;
	}	

	if(txt!='0'){
			if( $('input_mess') ){ $('input_mess').innerHTML=txt;  }
	}else
		{
			document.location = "http://"+g_url_pr+'/';
		}	
		
	return;
}	

function f_send_Receive_reg(txt){
	fw.io.close(this._iohndl);
	send.id[this.id] = null;//удалим структуру созданную для передачи данных
	
	if( txt.length < 5 ){
		txt = 0;
	}	
		
	if(txt!='0'){
			if( $('input_mess') ){ $('input_mess').innerHTML=txt;  }
	}else
		{
			var par = '1';
			setCookie('WEB_REG',par,'/');
			document.location = "http://"+g_url_pr+'/';
		}	
		
	return;
}	

function f_send_Receive_out(txt){
	fw.io.close(this._iohndl);
	send.id[this.id] = null;//удалим структуру созданную для передачи данных
	
	document.location = "http://"+g_url_pr+'/';
		
		
	return;
}	

function OUT(){
	f_send_out();
	return;
}	

function f_check_email(email)
{
	// Проверка email
	var ch_login  = new String(email); 
	
	var res = /^[^@\s\/\\]+@[^@\s\/\\]+\.[a-z]{2,}$/.test(ch_login);
	
	return res;
}	  