/*
version = '3.7.002 15.02.2008'
*/
//
// Функции для работы jshttprequest
//

document.writeln('<scr' + 'ipt src="/js/jshttprequest.js" language="JavaScript"><\/scr' + 'ipt>');


//
// формирование url для запроса
//
function makeurl(url,clas,func)
{
	if(!url)
	{
		var loc = String(document.location);
		url = (loc.indexOf('?') < 1) ? '/?id=1' : loc;
	}
	if(typeof(clas)!='undefined') url += '&clas=' + clas;
	if(typeof(func)!='undefined') url += '&func=' + func;
	return url;
}

//
// получение страницы (cur_id) с заданными стилями и вставка в указанный div
//
function jshttp_getmess(divadd, cur_id, template, style, cell, get, loadingdiv)
{
	//var url = makeurl('/?id='+cur_id,'jshttp','getmess');
	var url = makeurl('','jshttp','getmess');
	var datas = {
	'js_divadd'		: divadd,		// идентификатор div-а для вставки 
	'js_cur_id' 	: cur_id,		// идентификатор получаемого объекта
	'js_template'	: template,		// шаблон
	'js_style'		: style,		// стиль
	'js_cell'		: cell,			// список
	'js_get'		: get			// 1 - получение GET-способом, 0 - PHP-функциями
	};

	if(typeof(loadingdiv)!='undefined' && (iloadingdiv = document.getElementById(loadingdiv)) && (idivadd = document.getElementById(divadd)))
	{
		//idivadd.innerHTML += iloadingdiv.innerHTML;
		idivadd.innerHTML = iloadingdiv.innerHTML;
	}
	JsHttpRequest.query(url, datas, jshttp_getmess_res, false);
	return false;
}

//
// получение страницы по url с заданными стилями и вставка в указанный div
//
function jshttp_geturl(divadd, url, template, style, cell)
{
	url += '&template=' + ((typeof(template)!='undefined') ? template : 'main_post');
	if(typeof(style)!='undefined') url += '&style=' + style;
	if(typeof(cell)!='cell') url += '&cell=' + cell;
	url += '&js_divadd=' + divadd;
	JsHttpRequest.query(url, null, jshttp_getmess_res, false);
	return false;
}


//
// получение контента из функции блока (block_id) и вставка в указанный div
//
function jshttp_getblock(divadd, url, block_id)
{
	url = makeurl(url,'jshttp','get_function_block');
	var datas = {
	'js_divadd'		: divadd,		// идентификатор div-а для вставки 
	'js_block_id' 	: block_id		// идентификатор текущего блока (откуда запустили функцию)
	};
	JsHttpRequest.query(url, datas, jshttp_getmess_res, false);
	return false;
}

function jshttp_getmess_res(result, errors)
{
	if(result && result['js_divadd'] && (idivadd = document.getElementById(result['js_divadd'])))
	{
		idivadd.innerHTML = result['js_info'];
	}
}



//
// проверка на допустимость полей формы регистрации: name login и user_nick
//
function jshttp_checkfield(field)
{
	var url = makeurl('','jshttp','checkfield');
	var datas = new Array();
	datas[field.name] = field.value;
	datas['js_name']  = field.name;
	datas['js_value'] = field.value;
	if(desc = document.getElementById(field.name.replace('p__','d1__')))
		datas['js_desc'] = desc.innerHTML;
	JsHttpRequest.query(url, datas, jshttp_checkfield_res, false);
}
function jshttp_checkfield_res(result, errors)
{
	var js_name = result['js_name'];
	var js_value = result['js_value'];
	var js_desc = result['js_desc'];
	if(result['js_err']==1)
	{
		document.getElementById(js_name).className += ' terbg';
		alert('Пользователь с полем "' + js_desc + ': ' + js_value + '" уже существует');
	}
	else
	{
		document.getElementById(js_name).className = document.getElementById(js_name).className.replace(/ terbg/g,'');
	}
}





//
// тестовая
//
function test_select(form,field)
{
	//alert(form.name);
	//alert(field.name);

	var url = makeurl('','jshttp_test','test_select');
	var datas = new Array();
	datas['q'] = document.getElementById(form.name);
	datas['abc'] = 'abc';

	if(div = document.getElementById(field.name + '_diag'))
		div.innerHTML = 'loading';

	JsHttpRequest.query(url, datas, test_select_res, false);
	return false;
}
function test_select_res(result, errors)
{
	if(idivadd = document.getElementById('block_171'))
		idivadd.innerHTML = errors;
}

