Namespace.Register("ponte.ajaxdata.IndexHistNR");

/**
 * A MostTradedEquities portlet Ajax valasza alapjan valo kitoltesenek fuggvenyei.
 * 
 * @argument {Node} portletNode - 
 * @argument {HttpRequest} xmlData - A portlet xml tartalma.
 */
 
/** Ez a script elso futása-e */
index_hist_nr_firstRun = true;
/** Az alapértelmezett sorok (ez alapján tartja meg a sorok designját */
index_hist_nr_rows = null;

ponte.ajaxdata.IndexHistNR.RowFiller = function(portletNode, xmlData) {
	// táblázat cseréje
	var tBodyElement = portletNode.getElementsByTagName('TBODY')[0];
	
	var hiddenParametersDiv = portletNode.previousSibling;
	while(hiddenParametersDiv.className != 'IndexHistNRParameters') {
		hiddenParametersDiv = hiddenParametersDiv.previousSibling;
	}
	
	var xmlTBodyElement = xmlData.getElementsByTagName('tbody')[0];
	
	var rowElements = tBodyElement.getElementsByTagName('TR');
	if(index_hist_nr_firstRun) {
		index_hist_nr_rows = new Array();
	}
	
	var rowCounter = 0;
	for(var i=0; i < rowElements.length; i++) {
		if(rowElements[i].getElementsByTagName('TD').length == 0) {
			continue;
		}
		if(index_hist_nr_firstRun) {
			index_hist_nr_rows[rowCounter++] = rowElements[i].cloneNode(true);
		}
		tBodyElement.removeChild(rowElements[i]);
		i--;
	}
	
	var xmlRowElements = xmlTBodyElement.getElementsByTagName('tr');
	for(var j=0; j < xmlRowElements.length; j++) {
		var xmlCellElements	= xmlRowElements[j].getElementsByTagName('td');
		
		var secCode 		= xmlCellElements[0].firstChild.nodeValue;
		var secCodeLink 	= xmlCellElements[1].firstChild.nodeValue;
		
		var indexValue		= "";
		if(xmlCellElements[2].firstChild != null) {
			indexValue = xmlCellElements[2].firstChild.nodeValue;
		}
		var changeNet		= "";
		if(xmlCellElements[3].firstChild != null) {
			changeNet = xmlCellElements[3].firstChild.nodeValue;
		}
		var changePctg		= "";
		if(xmlCellElements[4].firstChild != null) {
			changePctg = xmlCellElements[4].firstChild.nodeValue;
		}
		
		var cell_0 = document.createElement('A');
		var __urlPrefix = hiddenParametersDiv.getElementsByTagName('INPUT')[0].value;
		cell_0.href = __urlPrefix + secCodeLink; // + '.html';
		if(secCode == 'CEETX' || secCode == 'CEESEG') {
			cell_0.target = '_blank';
		}
		cell_0.appendChild(document.createTextNode(secCode));
		
		var cell_1 = indexValue;
		
		var cell_2 = document.createTextNode(changeNet);
		
		var normalizedChangePctg = changePctg.replace(' ', '');
		while(normalizedChangePctg.indexOf(' ') > -1) {
			normalizedChangePctg = normalizedChangePctg.replace(' ', '');
		}
		
		var cell_2_pctg = null;
		if(normalizedChangePctg != '') {
			cell_2_pctg = document.createElement('SPAN');
			cell_2_pctg.appendChild(document.createTextNode(' (' + changePctg + ')'));
		}
		
		var thisRow = index_hist_nr_rows[ (j % index_hist_nr_rows.length) ].cloneNode(true);
		
		var thisInnerElements = thisRow.getElementsByTagName('DIV');
		thisInnerElements[0].appendChild(cell_0);
		thisInnerElements[1].innerHTML = cell_1;
		thisInnerElements[2].appendChild(cell_2);
		if(cell_2_pctg != null) {
			thisInnerElements[2].appendChild(cell_2_pctg);
		}
		
		var parsedChange = parseFloat(normalizedChangePctg.replace(',', '.'));
		if(parsedChange > 0) {
			thisInnerElements[1].parentNode.className = 'green';
			thisInnerElements[2].parentNode.className = 'green';
		} else if(parsedChange < 0) {
			thisInnerElements[1].parentNode.className = 'red';
			thisInnerElements[2].parentNode.className = 'red';
		}
		
		tBodyElement.appendChild(thisRow);
	}
	
	index_hist_nr_firstRun = false;
}
