function $(A)
{
  if(document.getElementById)
  {
    return document.getElementById(A)
  }
  else
  {
    return document.all.objName
  }
}

if(typeof $C=="undefined")
{
  $C=function(A)
  {
    return document.createElement(A)
  }
}
Function.prototype.Bind=function()
{
  var D=this,B=arguments[0],A=new Array();
  for(var C=1;C<arguments.length;C++)
  {
    A.push(arguments[C])
  }
return function()
{
  return D.apply(B,A)
}
};
Function.prototype.BindForEvent=function()
{
var D=this,B=arguments[0],A=new Array();
for(var C=1;C<arguments.length;C++)
{
  A.push(arguments[C])
}
return function(E)
{
  return D.apply(B,[(E||window.event)].concat(A))
}
};
var oHF=
{
NG:["NYMEX天然气",[0]],CL:["NYMEX原油",[7.3,"美元/桶"]],CT:["NYBOT-棉花",[22.0462,"美分/磅"]],SB:["NYBOT-11糖",[22.0462,"美分/磅"]],NID:["LME镍3个月",[1,"美元/吨"]],PBD:["LME铅3个月",[1,"美元/吨"]],SND:["LME锡3个月",[1,"美元/吨"]],ZSD:["LME锌3个月",[1,"美元/吨"]],AHD:["LME铝3个月",[1,"美元/吨"]],AAD:["LME铝合金3",[1,"美元/吨"]],CAD:["LME铜3个月",[1,"美元/吨"]],S:["CBOT-黄豆",[0.367437,"美分/蒲式耳"]],O:["CBOT-燕麦",[0.367437,"美分/蒲式耳"]],W:["CBOT-小麦",[0.367437,"美分/蒲式耳"]],C:["CBOT-玉米",[0.3936825,"美分/蒲式耳"]],BO:["CBOT-黄豆油",[22.0462,"美分/磅"]],SM:["CBOT-黄豆粉",[1.1025,"美元/短吨"]],TAL:["日本铝",[0,"美元/吨"]],TRB:["日本橡胶",[1000,"日元/公斤","jpy"]],SI:["CBOT白银",[0]],GC:["CBOT黄金",[0.03215,"美元/盎司"]]
};
var HFctrl=
{
fullCode:"hf_@CODE@,",
	hqFull:"hq_str_hf_@CODE@",
	sinaJs:"http://hq.sinajs.cn/?list=",
	hfWeb:"http://finance.sina.com.cn/money/future/quote_hf.html?@CODE@",
	sLink:'@NAME@',
	exgUrl:"http://hq.sinajs.cn/?list=USDCNY,JPY",
	__up_color:"#008000",
	__down_color:"#FF0000",
	__stable_color:"#000",
	//exgHTML:"人民币报价统一单位:元/吨&nbsp;&nbsp;人民币昨日汇率:@USD@&nbsp;&nbsp;日元昨日汇率:@JPY@",
	dataIndex:[-1,0,-1,-1],
	Init:function()
{
	//dataIndex:[-1,0,-1,-1,-1,8,4,5,7,9,2,3,6],
  if(!this.url)
  {
    this.url=this.sinaJs;
    for(var B in oHF)
    {
      this.url+=this.fullCode.replace("@CODE@",B)
    }
    this._table=$("datatbl");
    var A=new IO.Script();
    A.load(this.exgUrl,this.getUsdcny.Bind(this))
  }
  var C=new IO.Script();
  C.load(this.url,this.update.Bind(this))
}
,getUsdcny:function()
{
  var B=window.hq_str_USDCNY.split(",");
  var A=window.hq_str_JPY.split(",");
  this.exchage=
  {
  };
  this.exchage.usd=B[3];
  //this.exchage.jpy=(B[3]/A[3]).toFixed(4);
 // $("exchage").innerHTML=this.exgHTML.replace("@USD@",this.exchage.usd).replace("@JPY@",A[3]);
  this.show()
}
,update:function(C)
{
  this.oData=
  {
  };
  for(var A in oHF)
  {
    if(window[this.hqFull.replace("@CODE@",A)]!="")
    {
      this.oData[A]=window[this.hqFull.replace("@CODE@",A)].split(",")
    }
  }
  this.show();
  var B=window.setTimeout(this.Init.Bind(this),64000)
}
,show:function()
{
  if(!this.exchage||!this.oData)
  {
    return
  }
  var H=$C("TBODY");
  for(var F in this.oData)
  {
    var B=$C("TR");
    var D=this.oData[F][0]-this.oData[F][7];
    for(var C=0;C<this.dataIndex.length;C++)
    {
      switch(C)
      {
        case 0:var A=$C("TH");
        A.innerHTML=this.sLink.replace("@CODE@",F).replace("@NAME@",window.oHF[F][0]);
        B.appendChild(A);
        break;
        case 1:var E=$C("TD");
        E.innerHTML=this.colorRender((this.oData[F][0]*1).toFixed(2),D);
        if(window.oHF[F][1][0])
        {
          E.title=window.oHF[F][1][1]
        }
        B.appendChild(E);
        break;

		/*人民币报价*/
        case 2:
        break;
		/*人民币报价*/


        case 3:var E=$C("TD");
        E.innerHTML=this.colorRender(D.toFixed(2),D);
        B.appendChild(E);
        break;
		/*
        case 4:var E=$C("TD");
        E.innerHTML=D!=0?this.colorRender((D/this.oData[F][7]*100).toFixed(2)+"%",D):"<span>0.00%</span>";
        B.appendChild(E);
        break;
        case 12:var E=$C("TD");
        E.innerHTML=this.oData[F][this.dataIndex[C]]!="NoData."?this.oData[F][this.dataIndex[C]]:"--";
        B.appendChild(E);
        break;
		*/
        default:var E=$C("TD");
        E.innerHTML=this.oData[F][this.dataIndex[C]]!="NoData."?(this.oData[F][this.dataIndex[C]]*1).toFixed(2):"--";
        B.appendChild(E);
        break
      }
    }
    H.appendChild(B)
  }
  this._table.removeChild(this._table.tBodies[0]);
  this._table.appendChild(H);
  SortTable.Init(1)
}
,colorRender:function(A,C)
{
  C=parseFloat(C);
  if(C>0)
  {
    var B=this.__up_color
  }
  else
  {
    if(C<0)
    {
      var B=this.__down_color
    }
    else
    {
      var B=this.__stable_color
    }
  }
  return'<span style="color:'+B+';">'+A+"</span>"
}
};
var SortFunctions=
{
numRxp:/^(\+|\-)?\d+\.?\d*$/,compareArr:function(B)
{
return function A(E,C)
{
  var F=E[B]*1,D=C[B]*1;
  if(F>D)
  {
    return -1
  }
  else
  {
    if(F<D)
    {
      return 1
    }
    else
    {
      return 0
    }
  }
}
}
,compareFloat:function(B)
{
return function A(E,C)
{
  if(E.cells[B].firstChild.nodeType==1)
  {
    var G=E.cells[B].firstChild.innerHTML;
    var F=SortFunctions.numRxp.test(G)?G*1:-1
  }
  else
  {
    var G=E.cells[B].innerHTML;
    var F=SortFunctions.numRxp.test(G)?G*1:-1
  }
  if(C.cells[B].firstChild.nodeType==1)
  {
    var G=C.cells[B].firstChild.innerHTML;
    var D=SortFunctions.numRxp.test(G)?G*1:-1
  }
  else
  {
    var G=C.cells[B].innerHTML;
    var D=SortFunctions.numRxp.test(G)?G*1:-1
  }
  if(F>D)
  {
    return -1
  }
  else
  {
    if(F<D)
    {
      return 1
    }
    else
    {
      return 0
    }
  }
}
}
};
var SortTable=
{
initialed:false,_TRs:[],tdThead:[],activeCol:null,readyToOri:null,Init:function(A)
{
this._table=$("datatbl");
var B=this._table.firstChild.tagName=="THEAD"?this._table.firstChild:this._table.firstChild.nextSibling;
var D=this._table.tBodies[0].rows;
this._TRs=[];
this._TRsBackup=[];
for(var C=0;C<D.length;C++)
{
  this._TRs.push(D[C]);
  this._TRsBackup.push(D[C])
}
if(!this.initialed)
{
  for(var C=0;C<B.rows[0].cells.length;C++)
  {
    this.tdThead.push(B.rows[0].cells[C]);
    if(C!=0&&C!=B.rows[0].cells.length-1)
    {
      this.tdThead[C].firstChild.onclick=this.start.Bind(this,C)
    }
  }
  this.initialed=true
}
else
{
  if(!A&&this.activeCol)
  {
    alert("test")
  }
  else
  {
    if(A&&this.activeCol)
    {
      this.tdThead[this.activeCol].lastChild.className="";
      this.activeCol=null
    }
  }
}
}
,start:function(B)
{
if(B!=this.activeCol)
{
  if(this.activeCol)
  {
    this.tdThead[this.activeCol].lastChild.className="";
    for(var A=0;A<this._TRs.length;A++)
    {
      this._TRs[A].cells[this.activeCol].className=""
    }
  }
  this.activeCol=B;
  this.readyToOri=null;
  this.tdThead[B].lastChild.className="down";
  if(B!=4)
  {
    this._TRs.sort(SortFunctions.compareFloat(B))
  }
  else
  {
    this._TRs.sort(SortFunctions.compareRate(B))
  }
  this.insertTbody(B,true)
}
else
{
  if(!this.readyToOri)
  {
    this.readyToOri=true;
    this._TRs.reverse();
    this.insertTbody(B,true);
    this.tdThead[B].lastChild.className="up"
  }
  else
  {
    this.readyToOri=null;
    this.tdThead[this.activeCol].lastChild.className="";
    for(var A=0;A<this._TRs.length;A++)
    {
      this._TRs[A].cells[this.activeCol].className=""
    }
    this.activeCol=null;
    this.insertTbody(B,false,1)
  }
}
}
};
