/**
 * @author TaiNguyen
 */
var sec = new Securities([]);
function Securities(items){
	this.Items = items;
	this.View = 0;
	this.isLoad = true;
	this.isTimeout = 0;
};
Securities.prototype.LoadSecurity = function (objs){
	items = this.ConvertObject(objs)
	this.Items = [];	
	for(var i=0;i<items.length;i++){		
		this.Items.push({key:items[i].s1, v: items[i]});
	}
	if (comm.stcID == '001') {
		this.SecurityShow();
		list = [];
		list = this.Items; //Cap nhat lai gia moi
	}		
	this.isTimeout = setTimeout("callLoadSecurity('" + comm.stcID + "');", 2001);	
};
Securities.prototype.SecurityShow = function(){	
 	var i =0; i = parseInt(comm.stas); 	
 	$('dvHeaderflow').innerHTML = this.LoadHeader(i) + "</table>"; 	
	$('dvContentHeader').innerHTML = this.LoadHeader(i) + this.LoadData(i) + "</table>";
	if(document.all)
		$('dvContentHeader').style.width =$('dvHeader12').offsetWidth - 17 + "px";
	$('dvHeaderflow').style.width = $('dvContentHeader').offsetWidth + "px";		
};
Securities.prototype.get3Price = function(now,old,bgnow,bgchange){
    var bgr = bgnow;
	var str = new sbuil();
	if(old != now)
		bgr = bgchange;
	else
	    bgr = bgnow;    
	str.append("<td class='"+ bgr + "'>" + now + "</td>");
	return str.toString();
};
Securities.prototype.getPriceChange = function(now,old,bgnow,bgchange){
	var str = new sbuil();
	if(old != now)
		str.append("<td class='"+ bgchange + "'>" + now + "</td>");
	else
		str.append("<td class='"+ this.ColorMatch(bgnow.replace('6','')) + "6'>" + this.getSymbol(bgnow.replace('6','')) + now + "</td>");
	return str.toString();
};
Securities.prototype.LoadHeader=function(session){
	var str = new sbuil();
	str.append("<table cellpadding=0 cellspacing=0 class=tb10 frame=box id='tbHeader'><tr>");//dong 1
	str.append("<td rowspan=2 class='td4 tdtile30 t1' width=5%>"+ lags.Ma +"</td>");
	str.append("<td rowspan=2 class='td4 tdtile30 t1' width=3%>"+ lags.Tran +"</td>");
	str.append("<td rowspan=2 class='td4 tdtile30 t1' width=3%>"+ lags.San +"</td>");
	str.append("<td rowspan=2 class='td4 tdtile30 t1' width=3%>"+ lags.TC +"</td>");
	str.append("<td rowspan=2 class='td4 tdtile31 t1' width=6%>"+ lags.Room +"</td>");
	str.append("<td colspan=6 class='td1 tdtile31 t1'>"+ lags.Mua +"</td>");	
	str.append("<td colspan=4 class='td1 tdtile31 t1'>"+ lags.Match +"</td>");
	str.append("<td colspan=6 class='td1 tdtile31 t1'>"+ lags.Ban +"</td>");
	if (session==2){
		str.append("<td colspan=2 class='td1 tdtile30 t1'>"+ lags.Session + " 1</td>");		
	}
	if(session==3){
		str.append("<td colspan=2 class='td1 tdtile30 t1'>"+ lags.Session + " 1</td>");
		str.append("<td colspan=2 class='td1 tdtile30 t1'>"+ lags.Session + " 2</td>");
	}
	if(session>=4){
		str.append("<td colspan=2 class='td1 tdtile30 t1'>"+ lags.Session + " 1</td>");
		str.append("<td colspan=2 class='td1 tdtile30 t1'>"+ lags.Session + " 2</td>");
	}
	str.append("<td rowspan=2 class='td4 tdtile30 t1' width=3%>"+ lags.High + "</td>");
	str.append("<td rowspan=2 class='td4 tdtile30 t1' width=3%>"+ lags.Low + "</td>");
	str.append("</tr><tr>");											//dong 2
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + " 3</td>");
	str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + " 3</td>");
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + " 2</td>");
	str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + " 2</td>");
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + " 1</td>");
	str.append("<td class='td4 tdtile31 t1' width=4%>"+ lags.KL + " 1</td>");	
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + "</td>");
	str.append("<td class='td4 tdtile30 t1' width=4%>+/-</td>");
	str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + "</td>");		
	str.append("<td class='td4 tdtile31 t1' width=5%>"+ lags.TotalVol + "</td>");	
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + " 1</td>");
	str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + " 1</td>");
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + " 2</td>");
	str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + " 2</td>");
	str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + " 3</td>");
	str.append("<td class='td4 tdtile31 t1' width=4%>"+ lags.KL + " 3</td>");
	if(session==2){
		str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + "</td>");
	}
	if(session==3){
		str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + "</td>");
	}
	if(session>=4){
		str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=3%>"+ lags.Gia + "</td>");
		str.append("<td class='td4 tdtile30 t1' width=4%>"+ lags.KL + "</td>");
	}
	str.append("</tr>");
	return str.toString();
};
Securities.prototype.LoadData=function(session){
	var bg ='changebg';
	if(list.length==0)
		list = this.Items;	
	var str = new sbuil();
	var shead = new sbuil();	
	if (this.Items.length > 0) {		
		for (i = 0; i < this.Items.length; i++) {
			var kt = false;					
			if (secArr1.length > 0) {			    
				for (j = 0; j < secArr1.length; j++) {
					if (this.Items[i].v.s1 == secArr1[j].substring(3,secArr1[j].length)){					    
					    if (j % 2 == 0) 
						    shead.append("<tr id='" + this.Items[i].v.s1 + "' onmouseover='Row_Over(this)' onmouseout=\"Row_Out('tr1', this)\" class ='tr1'>");
					    else 
						    shead.append("<tr id='" + this.Items[i].v.s1 + "' onmouseover='Row_Over(this)' onmouseout=\"Row_Out('tr2', this)\" class ='tr2'>");
					    shead.append("<td class=" + this.ColorMatch(this.Items[i].v.s18) + "4 ondblclick='LoadLocationSymbol(\""+ this.Items[i].v.s1+ "\")' onmouseover=\"PopupName('"+ this.Items[i].v.s1 +"', this)\" onmouseout=\"hideddrivetip()\">"+ this.Items[i].v.s1 + "</td>");
					    shead.append("<td class='u2'>" + this.Items[i].v.s3 + "</td>");
					    shead.append("<td class='d2'>" + this.Items[i].v.s4 + "</td>");
					    shead.append("<td class='s2'>" + this.Items[i].v.s2 + "</td>");
					    shead.append("<td class='t3'>" + this.Items[i].v.s5 + "</td>");
					    shead.append(this.get3Price(this.Items[i].v.s6, list[i].v.s6, this.Items[i].v.s8 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s7, list[i].v.s7, this.Items[i].v.s8 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s9, list[i].v.s9, this.Items[i].v.s11 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s10, list[i].v.s10, this.Items[i].v.s11 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s12, list[i].v.s12, this.Items[i].v.s14 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s13, list[i].v.s13, this.Items[i].v.s14 + '3', bg));
						
					    shead.append(this.get3Price(this.Items[i].v.s15, list[i].v.s15, this.ColorMatch(this.Items[i].v.s18) + '6', bg));
					    shead.append(this.getPriceChange(this.Items[i].v.s17, list[i].v.s17, this.Items[i].v.s18 + '6', bg));
					    shead.append(this.get3Price(this.Items[i].v.s16, list[i].v.s16, this.ColorMatch(this.Items[i].v.s18) + '6', bg));
					    shead.append(this.get3Price(this.Items[i].v.s19, list[i].v.s19, this.ColorMatch(this.Items[i].v.s18) + '5', bg));
						
					    shead.append(this.get3Price(this.Items[i].v.s20, list[i].v.s20, this.Items[i].v.s22 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s21, list[i].v.s21, this.Items[i].v.s22 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s23, list[i].v.s23, this.Items[i].v.s25 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s24, list[i].v.s24, this.Items[i].v.s25 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s26, list[i].v.s26, this.Items[i].v.s28 + '2', bg));
					    shead.append(this.get3Price(this.Items[i].v.s27, list[i].v.s27, this.Items[i].v.s28 + '3', bg));
					    if (session == 2) {
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s35 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s36 + "</td>");
					    }
					    if (session == 3) {
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s35 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s36 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s37 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s38 + "</td>");
					    }
					    if (session >= 4) {
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s35 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s36 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s37 + "</td>");
						    shead.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s38 + "</td>");
					    }
					    shead.append("<td class='" + this.ColorMatch(this.Items[i].v.s32) + "2'>" + this.Items[i].v.s31 + "</td>");
					    shead.append("<td class='" + this.ColorMatch(this.Items[i].v.s34) + "2'>" + this.Items[i].v.s33 + "</td>");
					    shead.append("</tr>");
					    if(j==secArr1.length -1){
					        if(session <2)
							    shead.append("<tr><td colspan=23><div class='tds4'></div></td></tr>");
							else if(session == 2)
							    shead.append("<tr><td colspan=25><div class='tds4'></div></td></tr>");
							else if(session >= 3)
							    shead.append("<tr><td colspan=27><div class='tds4'></div></td></tr>");
						}
					    kt = true;
					    break;						
					}
				}
			}
			if (!kt) {
				if (i % 2 == 0) 
					str.append("<tr id='" + this.Items[i].v.s1 + "' onmouseover='Row_Over(this)' onmouseout=\"Row_Out('tr1', this)\" class ='tr1'>");
				else 
					str.append("<tr id='" + this.Items[i].v.s1 + "' onmouseover='Row_Over(this)' onmouseout=\"Row_Out('tr2', this)\" class ='tr2'>");
				str.append("<td class=" + this.ColorMatch(this.Items[i].v.s18) + "4 ondblclick='LoadLocationSymbol(\""+ this.Items[i].v.s1+ "\")' onmouseover=\"PopupName('"+ this.Items[i].v.s1 +"', this)\" onmouseout=\"hideddrivetip()\">"+ this.Items[i].v.s1 + "</td>");
				str.append("<td class='u2'>" + this.Items[i].v.s3 + "</td>");
				str.append("<td class='d2'>" + this.Items[i].v.s4 + "</td>");
				str.append("<td class='s2'>" + this.Items[i].v.s2 + "</td>");
				str.append("<td class='t3'>" + this.Items[i].v.s5 + "</td>");
				str.append(this.get3Price(this.Items[i].v.s6, list[i].v.s6, this.Items[i].v.s8 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s7, list[i].v.s7, this.Items[i].v.s8 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s9, list[i].v.s9, this.Items[i].v.s11 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s10, list[i].v.s10, this.Items[i].v.s11 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s12, list[i].v.s12, this.Items[i].v.s14 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s13, list[i].v.s13, this.Items[i].v.s14 + '3', bg));
				
				str.append(this.get3Price(this.Items[i].v.s15, list[i].v.s15, this.ColorMatch(this.Items[i].v.s18) + '6', bg));
				str.append(this.getPriceChange(this.Items[i].v.s17, list[i].v.s17, this.Items[i].v.s18 + '6', bg));
				str.append(this.get3Price(this.Items[i].v.s16, list[i].v.s16, this.ColorMatch(this.Items[i].v.s18) + '6', bg));
				str.append(this.get3Price(this.Items[i].v.s19, list[i].v.s19, this.ColorMatch(this.Items[i].v.s18) + '5', bg));
				
				str.append(this.get3Price(this.Items[i].v.s20, list[i].v.s20, this.Items[i].v.s22 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s21, list[i].v.s21, this.Items[i].v.s22 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s23, list[i].v.s23, this.Items[i].v.s25 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s24, list[i].v.s24, this.Items[i].v.s25 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s26, list[i].v.s26, this.Items[i].v.s28 + '2', bg));
				str.append(this.get3Price(this.Items[i].v.s27, list[i].v.s27, this.Items[i].v.s28 + '3', bg));
				if (session == 2) {
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s35 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s36 + "</td>");
				}
				if (session == 3) {
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s35 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s36 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s37 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s38 + "</td>");
				}
				if (session >= 4) {
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s35 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s35, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s36 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s37 + "</td>");
					str.append("<td class='" + this.CompareColor(this.Items[i].v.s37, this.Items[i].v.s2, this.Items[i].v.s3, this.Items[i].v.s4) + "2'>" + this.Items[i].v.s38 + "</td>");
				}
				str.append("<td class='" + this.ColorMatch(this.Items[i].v.s32) + "2'>" + this.Items[i].v.s31 + "</td>");
				str.append("<td class='" + this.ColorMatch(this.Items[i].v.s34) + "2'>" + this.Items[i].v.s33 + "</td>");
				str.append("</tr>");
			}			
		}
	}	
	return shead.toString() + str.toString();	
};
Securities.prototype.ConvertObject = function(objs){
	var objJson = objs;
	var obj = [];
	for(var i=0; i<objJson.length; i++){
		var item = {};
		for(var j=0; j<objJson[i].length; j++){
			item["s"+(j+ 1)] = objJson[i][j];
		}
		obj.push(item);
	}
	return obj;
};
Securities.prototype.getSymbol = function(st){
	var sr="";
	if(st=='c')
		sr=" CE▲";
    else if(st=='u')
        sr=" ▲";
	else if(st=='f')
		sr=" FL▼";
    else if(st=='d')
		sr=" ▼";
	else
		sr=" ";
	return sr;
};
Securities.prototype.ColorMatch = function(c){
    var t = 's';
    if(c=='c')
        t = 'u';
    else if(c=='f')
        t = 'd';
    else
        t = c;
    return t;
};
Securities.prototype.CompareColor = function(a,b,c,d){
	if(a>b)
		return 'u';	
	else if(a<b)
		return 'd';
	else
		return 's';	
};
function Loadlanguage(){
	$('mnHose').innerHTML = lags.HoseOn;
	$('mnHastc').innerHTML = lags.HastcOn;
	$('mnOtc').innerHTML = lags.Otc;
	$('mnPutt').innerHTML = lags.Putt;
	$('dvOp').innerHTML = lags.Option;
	$('tdCompany').innerHTML = lags.Title1;
	$('tdTiltehead').innerHTML = lags.Title2;
	$('dvHeadSymbol').innerHTML = lags.Select;
	$('tdTang').innerHTML = lags.Tang;
	$('tdSession1').innerHTML = $('tdSession130').innerHTML = lags.Ses + ' 1';
	$('tdSession2').innerHTML = $('tdSession230').innerHTML = lags.Ses + ' 2';
	$('tdSession3').innerHTML = $('tdSession330').innerHTML = lags.Ses + ' 3';
	$('lblKLS10').innerHTML = $('lblKLS20').innerHTML = $('lblKLS30').innerHTML = lags.KL;
	$('lblKLS1030').innerHTML = $('lblKLS2030').innerHTML = $('lblKLS3030').innerHTML = lags.KL;
	$('lblGTS10').innerHTML = $('lblGTS20').innerHTML = $('lblGTS30').innerHTML = lags.GTGD1;
	$('lblGTS1030').innerHTML = $('lblGTS2030').innerHTML = $('lblGTS3030').innerHTML = lags.GTGD1;		
	$('lblPriu').innerHTML = lags.PriUnit;
	$('lblPriv').innerHTML = lags.VolUnit + '10' + lags.Unit;
	$('dvCopy').innerHTML = lags.Copy;
	$('dvAddr').innerHTML = lags.Addr;
	$('dvContact').innerHTML = lags.Contact;	
	$('lblSoGD00').innerHTML = lags.Trade;
	$('tdCurs1').innerHTML = $('tdCurs2').innerHTML = $('tdCurs3').innerHTML = $('tdCurs4').innerHTML = lags.Cur;
	$('tdCurs130').innerHTML = $('tdCurs230').innerHTML = $('tdCurs330').innerHTML = lags.Cur;
	$('tdTongt').innerHTML = lags.TKL;
	$('lblGTt').innerHTML=lags.TGT;
	
	$('tdTongt30').innerHTML = lags.TKL;
	$('lblGTt30').innerHTML=lags.TGT;
};
