function ajax_vcl_tree_load(id, params)
{	


	 // если массив параметров не пришел сами его создаем 
	 if (isNaN(params))
	 {
		  params = new Array();
	 }

		// если среди параметров нет сообжения сами его создаем 
		//if (!params['loading_message'])
		//{
		//	  params['loading_message'] = 'Loading ...';	
		//}

	
	// получаем идент. контейнера 
	var conteiner = document.getElementById(id + '[content]');

		// и помещаем в него сообщение об ожидании
		//conteiner.innerHTML = params['loading_message']; 

	// получаем путь к файлу конфирурации
	var obj = document.getElementById(id + '[config_file]');
	var config_file = obj.value; 

	//если контейнер содержит значение то передаем его как параметр выбранной записи 
	/*if (!params['selected_item_value'] && conteiner.value != '')
	{
		params['selected_item_value'] = conteiner.value;
	}*/


	// формируем набор параметров для вызова контроллера элемента 
	params['script_name'] = '../_modules/ajax/scripts/enviroment/ajax_dispatcher.script.php';
	params['function_name'] = 'set_tree_content';

	params['controller_class_path']  = '_modules/ajax_tree/classes/controllers/cAjaxTreeVCLController.class.php';
	params['controller_class_name']  = 'cAjaxTreeVCLController';
	params['controller_config_file'] = config_file;

	params['element_content_id'] = id;
	
	ajax_call_remote_func(params);
}











function ajax_vcl_tree_node_OnClick(id , node_id , node_name)
{


	// получаем контейнер контента узла
	var node_node = document.getElementById(node_id + '[node]');
		
	if (node_node.title == '')
	{
		//загружаю контент
		ajax_vcl_tree_node_load(id , node_id, node_name);
		
		//меняю параметры узла (загружен открыт)
		node_node.title = 'load';
		node_node.className = 'open_' + node_node.className;

		//меняю параметры контента (показан, ожидаем загрузку)
		var node_content = document.getElementById(node_id + '[content]');
		node_content.className = 'branch_content';
		node_content.innerHTML = '<DIV class="empty_branch_node_eof"></DIV><DIV class="branch_caption_load">идет загрузка данных</DIV>' ;
		return true;
	}


	if (node_node.title == 'load')
	{
		// прячу контентную часть
		var node_content = document.getElementById(node_id + '[content]');
		node_content.className = 'displace_branch_content';
		
		//меняю параметры узла 
		node_node.title = 'displace';
		if (node_node.className == 'open_branch_node')
		{
			node_node.className = 'branch_node';	
		}
		else 
		{
			node_node.className = 'branch_node_eof';
		}
		return true;
	}	




	if (node_node.title == 'displace')
	{
		//показываю контентную часть
		var node_content = document.getElementById(node_id + '[content]');
		node_content.className = 'branch_content';
		
		//меняю параметры узла 
		node_node.title = 'load';
		if (node_node.className == 'branch_node')
		{
			node_node.className = 'open_branch_node';	
		}
		else 
		{
			node_node.className = 'open_branch_node_eof';
		}
		return true;
	}	



}



function ajax_vcl_tree_node_load(id , node_id , node_name)
{

	var params = new Array();

	// получаем контейнер данных узла
	var node_data = document.getElementById(node_id + '[data]');

	// получаем все INPUT елементы формы	
	var elements = node_data.getElementsByTagName('input');
	// цикл по всем элементам формы
	for(var i = 0; i < elements.length; i++) 
	{
		var hidden_id = elements[i].getAttribute('id');
		var value = elements[i].getAttribute('value');
		params[hidden_id] = value; 
	}

	//передача ID контейнера для помещения контента
	params['parent_node_id'] = node_id;
	params['node_name'] = node_name;
	
	ajax_vcl_tree_load(id, params);

}









function ajax_tree_node_no_content(node_id)
{

	// получаем контейнер данных узла
	var node_node = document.getElementById(node_id + '[node]');
	
	if (node_node.className == 'open_branch_node')
	{
		node_node.className = 'empty_branch_node';	
	}
	else 
	{
		node_node.className = 'empty_branch_node_eof';
	}

	node_node.onclick = '';

	// получаем контейнер данных узла
	var node_content = document.getElementById(node_id + '[content]');
	node_content.className = 'displace_branch_content';

}



function ajax_tree_get_node_value(node_id,field_name)
{
	var conteiner_node = document.getElementById(node_id + '[data]');
	var elements = conteiner_node.getElementsByTagName('input');

	for(var i = 0; i < elements.length; i++) 
	{
		var hidden_id = elements[i].getAttribute('id');
		var value = elements[i].getAttribute('value');
	
		if (hidden_id == field_name)
		{
			return value;
		}
	}

	return false;
}



function ajax_tree_caption_OnClick(node_id, function_name)
{
     var call_function = function_name + "('" + node_id + "');";
	 eval(call_function);
}




function test(node_id)
{
	alert(node_id);
}



