Namespace.Register("ponte.ajaxdata.TraficData");

/**
 * A Traficdata1 es traficdata2 portlet Ajax valasza alapjan valo kitoltesenek fuggvenyei.
 * 
 * @argument {Node} portletNode - 
 * @argument {HttpRequest} xmlData - A portlet xml tartalma.
 */

ponte.ajaxdata.TraficData.TDFiller1 = function (portletNode, xmlData)
{
	//tabls aljan levo osszegzo adatok kirakasa
	//-----------------------------------------
	
	xmlSumTable = xmlData.getElementsByTagName('tbody')[1];
	var xmlSumRow = xmlSumTable.getElementsByTagName('tr')[0];
	var tdSumElements = xmlSumRow.getElementsByTagName('td');
	
	theID = portletNode.getAttribute('id');
	sumvaluetodayNode = document.getElementById(theID+'_sumvaluetoday');
	sumevaluetodayNode = document.getElementById(theID+'_sumevaluetoday');
	sumvolumetodayNode = document.getElementById(theID+'_sumvolumetoday');
	footDateNode = document.getElementById(theID+'_FootDate');
	footNoteNode = document.getElementById(theID+'_trafficnote_left');
	footLinkNode = document.getElementById(theID+'_footsum_showlink');
	
	//osszesito ertekek
	sumvaluetodayNode.innerHTML = (tdSumElements[0].firstChild == null)?"":tdSumElements[0].firstChild.nodeValue + " HUF, ";
	sumevaluetodayNode.innerHTML = (tdSumElements[1].firstChild == null)?"":tdSumElements[1].firstChild.nodeValue + " EUR, ";
	sumvolumetodayNode.innerHTML = (tdSumElements[2].firstChild == null)?"":tdSumElements[2].firstChild.nodeValue + " "+sumvaluetoday_piece;
	
	//timestamp
	footDateNode.innerHTML = (tdSumElements[3].firstChild == null)?"":tdSumElements[3].firstChild.nodeValue;
	//footnote
	footNoteNode.innerHTML = (tdSumElements[4].firstChild == null)?"":tdSumElements[4].firstChild.nodeValue;
	//fulltable link
	linkNeeded = (tdSumElements[5].firstChild == null)?"false":tdSumElements[5].firstChild.nodeValue;
	the_currentURL = location.href;
	if (the_currentURL.indexOf("?")!=-1){
		the_currentURL = the_currentURL.substring(0,the_currentURL.indexOf("?"));
	}

	if (linkNeeded == "true"){
		footLinkNode.innerHTML = '<a href="'+the_currentURL+'?showfull=true">'+full_tablelink_text+'</a>';
	}
	
	showTickerLink = (tdSumElements[6].firstChild == null)?"true":tdSumElements[6].firstChild.nodeValue;
	
	// tabla alja vege
	
	var trClass = new Array();
	trClass[0] = 'BG_1';
	trClass[1] = 'BG_0';
	
	var tdDivClass = new Array();
	tdDivClass[0] = 'Data green';
	tdDivClass[1] = 'Data red';
	tdDivClass[2] = 'Data black';
	
	xmlMainTable = xmlData.getElementsByTagName('tbody')[0];
	
	//fo tablazat kitoltese kovetkezik
	//--------------------------------
	var tBodyElement = portletNode.getElementsByTagName('tbody')[0];
	
	//felolvassuk a fo tablazat elso dummy sorat
	var dummyRow = tBodyElement.getElementsByTagName('tr')[0];
	
	while(tBodyElement.firstChild !== null) {
		tBodyElement.removeChild(tBodyElement.firstChild);
	}
	
	var urlPrefix = document.getElementById('urlprefix').firstChild.nodeValue;
	
	var xmlRowElements = xmlMainTable.getElementsByTagName('tr');
	for(var j=0; j < xmlRowElements.length; j++) {
		var xmlCellElements = xmlRowElements[j].getElementsByTagName('td');
		
		
		var thisRow = dummyRow.cloneNode(true);
		
		var thisInnerElements = thisRow.getElementsByTagName('div');
		
		thisRow.className = trClass[j % 2];
		
		percentage = (xmlCellElements[17].firstChild == null)?'0':xmlCellElements[17].firstChild.nodeValue;
		
		percentage = percentage.replace(/,/,'.')*1;
		
		if (percentage<0){
			colorID = 1;
			//nyilacsaka
			thisInnerElements[0].innerHTML = traficdata_datadirection_image_down;
		}
		else if (percentage>0){
			colorID = 0;
			//nyilacsaka
			thisInnerElements[0].innerHTML = traficdata_datadirection_image_up;
		}
		else{
			colorID = 2;
			//nyilacsaka
			thisInnerElements[0].innerHTML = traficdata_datadirection_image_stagn;
		}
		
		for (var k = 2; k<19; k++){
			thisInnerElements[k].className = tdDivClass[colorID];
		}
		
		//ticker
		if (showTickerLink == "true"){
			thisInnerElements[1].innerHTML = '<a href="'+urlPrefix+xmlCellElements[2].firstChild.nodeValue+'?security='+xmlCellElements[1].firstChild.nodeValue+'&action=CompanyProfileAction">'+xmlCellElements[0].firstChild.nodeValue+'</a>';
		}
		else{
			thisInnerElements[1].innerHTML = xmlCellElements[0].firstChild.nodeValue;
		}
		//isin
		thisInnerElements[2].innerHTML = (xmlCellElements[3].firstChild == null)?"":xmlCellElements[3].firstChild.nodeValue;
		//baseprice
		thisInnerElements[3].innerHTML = (xmlCellElements[4].firstChild == null)?"":xmlCellElements[4].firstChild.nodeValue;
		//bestbidprice
		thisInnerElements[4].innerHTML = (xmlCellElements[5].firstChild == null)?"":xmlCellElements[5].firstChild.nodeValue;
		//bestbidqty
		thisInnerElements[5].innerHTML = (xmlCellElements[6].firstChild == null)?"":xmlCellElements[6].firstChild.nodeValue;
		//bestaskprice
		thisInnerElements[6].innerHTML = (xmlCellElements[7].firstChild == null)?"":xmlCellElements[7].firstChild.nodeValue;
		//bestaskqty
		thisInnerElements[7].innerHTML = (xmlCellElements[8].firstChild == null)?"":xmlCellElements[8].firstChild.nodeValue;
		//openprice
		thisInnerElements[8].innerHTML = (xmlCellElements[9].firstChild == null)?"":xmlCellElements[9].firstChild.nodeValue;
		//closeprice
		thisInnerElements[9].innerHTML = (xmlCellElements[10].firstChild == null)?"":xmlCellElements[10].firstChild.nodeValue;
		//currency
		thisInnerElements[10].innerHTML = (xmlCellElements[11].firstChild == null)?"":xmlCellElements[11].firstChild.nodeValue;
		//valuetoday
		thisInnerElements[11].innerHTML = (xmlCellElements[12].firstChild == null)?"":xmlCellElements[12].firstChild.nodeValue;
		//volumetoday
		thisInnerElements[12].innerHTML = (xmlCellElements[13].firstChild == null)?"":xmlCellElements[13].firstChild.nodeValue;
		//lowprice
		thisInnerElements[13].innerHTML = (xmlCellElements[14].firstChild == null)?"":xmlCellElements[14].firstChild.nodeValue;
		//highprice
		thisInnerElements[14].innerHTML = (xmlCellElements[15].firstChild == null)?"":xmlCellElements[15].firstChild.nodeValue;
		//change
		thisInnerElements[15].innerHTML = (xmlCellElements[16].firstChild == null)?"":xmlCellElements[16].firstChild.nodeValue;
		//changepctg
		thisInnerElements[16].innerHTML = (xmlCellElements[17].firstChild == null)?"":xmlCellElements[17].firstChild.nodeValue;
		//lastprice
		thisInnerElements[17].innerHTML = (xmlCellElements[18].firstChild == null)?"":xmlCellElements[18].firstChild.nodeValue;
		//lastpricedate
		thisInnerElements[18].innerHTML = (xmlCellElements[19].firstChild == null)?"":xmlCellElements[19].firstChild.nodeValue;
		
		tBodyElement.appendChild(thisRow);
	}
}





ponte.ajaxdata.TraficData.TDFiller2 = function (portletNode, xmlData)
{
	//tabls aljan levo osszegzo adatok kirakasa
	//-----------------------------------------
	
	xmlSumTable = xmlData.getElementsByTagName('tbody')[1];
	var xmlSumRow = xmlSumTable.getElementsByTagName('tr')[0];
	var tdSumElements = xmlSumRow.getElementsByTagName('td');
	
	theID = portletNode.getAttribute('id');
	sumvaluetodayNode = document.getElementById(theID+'_sumvaluetoday');
	sumevaluetodayNode = document.getElementById(theID+'_sumevaluetoday');
	sumvolumetodayNode = document.getElementById(theID+'_sumvolumetoday');
	footDateNode = document.getElementById(theID+'_FootDate');
	footNoteNode = document.getElementById(theID+'_trafficnote_left');
	footLinkNode = document.getElementById(theID+'_footsum_showlink');
	
	//osszesito ertekek
	sumvaluetodayNode.innerHTML = (tdSumElements[0].firstChild == null)?"":tdSumElements[0].firstChild.nodeValue + " HUF, ";
	sumevaluetodayNode.innerHTML = (tdSumElements[1].firstChild == null)?"":tdSumElements[1].firstChild.nodeValue + " EUR, ";
	sumvolumetodayNode.innerHTML = (tdSumElements[2].firstChild == null)?"":tdSumElements[2].firstChild.nodeValue + " "+sumvaluetoday_piece;
	
	//timestamp
	footDateNode.innerHTML = (tdSumElements[3].firstChild == null)?"":tdSumElements[3].firstChild.nodeValue;
	//footnote
	footNoteNode.innerHTML = (tdSumElements[4].firstChild == null)?"":tdSumElements[4].firstChild.nodeValue;
	//fulltable link
	linkNeeded = (tdSumElements[5].firstChild == null)?"false":tdSumElements[5].firstChild.nodeValue;
	the_currentURL = location.href;
	if (the_currentURL.indexOf("?")!=-1){
		the_currentURL = the_currentURL.substring(0,the_currentURL.indexOf("?"));
	}

	if (linkNeeded == "true"){
		footLinkNode.innerHTML = '<a href="'+the_currentURL+'?showfull=true">'+full_tablelink_text+'</a>';
	}
	
	showTickerLink = (tdSumElements[6].firstChild == null)?"true":tdSumElements[6].firstChild.nodeValue;
	
	// tabla alja vege
	
	var trClass = new Array();
	trClass[0] = 'BG_1';
	trClass[1] = 'BG_0';
	
	var tdDivClass = new Array();
	tdDivClass[0] = 'Data green';
	tdDivClass[1] = 'Data red';
	tdDivClass[2] = 'Data black';
	
	xmlMainTable = xmlData.getElementsByTagName('tbody')[0];
	
	//fo tablazat kitoltese kovetkezik
	//--------------------------------
	var tBodyElement = portletNode.getElementsByTagName('tbody')[0];
	
	//felolvassuk a fo tablazat elso dummy sorat
	var dummyRow = tBodyElement.getElementsByTagName('tr')[0];
	
	while(tBodyElement.firstChild !== null) {
		tBodyElement.removeChild(tBodyElement.firstChild);
	}
	
	var urlPrefix = document.getElementById('urlprefix').firstChild.nodeValue;
	
	var xmlRowElements = xmlMainTable.getElementsByTagName('tr');
	for(var j=0; j < xmlRowElements.length; j++) {
		var xmlCellElements = xmlRowElements[j].getElementsByTagName('td');
		
		
		var thisRow = dummyRow.cloneNode(true);
		
		var thisInnerElements = thisRow.getElementsByTagName('div');
		
		thisRow.className = trClass[j % 2];
		
		percentage = (xmlCellElements[17].firstChild == null)?'0':xmlCellElements[17].firstChild.nodeValue;
		
		percentage = percentage.replace(/,/,'.')*1;
		
		if (percentage<0){
			colorID = 1;
			//nyilacsaka
			thisInnerElements[0].innerHTML = traficdata_datadirection_image_down;
		}
		else if (percentage>0){
			colorID = 0;
			//nyilacsaka
			thisInnerElements[0].innerHTML = traficdata_datadirection_image_up;
		}
		else{
			colorID = 2;
			//nyilacsaka
			thisInnerElements[0].innerHTML = traficdata_datadirection_image_stagn;
		}
		
		for (var k = 2; k<18; k++){
			thisInnerElements[k].className = tdDivClass[colorID];
		}
		
		//ticker
		if (showTickerLink == "true"){
			thisInnerElements[1].innerHTML = '<a href="'+urlPrefix+xmlCellElements[2].firstChild.nodeValue+'?strikeid='+xmlCellElements[1].firstChild.nodeValue+'">'+xmlCellElements[0].firstChild.nodeValue+'</a>';
		}
		else{
			thisInnerElements[1].innerHTML = xmlCellElements[0].firstChild.nodeValue;
		}
		//isin
		thisInnerElements[2].innerHTML = (xmlCellElements[3].firstChild == null)?"":xmlCellElements[3].firstChild.nodeValue;
		//baseprice
		thisInnerElements[3].innerHTML = (xmlCellElements[4].firstChild == null)?"":xmlCellElements[4].firstChild.nodeValue;
		//bestbidprice
		thisInnerElements[4].innerHTML = (xmlCellElements[5].firstChild == null)?"":xmlCellElements[5].firstChild.nodeValue;
		//bestbidqty
		thisInnerElements[5].innerHTML = (xmlCellElements[6].firstChild == null)?"":xmlCellElements[6].firstChild.nodeValue;
		//bestaskprice
		thisInnerElements[6].innerHTML = (xmlCellElements[7].firstChild == null)?"":xmlCellElements[7].firstChild.nodeValue;
		//bestaskqty
		thisInnerElements[7].innerHTML = (xmlCellElements[8].firstChild == null)?"":xmlCellElements[8].firstChild.nodeValue;
		//openprice
		thisInnerElements[8].innerHTML = (xmlCellElements[9].firstChild == null)?"":xmlCellElements[9].firstChild.nodeValue;
		//!!!settlementprice
		thisInnerElements[9].innerHTML = (xmlCellElements[10].firstChild == null)?"":xmlCellElements[10].firstChild.nodeValue;
		//currency
		thisInnerElements[10].innerHTML = (xmlCellElements[11].firstChild == null)?"":xmlCellElements[11].firstChild.nodeValue;
		//valuetoday
		thisInnerElements[11].innerHTML = (xmlCellElements[12].firstChild == null)?"":xmlCellElements[12].firstChild.nodeValue;
		//volumetoday
		thisInnerElements[12].innerHTML = (xmlCellElements[13].firstChild == null)?"":xmlCellElements[13].firstChild.nodeValue;
		//lowprice
		thisInnerElements[13].innerHTML = (xmlCellElements[14].firstChild == null)?"":xmlCellElements[14].firstChild.nodeValue;
		//highprice
		thisInnerElements[14].innerHTML = (xmlCellElements[15].firstChild == null)?"":xmlCellElements[15].firstChild.nodeValue;
		//change
		thisInnerElements[15].innerHTML = (xmlCellElements[16].firstChild == null)?"":xmlCellElements[16].firstChild.nodeValue;
		//changepctg
		thisInnerElements[16].innerHTML = (xmlCellElements[17].firstChild == null)?"":xmlCellElements[17].firstChild.nodeValue;
		//lastprice
		thisInnerElements[17].innerHTML = (xmlCellElements[18].firstChild == null)?"":xmlCellElements[18].firstChild.nodeValue;
		//lastpricedate
		//thisInnerElements[18].innerHTML = (xmlCellElements[19].firstChild == null)?"":xmlCellElements[19].firstChild.nodeValue;
		
		tBodyElement.appendChild(thisRow);
	}
};

