﻿function getFile(str) {
	var myApp = findObj("myApplet");
	var data = myApp.getFile(str);
	var temp = "";
	temp += data.substring(0, data.length());
	return temp;
}

function cuurentDate(){
// in DDMMYYYY format
	var theDate = new Date();
	var  month  =  (String)(theDate.getMonth()+1);
	if ( month.length == 1)
		month  =  '0'+ month;
	return (String)(theDate.getDate())+month+(String)(theDate.getYear());

}

function Comma(input) 
{
	var SS = new String(input);
	var kk = SS.indexOf(".");
	if (kk != -1)
	{	
		tail = SS.substring(kk, SS.length);	
		head = SS.substring(0, kk);
		if (tail.length == 2)
		{
			tail=tail + "0"
		}
		else if (tail.length == 1)
		{
			tail= tail +"00";
		}
	} else if (SS.indexOf("-") >= 0){ 
		return "-";
	} else {
		tail=".00";
		head=SS;
	}
	
	if (head >=10000000)
	{
		newhead = Math.round(head/1000000);
		if (newhead >=10)
		{
			var T='', S=String(newhead), L=S.length-1, C, j
			for (j=0; j<=L; j++) {
				T+=C=S.charAt(j) ;
				if ((j<L) && ((L-j)%3==0) && (C!='-')) T+=',' 
			}
			return T+"M"
		}
		else 
			return head+"M"


	}
	else if (head >=1000)
	{
		var T='', S=String(head), L=S.length-1, C, j
		for (j=0; j<=L; j++) {
			T+=C=S.charAt(j) ;
			if ((j<L) && ((L-j)%3==0) && (C!='-')) T+=',' 
		}
		return T+tail
	}
	else 
		return head+tail

	
}


function UporDn ( str ) {
	if (str.indexOf("-") == 0 && str.length > 1 )	{ str="<img src='images/dnarrow.gif'>"+str.substring(1,str.length); }
	else if (str.valueOf() != 0.0)	{ str="<img src='images/uparrow.gif'>"+str; }
//	else if (str.indexOf("+") == 0 && str.length > 1)	{ str="<img src='images/uparrow.gif'>"+str.substring(1,str.length); }
	return str;

}

function trim(a){
	return a.replace(/^\s+/,'').replace(/\s+$/,'').replace(/\xA1\x40/g, '');
	
}

function findObj(n, d) {
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document); return x;
}


function updatenews(layername, folder, displayno,  lang , zhFilename, enFilename, linkable)
{	
	var file ,  tmp , string, myApp,  array, str;
	
	tmp  =  0;
	myApp = findObj("myApplet");
	string = "";
	
	if (lang == 0){		file = zhFilename; }
	if (lang == 1){		file = enFilename; }

	// IE
	if (document.all)
	{
		string  = myApp.getFile('http://192.168.101.80/news/'+ file);
		if (string.length > 0)
		{
	
			array = string.split('```');
			if  (array.length  >  1)
			{
				var k = 1;		

				tmp = array.length - 1;
				if (tmp > displayno*3)
					tmp = displayno*3;

				for (var i = 1; i<tmp; i=i+3)
				{
					if (array[i+1] != "undefined" && array[i+2] != "undefined")
					{
						eval(layername+"time"+k+".innerHTML=array[i+1]");
						
						if (linkable) {
						  str = '<a href="javascript:;" onclick=window.open("http://192.168.101.80/news/'+folder+'/content'+array[i];
						  str +='.html","NewsContent","toolbar=no,scrollbars=yes,status=yes,resizable=yes,width=480,height=400")>';
						  str +=  array[i+2]+'</a>';
						}
						else
						  str =  array[i+2];
						  
						eval(layername+k+".innerHTML=str");
					}
					k= k+1;
				}
			}
		}

	} else {
		string = getFile("http://192.168.101.80/news/" + file);

		if (string.length > 0)
		{
			array = string.split('```');
			if (array.length > 1)
			{
			
				tmp = array.length - 1;
				if (tmp > displayno*3)
					tmp = displayno*3;

				str = "<table width='350' border='0' cellspacing='0' callpadding='0'>";
				for (var i = 1; i<tmp; i=i+3)
				{
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined")
					{
						str += '<tr><td class=NSnewsHeadline width=60 height=30>'+array[i+1]+'</td><td class=NSnewsHeader width=290 height=30>';
						
						if (linkable) {
						  str += '<a href="" onclick=\'window.open("http://192.168.101.80/news/'+folder;
						  str +=  '/content'+array[i]+'.html","NewsContent","toolbar=no,scrollbars=yes,status=yes,resizable=yes,width=480,height=400"); return false\'>';
						  str += array[i+2]+"</a></td></tr>";
						}
						else
						  str += array[i+2]+"</td></tr>";
					}
				}
				str += "</table>";
				if (str.length > 70)
				{
					eval('document.layers.'+layername+'.document.write(str)');
					eval('document.layers.'+layername+'.document.close()');
				}
			}
		}
	}
	file =null;
	tmp  =null;
	myApp =null;
	array =null;
	string = null;
	str = null;

	setTimeout('updatenews("'+layername+'","'+ folder+'",'+displayno+','+lang+',"'+zhFilename+'","'+ enFilename+'",'+linkable+')',240000);
}



function updateHSI( lang, layername1, layername2 )
{
	var tmp , myApp,  string, array;
	tmp  =  0;
	myApp = findObj("myApplet");
	string = "";



	// IE
	if (document.all)
	{
		var myApp = findObj("myApplet");
		string  = myApp.getFile("http://www.ebsdata.com/shares/index/HSI.txt");	

		if ( string.length > 0 )
		{
			array = string.split('```');
			array[1] = 'HSI Index';
			array[4] = 'Change(%)';
			array[7] = 'High';
			array[10] = 'Low';
			array[13] = 'Turnover';
			if (array.length > 1)
			{
			
				var k = 1;		
				
				tmp = array.length - 1;
				if (tmp > 15)
					tmp = 15;

				for (var i = 1; i<tmp; i=i+3)
				{
					if (i == 7 || i == 10) continue;	// skip day high/low
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined")
					{

						
						eval(layername1+k+".innerHTML=array[i]");
						if (i == 4)	// apply to 'change' only
							eval(layername2+k+".innerHTML=UporDn( Comma(array[i+2]) )");
						else
							eval(layername2 + k + ".innerHTML=Comma(array[i+2])");
					}
					k++;
				}
			}
		}
	// Netscape
	} else {
		
		string  = getFile("http://www.ebsdata.com/shares/index/HSI.txt");

		if ( string.length > 0 )
		{
			array = string.split('```');
			if (array.length > 1)
			{
				var str = "<table width='240' border='0' cellspacing='0' callpadding='0'>";
				tmp = array.length - 1;
				if (tmp > 15)
					tmp = 15;

				for (var i = 1; i<tmp; i=i+3)
				{
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined")
					{
						if (lang == 0) { array[i]= array[i+1]; }
						str +='<tr><td class=NSnewsHeadline width=150 height=15>'+array[i]+'</td><td class=NSnewsTime width=90 height=15 ><div align=right>';
						str += UporDn( Comma(array[i+2]) )+'</div></td></tr>';
					}
				}	

				str += "</table>";
			
				document.layers.HSI.document.write(str);
				document.layers.HSI.document.close();
			}
		}
	}
	tmp  =null;
	myApp =null;
	array =null;
	string  =  null;

	setTimeout('updateHSI('+ lang +',"'+layername1+ '","'+ layername2 +'")', 240000);
}



function updateLocal(num, layername1, layername2, layername3 )
{
	var tmp , myApp, string, array;
	tmp  =  0;
	myApp = findObj("myApplet");
	string = "";

	// IE
	if (document.all)
	{
		string  = myApp.getFile("http://192.168.101.80/index/Local.txt");
		if (string != "")
		{
			array = string.split('```');
			if (array.length > 1)
			{
				
				var k = 1;		
				tmp = array.length - 1;
				if (tmp > 28)
					tmp = 28;
			
				for (var i = 1; i<array.length-1; i=i+4)
				{
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined" && array[i+3] != "undefined")
					{
						if (num == 0){ array[i] = array[i+1];}
						eval(layername1 + k +".innerHTML=array[i]");
						eval(layername2 + k +".innerHTML=Comma(array[i+2])");
						eval(layername3 + k +".innerHTML=UporDn( Comma(array[i+3]) )");
					}
					k= k+1;
				}
			}
		}
	} else {

		string  = getFile("http://192.168.101.80/index/Local.txt");
//		string  = getFile('http://203.169.129.26/Local.txt');
		if (string.length > 0)
		{
			array = string.split('```');

			if (array.length > 1)
			{
			
				str = "<table width='240' border='0' cellspacing='0' callpadding='0'>";
				tmp = array.length - 1;
				if (tmp > 28)
					tmp = 28;

				for (var i = 1; i< tmp; i=i+4)
				{
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined" && array[i+3] != "undefined")
					{
						if (num == 0){ array[i] = array[i+1];}
						str +="<tr><td class=NSnewsHeadline width=110 height=17>"+array[i]+"</td><td class=NSnewsTime width=70>";
						str += Comma(array[i+2])+"</td><td class=NSnewsTime width=60><div align=right>"+UporDn( Comma(array[i+3]) )+"</div></td></tr>";
					}
				}

				str += "</table>";
				document.layers.Local.document.write(str);
				document.layers.Local.document.close();
			}			
		}
	}
	string =  null;
	tmp  =null;
	myApp =null;
	array =null;

	setTimeout('updateLocal('+ num +',"'+layername1+ '","'+ layername2 +'","'+layername3+'")', 360000);
}

function updateWorld(num, layername1, layername2, layername3 )
{
	var tmp , myApp,  array;
	tmp  =  0;
	myApp = findObj("myApplet");
	string = "";

	// IE
	if (document.all)
	{
		string  = myApp.getFile("http://www.ebsdata.com/shares/index/World.txt");
		if ( string.length > 0 );
		{
			array = string.split('```');
			if (array.length > 1)
			{

				var k = 1;		
				tmp = array.length - 1;
				if (tmp > 40)
					tmp = 40;
				array[1] = 'Dow Jones';
				array[5] = 'S&P 500';
				array[9] = 'Nasdaq';
				array[13] = 'FTSE100';
				array[17] = 'NIKKEI225';
				array[21] = 'Taiwan';
				array[25] = 'Strait Times';
				array[29] = 'KOSPI';
				array[33] = 'Shenzhen B';
				array[37] = 'Shanghai B';
				for (var i = 1; i<array.length-1; i=i+4)
				{
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined" && array[i+3] != "undefined")
					{
						if(array[i]!="FTSE100"){
							eval(layername1+k+".innerHTML=array[i]");
							eval(layername2+k+".innerHTML=Comma(array[i+2])");
							eval(layername3+k+".innerHTML=UporDn( Comma(array[i+3]) )");
							k= k+1;
						}					
					}
				}
			}
		}
	} else {
		string  = getFile("http://www.ebsdata.com/shares/index/World.txt");

		if (  string.length > 0  )
		{
			array = string.split('```');
			if (array.length > 1)
			{
				
				tmp = array.length - 1;
				if (tmp > 40)
					tmp = 40;

				str = "<table width='240' border='0' cellspacing='0' callpadding='0'>";
				
				for (var i = 1; i<array.length-1; i=i+4)
				{
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+2] != "undefined" && array[i+3] != "undefined")
					{
						if (num == 0){ array[i] = array[i+1];}
						str +="<tr><td class=NSnewsHeadline width=110  height=17>"+array[i]+"</td><td class=NSnewsTime width=70>";
						str += array[i+2]+"</td><td class=NSnewsTime width=60><div align=right>"+UporDn( Comma(array[i+3]) )+"</div></td></tr>";
					}
				}

				str += "</table>";
				document.layers.World.document.write(str);
				document.layers.World.document.close();
			}
		}
	}
	string = null;
	myApp = null;
	tmp = null;
	array = null;

	setTimeout('updateWorld('+ num +',"'+layername1+ '","'+ layername2 +'","'+layername3+'")', 360000);
}


function updateTop(lang, dateTag, filearray, layerarray, NLayer)
{
	var tmp , myApp,  array, string;
	tmp  =  0;
	myApp = findObj("myApplet");
	string = "";

	if (document.all)
	{
		for (var layer = 0 ; layer < filearray.length ; layer ++)
		{
			myApp = findObj("myApplet");
			string  = myApp.getFile('http://192.168.101.80/topten/'+filearray[layer] );
			if (string != "");
			{
				array = string.split(";");
		//		eval(dateTag+".innerHTML='  '+array[1]");
				var k = 1;		
				
				for (var i = 2; i<array.length-2; i=i+5)
				{
					if (lang == 0) 	{  if (array[i+2].length != 0 && array[i+2].indexOf(' ') != 0) { array[i+1] = array[i+2]; } }
					if (layer == 2 || layer == 3) {	array[i+3] = Comma(array[i+3]); 	}
					if (array[i] != "undefined" && array[i+1] != "undefined" && array[i+3] != "undefined" && array[i+4] != "undefined")
					{
						eval(layerarray[layer*4]+k+".innerHTML='('+trim(array[i])+')'");
						eval(layerarray[layer*4 + 1]+k+".innerHTML=trim(array[i+1])");
						eval(layerarray[layer*4 + 2]+k+".innerHTML=trim(array[i+3])");
						eval(layerarray[layer*4 + 3]+k+".innerHTML=trim(array[i+4])");
					}
					k= k+1;
				}
			}
		}
	} else {

		for (var i = 0; i<filearray.length ; i++ )
		{
			string = getFile('http://192.168.101.80/topten/'+filearray[i]);
			if (string != "")
			{
				
				array = string.split(";");
				
			//	str = "<p>"+array[1]+"</p>";

			//	eval('document.layers.'+dateTag+'.document.write(str)');
			//	eval('document.layers.'+dateTag+'.document.close()');
			
				str = "<table width='320' border='0' cellspacing='0' callpadding='0'>";
				for (var j = 2; j<array.length-2; j=j+5)
				{
					if (lang == 0) 	{ array[j+1] = array[j+2];	}
					if (i == 2 || i == 3) {	array[j+3] = Comma(array[j+3]);	}

					str +="<tr height=25 class=newsHeadline><td height=25 class=newsHeadline>("+trim(array[j])+")</td><td class=newsHeadline>";
					str += trim(array[j+1])+"</td><td align=right class=newsHeadline>"+trim(array[j+3])+"</td>";
					str += "<td align=right class=newsHeadline>"+trim(array[j+4])+"</td></tr>";
				}
				str += "</table>";
				
				
				eval("document.layers."+NLayer[i]+".document.write(str)");		
				eval("document.layers."+NLayer[i]+".document.close()");		

			}
		}
	}
	tmp  =null;
	myApp =null;
	array =null;
	string = null;


	setTimeout('updateTop('+ lang +',"'+dateTag+ '","'+ filearray +'", "'+layerarray+'","'+NLayer +'")',120000);

}


function updatepastnews( filename )
{
	var tmp , myApp,  array, string;
	tmp  =  0;
	myApp = findObj("myApplet");
	string = null;
	array = null;

	if (document.all) {
			string  = myApp.getFile('http://192.168.101.80/news/'+ filename);
		
	} else if (document.layers){
			string = getFile('http://192.168.101.80/news/'+ filename);
	}

	if (string.length > 0)
	{
		array = string.split("```");
		if (array.length > 1)
		{
			
			str = " <table width='500' border='0' cellspacing='1' cellpadding='1' align='center'>";
			for (var i = 1; i<array.length; i=i+3)
			{
				str += "<tr><td class='newsTime' width='70' height='35'>"+array[i+1]+"</td><td class='newsHeadline' width='430' height='35'>";
				str += array[i+2]+"</a></td></tr>";
			}
			str += "</table>";

			if (document.all) {	eval("news.innerHTML=str"); }
			else if (document.layers){document.layers.news.document.write(str); document.layers.news.document.close(); }
		}
	}
	
	string = null;
	myApp = null;
	tmp = null;
	array = null;

	setTimeout('updatepastnews("'+ filename +'")', 120000);
}	


