function MoreInfoClick(i){
	el = document.all["rft_"+i];
	switch (el.style.display){
		case 'block':
			el.style.display = 'none';
			break;	
		case 'none':
			el.style.display = 'block';
			break;
	}
}

function get_num_data(text){
	text = text.replace(/,/, '\.');
	var tArr = /\d+([\.,]\d+)?/.exec(text);
	if(tArr){
		return parseFloat(tArr[0]);
	}
	else{
		return 0;
	}
}

function needReplace(less_index_value, more_index_value, num_sort, ask) {
	var uc, un;
	uc = less_index_value;
	un = more_index_value;
	if(num_sort){
		uc = get_num_data(uc);
		un = get_num_data(un);
	}
	return (un < uc && ask) || (uc < un && !ask);
}

function sortArray(valueAndPosArr, num_sort, ask) {
	var parts_counter = valueAndPosArr[0].length;
	var part_length = 1;
	var end_pos = valueAndPosArr[0].length;
	while(parts_counter > 1) {
		// Создаем временный массив.
		var tmp_arr = new Array();
		tmp_arr[0] = new Array(); // массив номеров ячеек
		tmp_arr[1] = new Array(); // массив данных в ячейках

		var curr_part = 0;
		var lost_parts = 0;
		while(curr_part < parts_counter - 1) {
		   	var begin_1_subarr = part_length*curr_part;
		   	var end_1_subarr = part_length*(curr_part + 1);
		   	var end_2_subarr = part_length*(curr_part + 2) < valueAndPosArr[0].length
		   					   ? part_length*(curr_part + 2)
		   					   : valueAndPosArr[0].length;
		   	end_pos = end_2_subarr; // изменение параметра, используемого ниже при копировании.
		   	var i = end_1_subarr; // начало второго подмассива
		   	var j = begin_1_subarr;
		   	for(curr_pos = begin_1_subarr; curr_pos < end_2_subarr; curr_pos++) {
		   			var copy_from_pos = i;
		   		    if(i < end_2_subarr && j < end_1_subarr) {
		   		    	if(needReplace(valueAndPosArr[1][j], valueAndPosArr[1][i], num_sort, ask)) {
		   			    	i++;
		   		    	} else {
		   		    		copy_from_pos = j;
		   			    	j++;
		   		    	}
		   		    } else if(i < end_pos) {
		   			    i++;
		   		    } else if(j < part_length*(curr_part + 1)) {
		   		    	copy_from_pos = j;
		   			    j++;
		   		    }
		   		    tmp_arr[0][curr_pos] = valueAndPosArr[0][copy_from_pos];
					tmp_arr[1][curr_pos] = valueAndPosArr[1][copy_from_pos];
		   		}
		   		curr_part += 2;
		   		lost_parts++;
			}
			part_length *= 2;
			parts_counter -= lost_parts;

			// копирование массивов.
			for(i = 0; i < end_pos; ++i) {
			    valueAndPosArr[0][i] = tmp_arr[0][i];
			    valueAndPosArr[1][i] = tmp_arr[1][i];
			}
	}
	return valueAndPosArr;
}

function sort_table(col_ind, e, num_sort) {
	// Подготовительная работа.
	var table = e.target ? e.target : e.srcElement;;
	while( table.tagName != 'TABLE' ) {
		table = table.parentNode
	}
	var t_body = table.tBodies[0];

	var ask = (table.getAttribute( 'ask' ) == 0) ? false : true;
	var cur_ind = table.getAttribute( 'cur_ind' );

	col_ind = col_ind.cellIndex;
	ask = (cur_ind == col_ind) ? !ask : true;
	table.setAttribute( 'ask', ask = ask ? 1 : 0 );
	if(cur_ind >- 1)
		//table.tHead.rows(0).cells[cur_ind].all['arr_img'].src = '/pic/transp.gif';
		//table.tHead.rows(0).cells[col_ind].all['arr_img'].src = (ask) ? '/pic/arrow_sort_down.gif' : '/pic/arrow_sort_up.gif';
		
		//замена цветов
		table.tHead.rows[0].cells[cur_ind].style.color = '#818181';
		table.tHead.rows[0].cells[col_ind].style.color = (ask) ? '#08b200' : '#08b200';
	cur_ind = col_ind;
	table.setAttribute( 'cur_ind', cur_ind );

	if(t_body.rows.length > 1) {
	   var f_className = t_body.rows[0].className;
	   var s_className = t_body.rows[1].className;
	}

	// Создание двумерного массива
	var valueAndPosArr = new Array();
	valueAndPosArr[0] = new Array(); // массив номеров ячеек
	valueAndPosArr[1] = new Array(); // массив данных в ячейках
	for(i = 0; i < t_body.rows.length; ++i) {
	   valueAndPosArr[0][i] = i;
	   if( t_body.rows[i].cells[col_ind].textContent )
	   	valueAndPosArr[1][i] = t_body.rows[i].cells[col_ind].textContent
	   else if( t_body.rows[i].cells[col_ind].innerText )
	   	valueAndPosArr[1][i] = t_body.rows[i].cells[col_ind].innerText;
	   else
	   	alert( 'Используйте, пожалуйста, современный браузер' );
	}

	valueAndPosArr = sortArray(valueAndPosArr, num_sort, ask);

	// Работа с дом-моделью
	var cloneTBody = t_body.cloneNode( false );
	for(i = 0; i < t_body.rows.length; ++i) {
		var nextClonedRow = t_body.rows[valueAndPosArr[0][i]].cloneNode( true );
		cloneTBody.appendChild( nextClonedRow );
	}
	table.replaceChild( cloneTBody, t_body );

	// Изврат на всякий случай.
	var t_body = table.tBodies[0];

//	if(t_body.rows.length > 1) {
//	   for(i = 0; i < t_body.rows.length; i += 2) {
//			if(t_body.rows[i]) t_body.rows[i].className = f_className;
//			if(t_body.rows[i + 1]) t_body.rows[i + 1].className = s_className;
//	   }
//	}
}

//Всплывающие таблички с инфой о наличие товара.
function disp_tabl(node, state){
	jQuery( 'div.hint_text', jQuery(node).parent() ).css('display', state);
}
