/**
 * function grid_event_cancel()
 * убивает клик по строке - для едементов находящихся в строке - чеки кнопки 
 * 
*/
function grid_event_cancel()
{
	event.cancelBubble = true;
}

/**
 * function grid_tr_onmouseover(obj)
 * подсветка строки при наведении
 * 
*/
function grid_tr_onmouseover(obj)
{
	obj.className = obj.className + '_hover';
}

/**
 * function grid_tr_onmouseout(obj)
 * подсветка строки при наведении
 * 
*/
function grid_tr_onmouseout(obj)
{
	if (obj.className == 'row_1_hover')
	{
			obj.className = 'row_1';
	}

	if (obj.className == 'row_2_hover')
	{
			obj.className = 'row_2';
	}

}





/**
 * function get_grid_row_values(row_obj)
 * возвращаем асоц масив значений переданной строки грида (попадут только те что были описаны алиасами в филдсете)
 * 
*/
function get_grid_row_values(row_obj)
{

	var values = new Array();	
	
	// провожу выборку переменных из ячееек которые лежат в строке и имеют имена
	var elements = row_obj.getElementsByTagName('td');
	for(var i = 0; i < elements.length; i++) 
	{

		if (elements[i].name != undefined && elements[i].name != '')
		{
			values[elements[i].name] = elements[i].innerHTML;
		}
	
	}

	// провожу выборку переменных из инпутов которые лежав в строке и имеют имена
	var elements = row_obj.getElementsByTagName('input');
	for(var i = 0; i < elements.length; i++) 
	{

		if (elements[i].name != undefined && elements[i].name != '')
		{
			values[elements[i].name] = elements[i].value;
		}
	
	}

	return values;

}


/**
 * function get_grid_row_value(row_obj, value_name)
 * возвращаем значение указаной переменной переданной строки грида (попадут только те что были описаны алиасами в филдсете)
 * 
*/
function get_grid_row_value(row_obj, value_name)
{

	var row_values = get_grid_row_values(row_obj);
	if (row_values[value_name] !=  undefined)
	{
		//alert(row_values[value_name]);
		return row_values[value_name];
	}

	return undefined;
}


/**
 * function get_grid_checked_rows(grid_name,checkbox_element_name)
 * возвращает в виде асоц масива обьекты чекнутых строк - вторым перементом передаеться имя чекбокса строки которая являеться прызнаком чекнутой строки
 * 
*/
function get_grid_checked_rows(grid_name,checkbox_element_name)
{
	var checked_rows = new Array();
	var count_checked_rows = 0;

	//пытаюсь получить обьект грида по переданому имени если нет то превываю выполнеие 
	var grid_obj = document.getElementById(grid_name);

	if (grid_obj == null)
	{
		return checked_rows;
	}


	//получаю всех детей грида и прохожусь по ним 
	var rows = grid_obj.getElementsByTagName('tr');
	for (var i = 0; i < rows.length; i++) 
	{
		var row = rows(i);
		
		// провожу выборку всех инпутов
		var elements = row.getElementsByTagName('input');
		for(var j = 0; j < elements.length; j++) 
		{
			var element = elements(j);
			if (element.type == 'checkbox' && element.name == checkbox_element_name)
			{
				if (element.checked)
				{
					checked_rows[count_checked_rows] = row;
					count_checked_rows++;
				}
			}

		}

	
	}

	return checked_rows;

}
