
// function to draw charts
var Content;
var vmax;
var chartwidth=1200;
var tdwd;
var chartHeight = 0;
var chartYAxisInterval = 0;
var displayYAxisScale = true;

colors = new Array();
colors = ["#F3C638","#AFD755","#77C2E2","#CA68F6","#4E85D6","#EC5399","#FF00FF","#00AD5F","#FF8300","#EB4847","#875546","#FF9584","#EC008C","#9999FF","#CC9966","#336600","#990099","#999900","#CC2300","#CCC033","#CCCC44","#C00022","#F2200F","#F44FFC","#C33FCC","#22FF3CC","#11CDD4","#55BBCC"];

function GenerateChart(nSeriesType, nSeriesCount, HorXString, VerYString, optShowInSameWindow)
{		
	var showMsg;
	
	HorX = new Array();
	VerY = new Array();
	
	if( String(HorXString).length > 1)
	{
		HorX = HorXString.split("|");	
		VerY = VerYString.split("|");
	}
	else
	{
		HorX = HorXString;
		VerY = HorXString;
		
		showMsg = "<div align='center'><strong> <br>No data found</strong> </div>";	
	}
	
	//parse pairs	
	vmax = chartHeight;
	
	for(i = 0; i<24; i++)
	{		
		if (parseInt( VerY[i] ) > vmax)
		{
			vmax = parseInt( VerY[i] );
		}	
	}
	
	// Set the Desired Width of the window as per the no. of items
	if ( nSeriesType==1 && nSeriesCount==2 )	
		chartwidth = (HorX.length * 45);
	else
		chartwidth = (HorX.length * 20);
	
	if ( vmax == 0 )
	{
		//alert ("No data found.");		
	} 
	else
	{
		if ( nSeriesType == 1 )
		{
			//for Columns
			tdwd = parseInt((chartwidth-(HorX.length*4))/HorX.length);
			
			Content = "<table id=tblgraph align=left width=" + chartwidth + " cellpadding=2 cellspacing=2 border=0>";
			Content += "<tr>";			
			
			// Write the Y Axis Scale					
			if (displayYAxisScale == true)
			{
			    Content += "<td bgcolor=#F3F3F3 align=center valign=bottom width=" + tdwd + ">";			
			    Content += "<table cellpadding=0 cellspacing=0 border=0 width=100% valign=bottom>";		

                yCellHeight = (chartYAxisInterval/(chartHeight/200)) + 2;

				chartYAxisInterval = chartYAxisInterval != 0 ? chartYAxisInterval : 1;
				
			    for (i = Math.ceil(chartHeight/chartYAxisInterval); i>0; i--)
			    {				    
					Content += "<tr><td align=center valign=top width=100% height=" + yCellHeight + ">";
				    Content += "<font face=arial size='-2'>" + (i*chartYAxisInterval) + "</font>";								
				    Content += "</td><td width='3' valign=top style='border-right: 1px solid #CCCCCC;'><hr></td></tr>";				
			    }			
			    
				Content += "</table>";				
			    Content += "</td>";				
			}
			// Write the graph			
			for (i = 0; i < HorX.length; i++)
			{
				h = parseInt(VerY[i] / (vmax / 200)); 
				
				Content += "<td align=center valign=bottom width=" + tdwd + ">";
						   
				Content += "<font face=arial size='-2'>" + VerY[i] + "</font>";				
				Content += "<br><div class='graphImg' style='background-color:"+ colors[i] +"; height:" + h + "px; width:15px; writing-mode:tb-rl;'></div>";				
				
				Content += "</td>";				
			}			
			
			Content += "</tr></table>";												
			
			if(String(HorXString).length <= 1 )
				document.getElementById("dvChart").innerHTML = showMsg;	
			else
				document.getElementById("dvChart").innerHTML = Content;	
		} 		
	}
}
