
/*Работа с AJAX*/
//Работа с httprequest
function INIT_AJAX()
{
	// JavaScript Document
	xmlHttp_ajax_citys	=	false;
	//Проверка AJAX
	/* Создание нового объекта XMLHttpRequest для общения с Web-сервером */
	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	try {
	  xmlHttp_ajax_citys = new ActiveXObject("Msxml2.XMLHTTP");
	   
	
	} catch (e) {
	  try {
	    xmlHttp_ajax_citys = new ActiveXObject("Microsoft.XMLHTTP");
		
	  } catch (e2) {
	    xmlHttp_ajax_citys = false;
		
	  }
	}
	@end @*/

	if (!xmlHttp_ajax_citys && typeof XMLHttpRequest != 'undefined') 
	{
  		xmlHttp_ajax_citys = new XMLHttpRequest();  	
		
	}
	return xmlHttp_ajax_citys;
	
}

//Инициализация нового AJAX объекта.
function CREATE_NEW_AJAX(n)
{
	var	temp	=	INIT_AJAX();
	if(!temp)
	{
		alert('Ошибка создания AJAX объекта');
		return;	
	}
	ajax					=	new Array();
	ajax['AJAX']			=	temp;
	ajax['CALLBACK']		=	function(){CALL_BACK_FUNCTION(n);};
	ajax['TARGET_FUNCTION']	=	'alert';
	ajax['TARGET_ID']		=	'';
	ajax['ADDS_INFO']		=	new Array();
	ajax['SEND_INFO']		=	new Array();
	ajax['POST_CALLBACK']	=	' ';
	return ajax;
	
}

//Послать запрос
function SENT_REQUEST(n,url)
{
	if(!GLOBAL_AJAX[n]){AJAX_CREATE(n);}
	xmlHttp_ajax	=	GLOBAL_AJAX[n]['AJAX'];
	xmlHttp_ajax.open("POST", url, true);
	//xmlHttp_ajax.setRequestHeader("Content-Type", "text/plain");
	xmlHttp_ajax.onreadystatechange = GLOBAL_AJAX[n]['CALLBACK'];
	
	SEND_DATA	=	GLOBAL_AJAX[n]['SEND_INFO'];
	POST	=	'';
	SEP		=	'';
	for (i in SEND_DATA)
	{
		POST	+=	SEP+encodeURI(i)+"="+encodeURI(SEND_DATA[i]);
		SEP		=	'&';
	}
	
	
	xmlHttp_ajax.setRequestHeader("Accept-Charset", "windows-1251");
	xmlHttp_ajax.setRequestHeader("Accept-Language","ru, en");
	xmlHttp_ajax.setRequestHeader("Connection", "close"); 
	xmlHttp_ajax.setRequestHeader("Content-length", POST.length); 
	xmlHttp_ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	
	
	xmlHttp_ajax.send(POST);
}


//Вызываем функцию для создания объекта
function AJAX_CREATE(n)
{
	GLOBAL_AJAX[n] = CREATE_NEW_AJAX(n);
}


//Диспечер ответов
function CALL_BACK_FUNCTION(n)
{
	xmlHttp_ajax	=	GLOBAL_AJAX[n]['AJAX'];
	if (xmlHttp_ajax.readyState != 4)return;
	if (xmlHttp_ajax.status != 200){ return;}
	
	var target	=	GLOBAL_AJAX[n]['TARGET_FUNCTION'];
	
	switch(target)
	{
		case 'alert': alert(xmlHttp_ajax.responseText); break;
		default : eval(target+'('+n+');');
	}
	
	eval (GLOBAL_AJAX[n]['POST_CALLBACK']);
}

////////////////////////////////////////////////////////////////////
var GLOBAL_AJAX	=	new Array();
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////

function RESULT_ON_SELECT(n)
{
	xmlHttp_ajax	=	GLOBAL_AJAX[n]['AJAX'];
	/*terget			=	GLOBAL_AJAX[n]['TARGET_ID'];
	OBJ_TARGET		=	document.getElementById("terget");*/
	if(!xmlHttp_ajax)return;
	text	=	xmlHttp_ajax.responseText;
	
	var JSON = eval('(' + text + ')');
	if(!JSON)return;
	
	id_target 	=	JSON['ID_TARGET'];
	OBJ_TARGET	=	document.getElementById(id_target);
	
	clearSelect(OBJ_TARGET);
	
	selects		=	JSON['SELECT'];
	
	DATA		=	JSON['DATA'];
	
	zx=0;
	for(i in DATA)
	{
		val	=	DATA[i]['ID'];
		txt	=	DATA[i]['NAME'];
		opt		=	document.createElement("option");
		opt.setAttribute("value", val);
		if(selects==val){opt.selected	=	true; opt.setAttribute("selected", "true");}
		OBJ_TARGET.appendChild(opt);
		text	=	document.createTextNode(txt);	
		opt.appendChild(text);
		zx++;
	}
	if(zx<1)
	{
		opt		=	document.createElement("option");
		opt.setAttribute("value", 0);
		OBJ_TARGET.appendChild(opt);
		text	=	document.createTextNode('Данные отсутствуют');	
		opt.appendChild(text);	
	}
	
	eval(GLOBAL_AJAX[n]['SEND_INFO']['POST_CODE']);
	if(OBJ_TARGET.onchange)OBJ_TARGET.onchange();
	
	
}

function RESULT_ON_PLACE(n)
{
	xmlHttp_ajax	=	GLOBAL_AJAX[n]['AJAX'];
	target			=	GLOBAL_AJAX[n]['SEND_INFO']['TARGET_ID'];
	OBJ_TARGET		=	document.getElementById(target);
	
	if(!xmlHttp_ajax)return;
	if(!OBJ_TARGET)return;
	
	OBJ_TARGET.innerHTML	=	xmlHttp_ajax.responseText;
	
	eval(GLOBAL_AJAX[n]['SEND_INFO']['POST_CODE']);
	
}

function RESULT_ON_INPUT(n)
{
	xmlHttp_ajax	=	GLOBAL_AJAX[n]['AJAX'];
	target			=	GLOBAL_AJAX[n]['SEND_INFO']['TARGET_ID'];
	OBJ_TARGET		=	document.getElementById(target);
	
	if(!xmlHttp_ajax)return;
	if(!OBJ_TARGET)return;
	
	OBJ_TARGET.value	=	xmlHttp_ajax.responseText;
	
	eval(GLOBAL_AJAX[n]['SEND_INFO']['POST_CODE']);
	
}

function clearSelect(oListbox)
{
  for (var i=oListbox.options.length-1; i >= 0; i--)
  {
      oListbox.remove(i);
  }
}


/**************************************************/
AJAX_CREATE(1001);
function MAKE_REGION_BY_COUNTRY(id_country,id_target,selects,pos_quest,id_citi,zerro)
{
	if(!zerro)zerro	=	0;
	if((!id_country)||(!id_target)||(!selects))return;
	var COUNTRY		=	document.getElementById(id_country);
	var TARGET		=	document.getElementById(id_target);
	if((!COUNTRY)||(!TARGET))return;
	
	
	if(!pos_quest)pos_quest=false;
	else
	{
		if(pos_quest!=1)
		{
			pos_quest = ' MAKE_CITY_BY_REGION("region","city","'+id_citi+'","'+zerro+'"); ';
		}	
		else
		{
			pos_quest = '';
		}
		
	}
	
	
	var value	= 	COUNTRY.value;
	
	GLOBAL_AJAX[1001]['TARGET_FUNCTION'] 				= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1001]['SEND_INFO']['TARGET_ID']			=	id_target;
	GLOBAL_AJAX[1001]['SEND_INFO']['TYPE']				=	'REGION_BY_COUNTRY';
	GLOBAL_AJAX[1001]['SEND_INFO']['NAME']				=	value;
	GLOBAL_AJAX[1001]['SEND_INFO']['SELECT']			=	selects;
	GLOBAL_AJAX[1001]['SEND_INFO']['POST_CODE']			=	pos_quest;
	GLOBAL_AJAX[1001]['SEND_INFO']['ZERRO']				=	zerro;
	

	
	SENT_REQUEST(1001,'AJAX/ajax.php');
	
}

AJAX_CREATE(1002);
function MAKE_CITY_BY_REGION(id_country,id_target,selects,zerro)
{
	if(!zerro)zerro	=	0;
	if((!id_country)||(!id_target)||(!selects))return;
	var COUNTRY		=	document.getElementById(id_country);
	var TARGET		=	document.getElementById(id_target);
	if((!COUNTRY)||(!TARGET))return;
	
	
	var value	= 	COUNTRY.value;
	
	
	GLOBAL_AJAX[1002]['TARGET_FUNCTION'] 				= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1002]['SEND_INFO']['TARGET_ID']			=	id_target;
	GLOBAL_AJAX[1002]['SEND_INFO']['TYPE']				=	'CITY_BY_REGION';
	GLOBAL_AJAX[1002]['SEND_INFO']['NAME']				=	value;
	GLOBAL_AJAX[1002]['SEND_INFO']['SELECT']			=	selects;
	GLOBAL_AJAX[1002]['SEND_INFO']['ZERRO']				=	zerro;

	
	SENT_REQUEST(1002,'AJAX/ajax.php');
	
}

AJAX_CREATE(1003);
function make_user_filter(filter,target,special)
{
		
	var F		=	document.getElementById(filter);
	var value	= 	F.value;
	
	if(!special)special	=	'USER_BY_STRING';
	else special	=	'SPECIAL_USER_BY_STRING';
	
	GLOBAL_AJAX[1003]['TARGET_FUNCTION'] 				= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1003]['SEND_INFO']['TARGET_ID']			=	target;
	GLOBAL_AJAX[1003]['SEND_INFO']['TYPE']				=	special;
	GLOBAL_AJAX[1003]['SEND_INFO']['NAME']				=	value;

	
	SENT_REQUEST(1003,'AJAX/ajax.php');
}

AJAX_CREATE(1004);
function make_firm_filter(filter,target,type_firm)
{
		
	var F		=	document.getElementById(filter);
	var value	= 	F.value;
	if(!type_firm)type_firm = 0;
	
	GLOBAL_AJAX[1004]['TARGET_FUNCTION'] 		= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1004]['SEND_INFO']['TARGET_ID']	=	target;
	GLOBAL_AJAX[1004]['SEND_INFO']['TYPE']		=	'FIRM_BY_STRING';
	GLOBAL_AJAX[1004]['SEND_INFO']['NAME']		=	value;
	GLOBAL_AJAX[1004]['SEND_INFO']['TYPE_FIRM']	=	type_firm;

	
	SENT_REQUEST(1004,'AJAX/ajax.php');
}

AJAX_CREATE(1005);
function make_trade_filter(filter,target)
{
		
	var F		=	document.getElementById(filter);
	var value	= 	F.value;
	
	GLOBAL_AJAX[1005]['TARGET_FUNCTION'] 				= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1005]['SEND_INFO']['TARGET_ID']		=	target;
	GLOBAL_AJAX[1005]['SEND_INFO']['TYPE']				=	'TRADE_BY_STRING';
	GLOBAL_AJAX[1005]['SEND_INFO']['NAME']				=	value;

	
	SENT_REQUEST(1005,'AJAX/ajax.php');
}

AJAX_CREATE(1006);
function make_calculation_filter(filter,target)
{
		
	var F		=	document.getElementById(filter);
	var value	= 	F.value;
	
	GLOBAL_AJAX[1006]['TARGET_FUNCTION'] 				= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1006]['SEND_INFO']['TARGET_ID']		=	target;
	GLOBAL_AJAX[1006]['SEND_INFO']['TYPE']				=	'CALCULATION_BY_STRING';
	GLOBAL_AJAX[1006]['SEND_INFO']['NAME']				=	value;

	
	SENT_REQUEST(1006,'AJAX/ajax.php');
}

AJAX_CREATE(1007);
function make_buh_set_filter(filter,target,value_select,post_code)
{
	if(!value_select)value_select=0;
	var F		=	document.getElementById(filter);
	var value	= 	F.value;
	
	if(!post_code)post_code	=	'';
	
	GLOBAL_AJAX[1007]['TARGET_FUNCTION'] 			= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1007]['SEND_INFO']['TARGET_ID']		=	target;
	GLOBAL_AJAX[1007]['SEND_INFO']['TYPE']			=	'BUH_SET_BY_STRING';
	GLOBAL_AJAX[1007]['SEND_INFO']['NAME']			=	value;
	GLOBAL_AJAX[1007]['SEND_INFO']['SELECT']		=	value_select;
	GLOBAL_AJAX[1007]['SEND_INFO']['POST_CODE']		=	post_code;
	
	SENT_REQUEST(1007,'AJAX/ajax.php');
}

AJAX_CREATE(1008);
function make_model_by_type_mark(type,mark,target,value)
{
	
	var type	=	document.getElementById(type);
	var mark	=	document.getElementById(mark);
	var value_type	= 	type.value;
	var value_mark	= 	mark.value;
	
	GLOBAL_AJAX[1008]['TARGET_FUNCTION'] 			= 	'RESULT_ON_SELECT';
	GLOBAL_AJAX[1008]['SEND_INFO']['TARGET_ID']		=	target;
	GLOBAL_AJAX[1008]['SEND_INFO']['TYPE']			=	'MODEL_BY_TYPE_MARK';
	GLOBAL_AJAX[1008]['SEND_INFO']['NEED_TYPE']		=	value_type;
	GLOBAL_AJAX[1008]['SEND_INFO']['NEED_MARK']		=	value_mark;
	GLOBAL_AJAX[1008]['SEND_INFO']['SELECT']		=	value;

	
	SENT_REQUEST(1008,'AJAX/ajax.php');
	
}

AJAX_CREATE(1009);
function user_for_firm(target,firm,STR,id_value)
{
	if(!firm)
	{
		pole = document.getElementById(id_value);
		if(!pole)return;
		firm = pole.value;
		
	}
	
		
	GLOBAL_AJAX[1009]['TARGET_FUNCTION'] 			= 	'RESULT_ON_PLACE';
	GLOBAL_AJAX[1009]['SEND_INFO']['TARGET_ID']		=	target;
	GLOBAL_AJAX[1009]['SEND_INFO']['TYPE']			=	'USER_FOR_FIRM';
	GLOBAL_AJAX[1009]['SEND_INFO']['FIRM']			=	firm;
	GLOBAL_AJAX[1009]['SEND_INFO']['STR']			=	STR;

	
	SENT_REQUEST(1009,'AJAX/ajax.php');
	
}
////////////////////////////////////////////////////////////////////////
ID_POLE_ADD = 0;
function ADD_FILE_POLE(id,pre)
{
	OBJ_TARGET		=	document.getElementById(id);
	if(!OBJ_TARGET)return;
	
	/*OBJ_TARGET.innerHTML	=	OBJ_TARGET.innerHTML+
	"<div id='file_pole_div_js_"+ID_POLE_ADD+"'><span onclick='REMOVE_NODE(\"file_pole_div_js_"+ID_POLE_ADD+"\")'>[-]</span> <input type='file' name='"+pre+"GLOBAL_COMENTS_FILE[]'  style='width:415px;'></div>";
	*/
	
	div		=	document.createElement("div");
	div.setAttribute("id", "file_pole_div_js_"+ID_POLE_ADD);
	OBJ_TARGET.appendChild(div);
	div.innerHTML	=	"<span onclick='REMOVE_NODE(\"file_pole_div_js_"+ID_POLE_ADD+"\")'>[-]</span> <input type='file' name='"+pre+"GLOBAL_COMENTS_FILE"+ID_POLE_ADD+"'  style='width:189px;'> <input type='text' name='"+pre+"GLOBAL_COMENTS_FILE_NAME"+ID_POLE_ADD+"'  style='width:215px;'>";
	div.innerHTML	+=	"<input type='hidden' name='"+pre+"GLOBAL_COMENTS_FILE[]' value='"+ID_POLE_ADD+"'>";
	ID_POLE_ADD++;
	
}

function REMOVE_NODE(id)
{
	OBJ_TARGET		=	document.getElementById(id);
	if(!OBJ_TARGET)return;
	OBJ_TARGET.parentNode.removeChild(OBJ_TARGET);
}
////////////////////////////////////////////////////////////////////////

function go_to(src)
{
	//window.open(src);
	window.location = src;
	window.location.href = src;
}
