//获取行业行情数据请求
//http://quote.tool.hexun.com/hqzx/stocktype2.aspx?type_code=0&columnid=5518
//更换为icb行业
StockListRequest = new function(){
	this.scriptid ="StockListRequest";
	//this.url = "http://quote.tool.hexun.com/hqzx/stocktype2.aspx?columnid=5517";
	this.url = "http://quote.stock.hexun.com/stockdata/hy_stock.aspx";
	this.typeCode = "0";
	this.sorttype = "3";
	this.typeName = "农业";
	this.updown = "up";

	this.CreateLink = function()
	{
		var request = this.url + "?";
		if(this.typeCode != "")
		{
			request += "type_code=" + this.typeCode + "&";
		}
		request += "sorttype=" + this.sorttype + "&updown=" + this.updown + "&count=10&time=" + Common.Time();
		//alert(request);
		return request;
	}	
	this.Request = function()
	{
		Common.AppendDataArray(this.scriptid,this.CreateLink());
	}
	this.SetSorttype = function(st)
	{
		if(st=="6")
		{
			this.sorttype = "2";
			this.updown = "up";
		}
		else if (st=="7")
		{
			this.sorttype = "2";
			this.updown = "down";
		}
		else
		{
			this.sorttype = st;
			this.updown = "up";
		}
		this.Request();
	}
}


//显示数据
StockListPage = new function(){
	this.dataArray;
	this.currentColumn;
	this.divName = "StockListPage";
	this.columnArray = new Array();
	this.reloadTime = 300000;
	this.reload = true;
	this.setTimeObj;
	this.GetData = function(array,total,time)
	{
		this.currentColumn = StockListRequest.sorttype;
		//this.columnArray[this.currentColumn] = StockListRequest.updown;
		this.dataArray = array;
		//this.ShowTime(time);
		//this.ShowPage(StockListRequest.page,StockListRequest.totalpage);
		//this.InitDataSort(this.currentColumn,StockListRequest.updown);
		this.NewLoadDataFinish();
	}
	this.NewLoadDataFinish = function()
	{
		//hc.push("");
		var columnIndex = Number(StockListRequest.sorttype);
		var columnName = this.GetColumnName(StockListRequest.sorttype);
		var hc = new Array();
		
		hc.push("<table width=\"125\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box14\">");
		hc.push("<tr><td>排名</td><td>简称</td><td><a href=\"http://quote.hexun.com/stock/icb.aspx?code="+ StockListRequest.typeCode +"&name="+ StockListRequest.typeName +"\" target=\"_blank\">"+ columnName +"</td></tr>");
		for(var i=0;i < this.dataArray.length;i++){
			hc.push("<tr>");
			hc.push("<td>" + (i+1) + "</td>");
			hc.push("<td><a href=\"http://stockdata.stock.hexun.com/" + this.dataArray[i][0] + ".shtml\" target=\"_blank\">" + this.dataArray[i][1] + "</a></td>");//名称
			if(this.dataArray[i][2] == 0 && this.dataArray[i][8] == 0 && this.dataArray[i][9]==0){
				hc.push("<td>--</td>");
			}else{
				var tmpV = this.GetShowValues(this.dataArray[i][columnIndex]);
				hc.push("<td>" + tmpV + "</td>");
			}
			hc.push("</tr>");
		}
		hc.push("</table>");
		Common.$(this.divName).innerHTML = hc.join('');
		
		//自动刷 暂时关闭
		if(this.reload){
			clearTimeout(this.setTimeObj);
			this.setTimeObj = setTimeout(this.AutoReload,this.reloadTime);//按设置时间重读数据
		}
	}
	
	this.GetShowValues = function(v)
	{
		//获得显示的值 万元 亿元
		var vw = v;
		var unit = "";
		var len = v.toFixed(0).length;
		
		if (len>=13)
		{
			vw = vw/1000000000000;
			unit = "万亿";
			return vw.toFixed(2) + unit;
		}
		
		if (len>=12)
		{
			vw = vw/100000000000;
			unit = "千亿";
			return vw.toFixed(2) + unit;
		}
		
		if (len>=11)
		{
			vw = vw/10000000000;
			unit = "百亿";
			return vw.toFixed(2) + unit;
		}
		
		if (len>=9)
		{
			vw = vw/100000000;
			unit = "亿";
			return vw.toFixed(2) + unit;
		}
		
		if (len>=8)
		{
			vw = vw/10000000;
			unit = "千万";
			return vw.toFixed(2) + unit;
		}
		
		if (len>=7)
		{
			vw = vw/1000000;
			unit = "百万";
			return vw.toFixed(2) + unit;
		}
		
		if (len>=5)
		{
			vw = vw/10000;
			unit = "万";
			return vw.toFixed(2) + unit;
		}
		
		return vw.toFixed(2) + unit;
	}
	
	this.GetColumnName = function(st)
	{
		//2最新价	3涨跌幅	4昨收盘 5今开盘 6最高价 7最低价	8成交量	9成交额	10换手率 11振幅 12量比
		var cName = "";
		switch(st)
		{
			case "2":cName="最新价";break;
			case "3":cName="涨跌幅";break;
			case "4":cName="昨收盘";break;
			case "5":cName="今开盘";break;
			case "6":cName="最高价";break;
			case "7":cName="最低价";break;
			case "8":cName="成交量";break;
			case "9":cName="成交额";break;
			case "10":cName="换手率";break;
			case "11":cName="振幅";break;
			case "12":cName="量比";break;
			default:cName="涨跌幅";break;
		}
		return cName;
	}
	this.LoadDataFinish = function()
	{
		var hc = new Array();
		hc.push("<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"dou_table\">");
		hc.push("<tr><td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(0)\">代码</a>" + this.Arrow(0)+ "</td>");
		hc.push("<td class=\"toptd\">名称</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(2)\">最新价</a>" + this.Arrow(2)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(3)\">涨跌幅</a>" + this.Arrow(3)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(4)\">昨收</a>" + this.Arrow(4)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(5)\">今开</a>" + this.Arrow(5)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(6)\">最高</a>" + this.Arrow(6)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(7)\">最低</a>" + this.Arrow(7)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(8)\">成交量</a>" + this.Arrow(8)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(9)\">成交额</a>" + this.Arrow(9)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(10)\">换手</a>" + this.Arrow(10)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(11)\">振幅</a>" + this.Arrow(11)+ "</td>");
		hc.push("<td class=\"toptd\"><a href=\"javascript:StockListPage.DataSort(12)\">量比</a>" + this.Arrow(12)+ "</td>");
		hc.push("<td class=\"toptd\">资金</td>");
		hc.push("<td class=\"toptdend\">股吧</td></tr>");
		for(var i=0;i < this.dataArray.length;i++){
			hc.push("<tr" + this.TrBgColor(i) + ">");
			hc.push("<td" + this.TdBgColor(i,0) + "><a href=\"http://stockdata.stock.hexun.com/" + this.dataArray[i][0] + ".shtml\" target=\"_blank\">" + this.dataArray[i][0] + "</a></td>");//代码
			hc.push("<td><a href=\"http://stockdata.stock.hexun.com/" + this.dataArray[i][0] + ".shtml\" target=\"_blank\">" + this.dataArray[i][1] + "</a></td>");//名称
			if(this.dataArray[i][2] == 0 && this.dataArray[i][8] == 0 && this.dataArray[i][9]==0){
				hc.push("<td" + this.TdBgColor(i,2) + ">--</td>");//最新价
				hc.push("<td" + this.TdBgColor(i,3) + ">--</td>");//涨跌幅
				hc.push("<td" + this.TdBgColor(i,4) + ">" + this.dataArray[i][4].toFixed(2) + "</td>");//昨收
				hc.push("<td" + this.TdBgColor(i,5) + ">--</td>");//今开
				hc.push("<td" + this.TdBgColor(i,6) + ">--</td>");//最高
				hc.push("<td" + this.TdBgColor(i,7) + ">--</td>");//最低
				hc.push("<td" + this.TdBgColor(i,8) + ">--</td>");//成交量
				hc.push("<td" + this.TdBgColor(i,9) + ">--</td>");//成交额
				hc.push("<td" + this.TdBgColor(i,10) + ">--</td>");//换手
				hc.push("<td" + this.TdBgColor(i,11) + ">--</td>");//振幅
				hc.push("<td" + this.TdBgColor(i,12) + ">--</td>");//量比
			}else{
				hc.push("<td" + this.TdBgColor(i,2) + ">" + Common.GetColor2DEC(this.dataArray[i][2],this.dataArray[i][4]) + "</td>");//最新价
				hc.push("<td" + this.TdBgColor(i,3) + ">" + Common.GetColor2DEC(this.dataArray[i][3],0) + "</td>");//涨跌幅
				hc.push("<td" + this.TdBgColor(i,4) + ">" + this.dataArray[i][4].toFixed(2) + "</td>");//昨收
				hc.push("<td" + this.TdBgColor(i,5) + ">" + Common.GetColor2DEC(this.dataArray[i][5],this.dataArray[i][4]) + "</td>");//今开
				hc.push("<td" + this.TdBgColor(i,6) + ">" + Common.GetColor2DEC(this.dataArray[i][6],this.dataArray[i][4]) + "</td>");//最高
				hc.push("<td" + this.TdBgColor(i,7) + ">" + Common.GetColor2DEC(this.dataArray[i][7],this.dataArray[i][4]) + "</td>");//最低
				hc.push("<td" + this.TdBgColor(i,8) + ">" + this.dataArray[i][8].toFixed(2) + "</td>");//成交量
				hc.push("<td" + this.TdBgColor(i,9) + ">" + this.dataArray[i][9] + "</td>");//成交额
				hc.push("<td" + this.TdBgColor(i,10) + ">" + this.dataArray[i][10].toFixed(2) + "</td>");//换手
				hc.push("<td" + this.TdBgColor(i,11) + ">" + this.dataArray[i][11].toFixed(2) + "</td>");//振幅
				hc.push("<td" + this.TdBgColor(i,12) + ">" + this.dataArray[i][12].toFixed(2) + "</td>");//量比
			}
			hc.push("<td><a href=\"http://vol.stock.hexun.com/idio_01.aspx?stockcode=" + this.dataArray[i][0] + "\" target=\"_blank\"><img src=\"/img/img004.gif\" align=\"absmiddle\"/></a></td>");
			hc.push("<td class=\"tdend\"><a href=\"http://guba.hexun.com/" + this.dataArray[i][0] + ",guba.html\" target=\"_blank\">股吧</a></td></tr>");
		}
		
		hc.push("</table>");
		Common.$(this.divName).innerHTML = hc.join('');
		
		if(this.reload){
			clearTimeout(this.setTimeObj);
			this.setTimeObj = setTimeout(this.AutoReload,this.reloadTime);//按设置时间重读数据
		}
	}
	this.AutoReload = function(){
		StockListRequest.Request();
	}
	this.ShowTime = function(time)
	{
		Common.$("updatetime").innerHTML = time;
		Common.$("topupdatetime").innerHTML = time;
	}
	this.ShowPage = function(page,total){
		Common.$("pagenum").innerHTML = page + "/" + total;
	}
	this.InitDataSort = function(column,order)
	{
		if(order == "up"){
			this.dataArray.sort(function(a,b){ return b[column]-a[column]; });
		}
		if(order == "down"){
			this.dataArray.sort(function(a,b){ return a[column]-b[column]; });
		}
	}
	this.DataSort = function(column)
	{
		if(this.columnArray[column] == "down" || this.columnArray[column] == undefined)
		{
			this.columnArray[column] = "up";
			this.ArraySort(column,"up");
		}
		else
		{
			this.columnArray[column] = "down";
			this.ArraySort(column,"down");
		}
	}
	this.ArraySort = function(column,order)
	{
		this.currentColumn = column;
		StockListRequest.updown = order;
		StockListRequest.sorttype = column;
		StockListRequest.Request();
	}
	this.TrBgColor = function(i)
	{
		if(i%2 == 0){
			return "";
		}else{
			return " bgcolor=\"#F7F7F7\"";
		}
		return "";
	}
	this.TdBgColor = function(i,column)
	{
		if(column == this.currentColumn){
			if(i%2 == 0){
				return " bgcolor=\"#FFF3EB\"";	
			}else{
				return " bgcolor=\"#F9ECE4\"";	
			}
		}
		return "";
	}
	this.Arrow = function(column)
	{
		if(column == this.currentColumn){
			if(this.columnArray[column] == "up"){
				return "<img src=\"/img/dot3.gif\" align=\"absmiddle\"/><img src=\"/img/dot2_2.gif\" align=\"absmiddle\" />";	
			}else{
				return "<img src=\"/img/dot1_1.gif\" align=\"absmiddle\"/><img src=\"/img/dot1_2.gif\" align=\"absmiddle\"/>";	
			}
		}
		return "";
	}
}
