var sortdefault="ASC";
var sortdefault2="DESC";
var col_1=sortdefault;
var col_2=sortdefault;
var col_4=sortdefault2;
var col_5=sortdefault2;
var col_6=sortdefault;

var inddepCcy=0;
var indccyPair=1;
var indinvType=2;
var indinvAbbr=3;
var indpReturnPa2=4;
var indmReturnPa=5;
var indtenor=6;
var inddepCcyDesc=7;
var indccyPairDesc=8;
var indinvTypeDesc=9;
var indspotRate=10;
var indwidth=11;
var indminAmt=12;
var indtrigLvl=13;
var indtradeRngLow1=14;
var indtradeRngUpp1=15;
var indtradeRngLow2=16;
var indtradeRngUpp2=17;
var indtradeRngLow3=18;
var indtradeRngUpp3=19;
var inddailyFocus=20;
var indinvCode=21;
var indstartDate=22;
var indpReturnPa1=23;

/**
var indmReturnPa=5;
var indtenor=6;
var inddepCcyDesc=7;
var indccyPairDesc=8;
var indinvTypeDesc=9;
var indspotRate=10;
var indwidth=11;
var indminAmt=12;
var indtrigLvl=13;
var indtradeRngLow1=14;
var indtradeRngUpp1=15;
var indtradeRngLow2=16;
var indtradeRngUpp2=17;
var indtradeRngLow3=18;
var indtradeRngUpp3=19;
var inddailyFocus=20;
var indinvCode=21;
var indstartDate=22;
 */


var ccpairFilterNo = 3
var invTypeFilterNo = 4
var dcFilterNo = 4

var changed=false;
var cookieLife=1;

var noArrayText="沒 有 相 關 資 料"; // ***Please change the text to more formal one 

function changehandler()
{
	changed=true;
}

/**
 * Sort 2 dimention array (data table)
 arrayToSort - the array you want to sort. 
 colIndex - which column you want to sort by. It’s 0 based. 
 sortType - sort by “number” or “string”. 
 sortDirection - sort by ascending(”ASC”) or descending(”DESC”) order. 
 */

function getOriginalArray()
{
	var returnArray;
	returnArray = cpi_data;
	
	return returnArray;
}

function sort2DArray(arrayToSort, colIndex, sortType, sortDirection){
  return arrayToSort.sort(
        function (a, b){
          switch(sortType){
            case "number":
              return sortDirection == "ASC" ? a[colIndex] - b[colIndex] : b[colIndex] - a[colIndex];
            case "string":
              return sortDirection == "ASC" ? a[colIndex] > b[colIndex] ? 1 : a[colIndex] < b[colIndex] ? -1 : 0
                                            : a[colIndex] > b[colIndex] ? -1 : a[colIndex] < b[colIndex] ? 1 : 0;
            default:
              return 0;
          }
        }
      );
}

function printHeader(dailyFocus) {
  var returnStr="";

	returnStr += "<table cellspacing='0' cellpadding='0' border='0' width='772' class='inputContent'>";

	if (dailyFocus=="Y") {
	  returnStr += "<tr><td style='padding-top:7px;'><img src='com/c_images/cpi/focustitle.jpg' /></td></tr>";
	  returnStr += "<tr><td style='padding-left:2px;'>";
	  returnStr += "<table cellspacing='0' cellpadding='0' border='0' width='769' class='inputContent' bgcolor='#EFF7FC'>";
  } else {
	  returnStr += "<tr><td style='padding-top:7px;'><img src='com/c_images/cpi/searchresearchtitle.jpg' /></td></tr>";
	  returnStr += "<tr><td style='padding-left:3px;'>";
	  returnStr += "<table cellspacing='0' cellpadding='0' border='0' width='767' class='inputContent'>";
	}

	returnStr += "<tr>";
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
	returnStr += "<td width='100'><img src='com/c_images/cpi/spacer.gif' width='100' height='1'/></td>";
	returnStr += "<td width='90'><img src='com/c_images/cpi/spacer.gif' width='90' height='1'/></td>";
	returnStr += "<td width='110'><img src='com/c_images/cpi/spacer.gif' width='110' height='1'/></td>";
	returnStr += "<td width='441'><img src='com/c_images/cpi/spacer.gif' width='441' height='1'/></td>";
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
	returnStr += "</tr>";
	
	returnStr += "<tr>";
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
	returnStr += "<td align='center' style='padding-top:7px'><b>存款貨幣</b></td>";
	returnStr += "<td align='center' style='padding-top:7px'><b>掛鈎資產</b></td>";
	returnStr += "<td align='center' style='padding-top:7px'><b>到期回報</b></td>";
	returnStr += "<td align='center' style='padding-top:7px'><b>存款資料</b></td>";
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
	returnStr += "</tr>";
	
	returnStr += "<tr>";
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
	returnStr += "<td align='center' colspan='4'><img src='com/c_images/cpi/dottedlineresult.jpg'/></td>";
	returnStr += "<td width='1' bgcolor='#B3D0F2' style='padding-top:4px;'><img src='com/c_images/cpi/spacer.gif' width='1' height='4'/></td>";
	returnStr += "</tr>";

  return returnStr;
}

function printCPI(cpiData) {
  var returnStr="";
  
  var example = "";
  
  if (cpiData[indinvAbbr] == "BULE" || cpiData[indinvAbbr] == "BERE") {
    example = "#ex01";
  } else if (cpiData[indinvAbbr] == "BULA" || cpiData[indinvAbbr] == "BERA") {
    example = "#ex02";
    

  } else if (cpiData[indinvAbbr] == "RNGE") {
    example = "#ex03";
  } else if (cpiData[indinvAbbr] == "RNGA") {
    if(cpiData[indinvTypeDesc] == "&#x7f8e;&#x5f0f;&#x5340;&#x9593;"){
       example = "#ex04";
    }else{
       example = "#ex08";
    }
  } else if (cpiData[indinvAbbr] == "RNGR") {
    example = "#ex05";
  } else if (cpiData[indinvAbbr] == "RNGD") {
    example = "#ex06";
     
  } 
  //add by Rio Li(for Participation CPI)
  else if (cpiData[indinvAbbr] == "BULP" || cpiData[indinvAbbr] == "BULp" || cpiData[indinvAbbr] == "BERP" || cpiData[indinvAbbr] == "BERp") {
    example = "#ex07";
           
  }

	returnStr += "<tr>";
	// column 1 Deposit CCY
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
	returnStr += "<td valign='middle' align='center' class='inputContentBig'>"+cpiData[inddepCcyDesc]+"</td>";
	
	// column 2 Underlying
	returnStr += "<td valign='middle' align='center' class='inputContentBig'>"+cpiData[indccyPairDesc]+"</td>";
	
	// column 3 Return
	returnStr += "<td valign='middle' align='center'>";
	returnStr += "<table cellspacing='0' cellpadding='0' border='0' class='inputContent'>";
		
		//add by Rio Li(for Participation CPI)
		if(cpiData[indinvAbbr] == "BULP" || cpiData[indinvAbbr] == "BULp" || cpiData[indinvAbbr] == "BERP" || cpiData[indinvAbbr] == "BERp")
		{

			returnStr += "<tr>";
				returnStr += "<td style='padding-top:10px;padding-bottom:2px;'>";
					returnStr += "<table cellspacing='0' cellpadding='0' width='100' bgcolor='#FEDAA8' class='inputContent'>";
						returnStr += "<tr><td><img src='com/c_images/cpi/daorgroundcorner3.gif'></td></tr>";
						returnStr += "<tr><td align='center'><b>" + cpiData[indpReturnPa1] + "% p.a.</b><br/><a href='javascript:openInfo(\"CPIInfo\", \"http://bank.hangseng.com/1/2/chi/investment/capital-protected-investment-deposit/currency-linked-capital-protected-investment-deposit"+example+"\");' style='color:#000000;'>潛在回報率1</a></td></tr>";
						returnStr += "<tr><td><img src='com/c_images/cpi/daorgroundcorner4.gif'></td></tr>";
					returnStr += "</table>";
				returnStr += "</td>";
			returnStr += "</tr>";
			returnStr += "<tr>";
				returnStr += "<td style='padding-top:10px;padding-bottom:2px;'>";
					returnStr += "<table cellspacing='0' cellpadding='0' width='100' bgcolor='#FFC36D' class='inputContent'>";
						returnStr += "<tr><td><img src='com/c_images/cpi/daorgroundcorner1.gif'></td></tr>";
						returnStr += "<tr><td align='center'><b>" + cpiData[indpReturnPa2] + "% p.a.</b><br/><a href='javascript:openInfo(\"CPIInfo\", \"http://bank.hangseng.com/1/2/chi/investment/capital-protected-investment-deposit/currency-linked-capital-protected-investment-deposit"+example+"\");' style='color:#000000;'>潛在回報率2</a></td></tr>";
						returnStr += "<tr><td><img src='com/c_images/cpi/daorgroundcorner2.gif'></td></tr>";
					returnStr += "</table>";
				returnStr += "</td>";
			returnStr += "</tr>";						
		}		//end of Participation CPI
		else	//for other CPI,exclude Participation CPI
		{
			returnStr += "<tr>";
				returnStr += "<td style='padding-top:2px;'>";
						returnStr += "<table cellspacing='0' cellpadding='0' width='100' bgcolor='#FFC36D' class='inputContent'>";
							returnStr += "<tr><td><img src='com/c_images/cpi/daorgroundcorner1.gif'></td></tr>";
							returnStr += "<tr><td align='center'><b>" + cpiData[indpReturnPa1] + "% p.a.</b><br/><a href='javascript:openInfo(\"CPIInfo\", \"http://bank.hangseng.com/1/2/chi/investment/capital-protected-investment-deposit/currency-linked-capital-protected-investment-deposit"+example+"\");' style='color:#000000;'>潛在回報率</a></td></tr>";
							returnStr += "<tr><td><img src='com/c_images/cpi/daorgroundcorner2.gif'></td></tr>";
						returnStr += "</table>";
			 
				returnStr += "</td>";
			returnStr += "</tr>";			
		}		
		
		
		returnStr += "<tr>";
			returnStr += "<td style='padding-top:10px;padding-bottom:2px;'>";
				returnStr += "<table cellspacing='0' cellpadding='0' width='100' bgcolor='#A6DE71' class='inputContent'>";
					returnStr += "<tr><td><img src='com/c_images/cpi/dagreenroundcorner1.gif'></td></tr>";
					returnStr += "<tr><td align='center'><b>" + cpiData[indmReturnPa] + "% p.a.</b><br/><a href='javascript:openInfo(\"CPIInfo\", \"http://bank.hangseng.com/1/2/chi/investment/capital-protected-investment-deposit/currency-linked-capital-protected-investment-deposit"+example+"\");' style='color:#000000;'>最低回報率</a></td></tr>";
					returnStr += "<tr><td><img src='com/c_images/cpi/greenroundcorner2.gif'></td></tr>";
				returnStr += "</table>";
			returnStr += "</td>";
		returnStr += "</tr>";

	returnStr += "</table>";
	returnStr += "</td>";
	
	// column 4 Return
	returnStr += "<td valign='middle' align='center'>"
	returnStr += "<table cellspacing='0' cellpadding='0' border='0' width='441' class='inputContent'><tr><td class='investTypeDesc' align='center' style='padding-bottom:4px;'><a href='javascript:openInfo(\"CPIInfo\", \"http://bank.hangseng.com/1/2/chi/investment/capital-protected-investment-deposit/currency-linked-capital-protected-investment-deposit"+example+"\");' style='color:#2975C0;'>"+cpiData[indinvTypeDesc]+"</a></td></tr>"; 
		returnStr += "<tr>"; 
			returnStr += "<td width='325' valign='top'>";
				returnStr += "<table cellspacing='0' cellpadding='0' border='0' width='325' class='inputContent'>"; 
				returnStr += "<tr>";
					returnStr += "<td valign='top'>";
						returnStr += "<table cellspacing='0' cellpadding='0' border='0' class='inputContent'>"; 
						if (cpiData[indtenor]!="")
						{
							returnStr += "<tr><td align='left' width='90'>存款投資期:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtenor]+" 個月</td></tr>";
						}
						
						
						if (cpiData[indinvType]=="BUL" || cpiData[indinvType]=="BER") {
							if(cpiData[indinvAbbr] == "BULP" || cpiData[indinvAbbr] == "BERP"){
								returnStr += "<tr><td align='left' valign='top'>觸發水平:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtrigLvl]+"</td></tr>";
							}							
							else if (cpiData[indinvAbbr] == "BULp" || cpiData[indinvAbbr] == "BERp"){
								returnStr += "<tr><td align='left' valign='top'>觸發水平:</td><td style='padding-right:4px;' align='right'>開首匯率之"+cpiData[indtrigLvl]+"%</td></tr>";
							}							
						  	else{
						  		returnStr += "<tr><td align='left' valign='top'>觸發水平:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtrigLvl]+"</td></tr>";
						  	}
						} else if (cpiData[indinvType]=="RNG") {
						  if (cpiData[indinvAbbr]=="RNGR") {
							  returnStr += "<tr><td align='left' valign='top'>開首交易區間:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtradeRngLow1]+" - "+cpiData[indtradeRngUpp1]+"</td></tr>";
							} else {
							  returnStr += "<tr><td align='left' valign='top'>交易區間:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtradeRngLow1]+" - "+cpiData[indtradeRngUpp1]+"</td></tr>";
							}
						}
						
												
						if (cpiData[indtradeRngLow2]!="NaN")
						{
							returnStr += "<tr><td align='left' valign='top'>交易區間 1:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtradeRngLow2]+" - "+cpiData[indtradeRngUpp2]+"</td></tr>";
						}
						if (cpiData[indtradeRngLow3]!="NaN")
						{
							returnStr += "<tr><td align='left' valign='top'>交易區間 2:</td><td style='padding-right:4px;' align='right'>"+cpiData[indtradeRngLow3]+" - "+cpiData[indtradeRngUpp3]+"</td></tr>";
						}
						returnStr += "<tr><td><img src='com/c_images/cpi/spacer.gif' width='90' height='1'/></td><td><img src='com/c_images/cpi/spacer.gif' width='70' height='1'/></td></tr>";
						returnStr += "</table>";
					returnStr += "</td>";
					returnStr += "<td width='10' style='background-image: url(com/c_images/cpi/verticaldottedline.gif); background-repeat: repeat-y; background-position: top left;'><img src='com/c_images/cpi/spacer.gif' width='5' height='1'/></td>"
					returnStr += "<td valign='top'>";
						returnStr += "<table cellspacing='0' cellpadding='0' border='0' class='inputContent'>"; 
						if (cpiData[indspotRate]!="")
						{
							returnStr += "<tr><td>現價:</td><td style='padding-left:4px;' align='right' valign='top'>"+cpiData[indspotRate]+"</td></tr>";
						}
						if (cpiData[indinvType]=="RNG" && cpiData[indwidth]!="NaN")
						{
							var widthDesc="";
							if (cpiData[indccyPair] != "Gold") {
								widthDesc= "(點子 -<br>每一區間)";
							}
							returnStr += "<tr><td>距離*"+widthDesc+":</td><td style='padding-left:4px;' align='right' valign='bottom'>"+cpiData[indwidth]+"</td></tr>";
						}
						if (cpiData[indinvType]!="RNG" && cpiData[indwidth]!="NaN")
						{
							var widthDesc="";
							if (cpiData[indccyPair] != "Gold") {
								widthDesc= "(點子)";
							}
							returnStr += "<tr><td>距離*"+widthDesc+":</td><td style='padding-left:4px;' align='right' valign='top'>"+cpiData[indwidth]+"</td></tr>";
						}
						if (cpiData[indminAmt]!="")
						{
							returnStr += "<tr><td>最低金額:</td><td style='padding-left:4px;' align='right' valign='top'>"+cpiData[indminAmt]+"K</td></tr>";
						}
						returnStr += "<tr><td colspan='2'><img src='com/c_images/cpi/spacer.gif' width='155' height='1'/></td></tr>";
						returnStr += "</table>";
					returnStr += "</td>";
				returnStr += "</tr>";
				returnStr += "</table>";
			returnStr +="</td>"; 
			returnStr += "<td width='112' valign='top'>";
			returnStr += "<table cellspacing='0' cellpadding='0' border='0' width='112' class='inputContent'>";
				returnStr += "<tr>";
					returnStr += "<td class='chartText' align='center'>圖表<br/><a href='getpage2.asp?app=EinvcCpiTrendChart&investcode="+cpiData[indinvCode]+"&startdate="+cpiData[indstartDate]+"&spot="+cpiData[indspotRate]+"'><img src='com/c_images/cpi/btchartfocus.jpg' width='36' height='24' alt='Chart' border='0'/></td>";
					
					if(cpiData[indinvAbbr] == "BULP" || cpiData[indinvAbbr] == "BULp" || cpiData[indinvAbbr] == "BERP" || cpiData[indinvAbbr] == "BERp"){
						returnStr += "<td class='chartText' align='center'>計算機<br/><a href='getpage2.asp?app=EinvcCpiCalculator&investcode="+cpiData[indinvCode]+"&startdate="+cpiData[indstartDate]+"&cpiflag=Y&spot="+cpiData[indspotRate]+"'><img src='com/c_images/cpi/btcalcfocus.jpg' width='36' height='24' alt='Calculator' border='0'/></a></td>";
					}
					else{
						returnStr += "<td class='chartText' align='center'>計算機<br/><a href='getpage2.asp?app=EinvcCpiCalculator&investcode="+cpiData[indinvCode]+"&startdate="+cpiData[indstartDate]+"&cpiflag=N'><img src='com/c_images/cpi/btcalcfocus.jpg' width='36' height='24' alt='Calculator' border='0'/></a></td>";
					}
					
					returnStr += "<td class='chartText' align='center'>條款表<br/><a href='javascript:openInfo(\"CPITerm\", \"http://eba.hangseng.com/eINVCDoc/servlet/EinvcCPIDocGetPDF?investcode="+cpiData[indinvCode]+"&startdate="+cpiData[indstartDate]+"\");'><img src='com/c_images/cpi/bttermsfocus.jpg' width='36' height='24' alt='Terms Sheet' border='0'/></a></td>";
				returnStr += "</tr>";
				returnStr += "<tr><td colspan='3' align='center' style='padding-top:4px;'><a href=\"javascript:subscribeCPI('"+cpiData[indinvCode]+"','"+cpiData[indstartDate]+"');\"><img src='com/c_images/cpi/btsubscribefocus.jpg' width='112' height='31' alt='Subscribe' border='0' /></a></td></tr>";
			returnStr += "</table>";
	returnStr += "</td>";
	
		returnStr += "</tr>"; 
	returnStr += "</table>"; 
	returnStr += "</td>";
	returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
  return returnStr;
}

function printRemarks() {
  var returnStr="";

	returnStr += "<tr><td style='text-align:justify;padding-top:8px;padding-left:8px;'><b><u>風險披露聲明</u></b><br/>";
  returnStr += "本保本投資存款並非亦不應被視為一般定期存款或其代替品。本存款之收益只限於其回報。";
  returnStr += "如市況與投資者之觀點不同，投資者須承受在存款到期日只可取回保證本金及最低回報之風險。未經本行事先同意，投資者不得於到期日前提取此存款。";
  returnStr += "如投資者於到期前提取存款，投資者將失去本金及回報之保證。投資者亦須承受由敘做本存款所產生的任何稅項（如有）。";
  returnStr += "本存款之資料概覽載有有關本存款之更詳盡風險披露聲明，但準投資者應注意所披露之風險未必已爲全部，因此準投資者在作出任何決定前應先考慮本身之情況。";
  returnStr += "準投資者應就其本身需要於存敘做存款前諮詢專業意見。<br/>";
  returnStr += "外滙及黃金價格波動。投資者須明瞭外滙及黃金之價格及其投資之價值可跌可升。本保本投資產品並不涉及實金之交收。</td></tr>";
  returnStr += "<tr><td style='padding-top:8px;padding-left:8px;'>備註:<br/> *就看好/看淡類型之保本投資存款,距離等於現價和觸發水平之差。<br/>&#160;&#160;就區間類型之保本投資存款,距離等於交易區間/開首交易區間之距離。</td></tr>";
  returnStr += "<tr><td style='padding-top:8px;padding-left:8px;'>註：<br/>1. 設立存款後，客戶便不可於到期日前更改、取消或提取該存款。(更改交收指示除外)<br/>";
  returnStr += "2. 保本投資存款的認購約於每個營業日早上10時開始。<br/>";
  returnStr += "3. 以上摘要資料只供閣下參考，請參閱有關資料概覽及條款表以了解該保本投資存款的詳情。<br/>";
  returnStr += "4. 保本投資存款的發行詳情及結果，請參閱e-Banking，「保本投資存款」中的「戶口查詢」。</td></tr>";

  return returnStr;
}

function printDaily()
{
	var arrayData=checkAllFillter();
	var dailycounter = checkDailyFocus();
	
	if (dailycounter >0)
	{
		var returnStr="";

    returnStr += printHeader("Y");

		for (var i=0;i<arrayData.length;i++)
		{
			if (arrayData[i][inddailyFocus].toUpperCase()=="Y")
			{
				dailycounter--;
				
	      returnStr += printCPI(arrayData[i]);

				if ( dailycounter != 0)
				{
					//dotted line
					returnStr += "<tr>";
					returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
					returnStr += "<td align='center' colspan='4'><img src='com/c_images/cpi/dottedlineresult.jpg'/></td>";
					returnStr += "<td width='1' bgcolor='#B3D0F2' style='padding-top:4px;'><img src='com/c_images/cpi/spacer.gif' width='1' height='4'/></td>";
					returnStr += "</tr>";
				}
			}
			
		}
		returnStr += "</table>";
		returnStr += "</td>";
		returnStr += "</tr>";
		returnStr += "<tr><td><img src='com/c_images/cpi/cpiroundcornerfocus.jpg' /></td></tr>";
		returnStr += "<tr><td style='padding-top:8px;'><img src='com/c_images/cpi/doubledottedline.jpg' /></td></tr>";
		returnStr += "</table>";
	
		document.getElementById("dailyFocus").innerHTML = returnStr;
		returnStr="";
	}	
}

function checkAllFillter()
{	var arrayData = getOriginalArray();
	var addArray = new Array();
	
	addArray = dcFilter(arrayData);
	addArray = ccPairFilter(addArray);
	addArray = investTypeFilter(addArray);
	addArray = tenorFilter(addArray);
	addArray = potenialReturnFilter(addArray);
	addArray = minimumReturnFilter(addArray);
	return addArray;
}

function onlyAny( _name , _total)
{
	for (var i=1;i<=_total;i++)
	{		
		itemToSwap = document.all[_name + i];
		if (itemToSwap.value != "ALL")
		{
			itemToSwap.checked=false;
		}
		else if (!itemToSwap.checked) 
		{
			itemToSwap.checked=true;
		}
	}
	changed=true;
}

function noAny( _name , _total)
{
	var checkAny = false;
	var idxAll = 0;

	for (var i=1;i<=_total;i++)
	{		
		itemToSwap = document.all[_name + i];
		if (itemToSwap.value == "ALL")
		{
			idxAll = i
			itemToSwap.checked=false;
		}
	  else {
	  	checkAny = checkAny || itemToSwap.checked
	  }
	}
	
	if (!checkAny) 
	{
		document.all[_name + idxAll].checked=true;
	}

	changed=true;
}


function printSortedArray(_index,_type)
{
	var arrayData=checkAllFillter();
	
	if (_index == 1)
		{
			sort2DArray(arrayData,_index,_type,col_1);
		}
	if (_index == 2)
		{
			sort2DArray(arrayData,_index,_type,col_2);
		}
	if (_index == 4)
		{
			sort2DArray(arrayData,_index,_type,col_4);
		}
	if (_index == 5)
		{
			sort2DArray(arrayData,_index,_type,col_5);
		}
	if (_index == 6)
		{
			sort2DArray(arrayData,_index,_type,col_6);
		}
		
	
	
	var returnStr="";

  returnStr += printHeader("N");
	
	for (var i=0;i<arrayData.length;i++)
	{
	  returnStr += printCPI(arrayData[i]);

		if ( i != arrayData.length-1)
		{
			//dotted line
			returnStr += "<tr>";
			returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
			returnStr += "<td align='center' colspan='4'><img src='com/c_images/cpi/dottedlineresult.jpg'/></td>";
			returnStr += "<td width='1' bgcolor='#B3D0F2' style='padding-top:4px;'><img src='com/c_images/cpi/spacer.gif' width='1' height='4'/></td>";
			returnStr += "</tr>";
		}
		
	}

	if (arrayData.length==0) {
		returnStr += "<tr><td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
		returnStr += "<td style='padding-top:32px;padding-bottom:32px;' colspan='4' width='767' align='center'>" + noArrayText + "</td>";
		returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td></tr>";
	}

	returnStr += "</table>";
	returnStr += "</td>";
	returnStr += "</tr>";
	returnStr += "<tr><td><img src='com/c_images/cpi/searchresultcorner.jpg' /></td></tr>";
	returnStr += printRemarks();
	returnStr += "</table>";
	
	document.getElementById("indexTable").innerHTML = returnStr;
	returnStr="";
	
	if(_index != 0)
	{
		highlightSort(_index);
	}
	
	if (_index == 1)
		{
			if (col_1 == "ASC")
				{
					col_1="DESC";
					col_2="ASC";
					col_4="DESC";
					col_5="DESC";
					col_6="ASC";
				}
			else
				{
					col_1="ASC";
					col_2="ASC";
					col_4="DESC";
					col_5="DESC";
					col_6="ASC";
				}
			
			//alert(col_1);
		}
	if (_index == 2)
		{
			if (col_2 == "ASC")
				{
					col_2="DESC";
					col_1="ASC";
					col_4="DESC";
					col_5="DESC";
					col_6="ASC";
				}
			else
				{
					col_2="ASC";
					col_1="ASC";
					col_4="DESC";
					col_5="DESC";
					col_6="ASC";
				}
			
			//alert(col_2);
		}
	if (_index == 4)
		{
			if (col_4 == "ASC")
				{
					col_4="DESC";
					col_1="ASC";
					col_2="ASC";
					col_5="DESC";
					col_6="ASC";
				}
			else
				{
					col_4="ASC";
					col_1="ASC";
					col_2="ASC";
					col_5="DESC";
					col_6="ASC";
				}
			
			//alert(col_3);
		}
	if (_index == 5)
		{
			if (col_5 == "ASC")
				{
					col_5="DESC";
					col_1="ASC";
					col_2="ASC";
					col_4="DESC";
					col_6="ASC";
				}
			else
				{
					col_5="ASC";
					col_1="ASC";
					col_2="ASC";
					col_4="DESC";
					col_6="ASC";
				}
				
			//alert(col_4);
		}
	if (_index == 6)
		{
			if (col_6 == "ASC")
				{
					col_6="DESC";
					col_1="ASC";
					col_2="ASC";
					col_4="DESC";
					col_5="DESC";
				}
			else
				{
					col_6="ASC";
					col_1="ASC";
					col_2="ASC";
					col_4="DESC";
					col_5="DESC";
				}
				
			//alert(col_4);
		}
		
	
	
}


function printOnlyFilter()
{
	printSortedArray2(checkAllFillter());
}



function checkBoxClicked(_name, _arrayData, _pos)
{
	var filteredCpi_data = new Array();
	var count=0;
	
  	for (var i=0;i<_arrayData.length;i++)
  	{
  		if (_arrayData[i][_pos].indexOf(_name)>=0)
  		{
  			filteredCpi_data.unshift(_arrayData[i]);
 		}
  	}
	

	return filteredCpi_data;
}

function filteredArrayNum(_num, _arrayData, _pos)
{
	var filteredCpi_data = new Array();
		
  	for (var i=0;i<_arrayData.length;i++)
  	{
  		if ( parseInt(_num)  <=  parseInt(_arrayData[i][_pos]))
  		{
  			//alert(_arrayData[i][_pos]);
  			filteredCpi_data.unshift(_arrayData[i]);
 			}
  	}
	

	return filteredCpi_data;
}

function printSortedArray2(_dataArray)
{
	var filteredCpi_data = _dataArray;

	var returnStr="";
  returnStr += printHeader("N");


	if (filteredCpi_data.length > 0)
	{
				
		for (var i=0;i<filteredCpi_data.length;i++)
		{
      returnStr += printCPI(filteredCpi_data[i]);

			if ( i != filteredCpi_data.length-1)
			{
				//dotted line
				returnStr += "<tr>";
				returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
				returnStr += "<td align='center' colspan='4'><img src='com/c_images/cpi/dottedlineresult.jpg'/></td>";
				returnStr += "<td width='1' bgcolor='#B3D0F2' style='padding-top:4px;'><img src='com/c_images/cpi/spacer.gif' width='1' height='4'/></td>";
				returnStr += "</tr>";
			}
			
		}
		returnStr += "</table>";
		returnStr += "</td>";
		returnStr += "</tr>";
		returnStr += "<tr><td><img src='com/c_images/cpi/searchresultcorner.jpg' /></td></tr>";
	  returnStr += printRemarks();
		returnStr += "</table>";
				
		document.getElementById("indexTable").innerHTML = returnStr;
		returnStr="";
	}
	else
	{
		if (getOriginalArray().length==0) {
		  disableFilter();
		  disableAll();
		  disableText();
  	}

		returnStr += "<tr><td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td>";
		returnStr += "<td style='padding-top:32px;padding-bottom:32px;' colspan='4' width='767' align='center'>" + noArrayText + "</td>";
		returnStr += "<td width='1' bgcolor='#B3D0F2'><img src='com/c_images/cpi/spacer.gif' width='1' height='1'/></td></tr>";
		returnStr += "</table>";
		returnStr += "</td></tr>";
		returnStr += "<tr><td><img src='com/c_images/cpi/searchresultcorner.jpg' /></td></tr>";
		returnStr += printRemarks();
		returnStr += "</table><img src='com/c_images/cpi/spacer.gif' width='1' height='100'>";
		document.getElementById("indexTable").innerHTML = returnStr;
	}
}

function disableFilter()
{
	itemToSwap = document.all["sortMenu"];
	itemToSwap.style.display ="none";
}

function dcFilter( _dataArray)
{	
	var addArray = new Array();
	var secArray = new Array();
	var checkChecked = false;
	var dcFilterCookiesVal ="";
	for (var i=1;i<=dcFilterNo;i++)
	{
		itemToSwap = document.all["filter" + i];
			if(itemToSwap.checked==true)
			{
				checkChecked = true;
				if (itemToSwap.value == "ALL")
				{
					secArray = getOriginalArray();
				}
				else
				{
					addArray = checkBoxClicked(itemToSwap.value, getOriginalArray() , 0); // filtering DC , index 0
					for (var j=0;j<addArray.length;j++)
					{
						secArray.unshift(addArray[j]);
					}
					
				}
				
				if (changed)
					{
						writeCookie("dcFilter" + i , itemToSwap.value, cookieLife);
					}
			}
			else
			{
				if (changed)
						writeCookie("dcFilter" + i , "", cookieLife);
			}
	}
	
	if (checkChecked == false)
		secArray=_dataArray;
	return secArray;
}

function ccPairFilter( _dataArray)
{	
	var addArray = new Array();
	var thirdArray = new Array();
	itemToSwapA = document.all["ccpair1"];
	ccpairCheckerA =itemToSwapA.options[itemToSwapA.selectedIndex].value;
	
	itemToSwapB = document.all["ccpair2"];
	ccpairCheckerB =itemToSwapB.options[itemToSwapB.selectedIndex].value;
	
	itemToSwapC = document.all["ccpair3"];
	ccpairCheckerC =itemToSwapC.options[itemToSwapC.selectedIndex].value;
	
	if (ccpairCheckerA != ccpairCheckerB && ccpairCheckerA != ccpairCheckerC && ccpairCheckerB != ccpairCheckerC)
		ccpairCase=1; //output A , B , C
	else if (ccpairCheckerA != ccpairCheckerB && ccpairCheckerB == ccpairCheckerC)
		ccpairCase=2; //output A , B
	else if (ccpairCheckerA == ccpairCheckerB && ccpairCheckerA != ccpairCheckerC && ccpairCheckerB!= ccpairCheckerC)
		ccpairCase=3; //output A , C
	else if (ccpairCheckerA == ccpairCheckerC && ccpairCheckerB != ccpairCheckerC && ccpairCheckerC!="ALL")
		ccpairCase=4; //output B , C
	else if (ccpairCheckerA == ccpairCheckerB && ccpairCheckerA == ccpairCheckerC)
		ccpairCase=5; //output A
	
	if (ccpairCheckerA == "ALL" && ccpairCheckerB != "ALL" && ccpairCheckerC == "ALL")
		ccpairCase=6; //output B
	
	if (ccpairCheckerA == "ALL" && ccpairCheckerB == "ALL" && ccpairCheckerC == "ALL")
		ccpairCase=10; //output ALL
	
	
	//alert(ccpairCase);
	
	switch(ccpairCase)
	{
		case 1:
			  for (var k=1;k<=3;k++)
				{
					itemToSwap = document.all["ccpair" + k];
					var filterValue=itemToSwap.options[itemToSwap.selectedIndex].value;
					addArray = checkBoxClicked(filterValue, _dataArray , 1); // filtering CC Pair , index 1
					for (var l=0;l<addArray.length;l++)
					{
						thirdArray.unshift(addArray[l]);
					}
				}
			  break    
		case 2:
			 for (var k=1;k<=2;k++)
				{
					itemToSwap = document.all["ccpair" + k];
					var filterValue=itemToSwap.options[itemToSwap.selectedIndex].value;
					addArray = checkBoxClicked(filterValue, _dataArray , 1); // filtering CC Pair , index 1
					for (var l=0;l<addArray.length;l++)
					{
						thirdArray.unshift(addArray[l]);
					}
				}
			  break   
		 case 3:
		 	for (var k=1;k<=3;k++)
				{
					if (k!=2)
					{
						itemToSwap = document.all["ccpair" + k];
						var filterValue=itemToSwap.options[itemToSwap.selectedIndex].value;
						addArray = checkBoxClicked(filterValue, _dataArray , 1); // filtering CC Pair , index 1
						for (var l=0;l<addArray.length;l++)
						{
							thirdArray.unshift(addArray[l]);
						}
					}
				}
			  break  
		 case 4:
		 	for (var k=1;k<=3;k++)
				{
					if (k!=1)
					{
						itemToSwap = document.all["ccpair" + k];
						var filterValue=itemToSwap.options[itemToSwap.selectedIndex].value;
						addArray = checkBoxClicked(filterValue, secArray , 1); // filtering CC Pair , index 1
						for (var l=0;l<addArray.length;l++)
						{
							thirdArray.unshift(addArray[l]);
						}
					}
				}
			  break  
		 case 5:
			 	itemToSwap = document.all["ccpair1"];
				var filterValue=itemToSwap.options[itemToSwap.selectedIndex].value;
				addArray = checkBoxClicked(filterValue, _dataArray , 1); // filtering CC Pair , index 1
				for (var l=0;l<addArray.length;l++)
				{
					thirdArray.unshift(addArray[l]);
				}
				break  
		 case 6:
			 	itemToSwap = document.all["ccpair2"];
				var filterValue=itemToSwap.options[itemToSwap.selectedIndex].value;
				addArray = checkBoxClicked(filterValue, _dataArray , 1); // filtering CC Pair , index 1
				for (var l=0;l<addArray.length;l++)
				{
					thirdArray.unshift(addArray[l]);
				}
				break  
		case 10:
			 	thirdArray = _dataArray ;
				break  
		}
		
		if (changed)
			{
				itemToSwapCC1 = document.all["ccpair1"];
				var selectedOne =itemToSwapCC1.selectedIndex;
				writeCookie("ccpair1", selectedOne , cookieLife);
				
				itemToSwapCC2 = document.all["ccpair2"];
				selectedOne =itemToSwapCC2.selectedIndex;
				writeCookie("ccpair2", selectedOne , cookieLife);
				
				itemToSwapCC3 = document.all["ccpair3"];
				selectedOne =itemToSwapCC3.selectedIndex;
				writeCookie("ccpair3", selectedOne , cookieLife);
			}
		
	
	return thirdArray;
}

function investTypeFilter(_dataArray)
{
	var addArray = new Array();
	var fourthArray = new Array();
	var checkChecked = false;
	for (var m=1;m<=invTypeFilterNo;m++)
	{
		itemToSwap = document.all["investType" + m];
			if(itemToSwap.checked==true)
			{
				checkChecked = true;
				if (itemToSwap.value == "ALL")
				{
					fourthArray = _dataArray;
				}
				else
				{
					addArray = checkBoxClicked(itemToSwap.value, _dataArray , 2); // filtering Investment Type , index 2
					for (var n=0;n<addArray.length;n++)
					{
						fourthArray.unshift(addArray[n]);
					}
				}
				if (changed)
					writeCookie("investType" + m , itemToSwap.value, cookieLife);
			}
			else
			{
				if (changed)
						writeCookie("investType" + m , "", cookieLife);
			}
	}
	
	if (checkChecked == false)
		fourthArray = _dataArray;
	
	return fourthArray;
}

function tenorFilter( _dataArray)
{
	var addArray = new Array();
	var secArray = new Array();
	var tensorChecker;
	itemToSwap = document.all["tenor"];
	tensorChecker =itemToSwap.options[itemToSwap.selectedIndex].value;
	//alert(tensorChecker);
	if (tensorChecker == "ALL")	
	{
		secArray = _dataArray;
	}
	else
	{
		addArray = checkBoxClicked(tensorChecker, _dataArray , 6); // filtering Tenor , index 6
		for (var i=0;i<addArray.length;i++)
		{
			secArray.unshift(addArray[i]);
		}
	}
	
	if (changed)
	{
		itemToSwapCC1 = document.all["tenor"];
		var selectedOne =itemToSwapCC1.selectedIndex;
		writeCookie("tenor", selectedOne , cookieLife);
	}

	return secArray;
}


function potenialReturnFilter( _dataArray)
{
	var addArray = new Array();
	var secArray = new Array();
	var prChecker;
	itemToSwap = document.all["potenialReturn"];
	prChecker=itemToSwap.options[itemToSwap.selectedIndex].value;
	//alert(prChecker);
	if (prChecker == "ALL")	
	{
		secArray = _dataArray;
	}
	else
	{
		addArray = filteredArrayNum(prChecker, _dataArray , 4); // filtering Potential Return, index 4
		for (var i=0;i<addArray.length;i++)
		{
			secArray.unshift(addArray[i]);
		}
	}

	if (changed)
	{
		itemToSwapCC1 = document.all["potenialReturn"];
		var selectedOne =itemToSwapCC1.selectedIndex;
		writeCookie("potenialReturn", selectedOne , cookieLife);
	}
	
	return secArray;
}

function minimumReturnFilter( _dataArray)
{
	var addArray = new Array();
	var secArray = new Array();
	var mrChecker;
	itemToSwap = document.all["minimumReturn"];
	mrChecker=itemToSwap.options[itemToSwap.selectedIndex].value;
	//alert(prChecker);
	if (mrChecker == "ALL")	
	{
		secArray = _dataArray;
	}
	else
	{
		addArray = filteredArrayNum(mrChecker, _dataArray , 5); // filtering minimum Return, index 5
		for (var i=0;i<addArray.length;i++)
		{
			secArray.unshift(addArray[i]);
		}
	}
	
	if (changed)
	{
		itemToSwapCC1 = document.all["minimumReturn"];
		var selectedOne =itemToSwapCC1.selectedIndex;
		writeCookie("minimumReturn", selectedOne , cookieLife);
	}

	return secArray;
}

function highlightSort(_index)
{
	unhighlightAll();
	var hightlight= eval("col_"+_index);
	
	if (hightlight=="ASC")
	{
		itemToSwap = document.all["sortAsc_" + _index];
		itemToSwap.src="com/c_images/cpi/btaccessendingon.jpg"
		itemToSwap2 = document.all["sortText_" + _index];
		itemToSwap2.className="sortMenuBoxHightlight";
	}
	else
	{
		itemToSwap = document.all["sortDesc_" + _index];
		itemToSwap.src="com/c_images/cpi/btdecesendingon.jpg"
		itemToSwap2 = document.all["sortText_" + _index];
		itemToSwap2.className="sortMenuBoxHightlight";
	}
	
}

function unhighlightAll()
{
	var _sortIndex=new Array(1,2,4,5,6);
	
	for (var i=0;i<_sortIndex.length;i++)
	{
		//alert("sortAsc_" + _sortIndex[i]);
		itemToSwap = document.all["sortAsc_" + _sortIndex[i]];
		itemToSwap.src="com/c_images/cpi/btaccessendingoff.jpg";
	}
	
	for (var i=0;i<_sortIndex.length;i++)
	{
		itemToSwap = document.all["sortDesc_" + _sortIndex[i]];
		itemToSwap.src="com/c_images/cpi/btdecesendingoff.jpg";
	}
	
	for (var i=0;i<_sortIndex.length;i++)
	{
		itemToSwap = document.all["sortText_" + _sortIndex[i]];
		itemToSwap.className="sortMenuBoxDis";
	}
}

function checkDailyFocus()
{
	var arrayData=checkAllFillter();
	var dailyFocus=0;
	for (var i=0;i<arrayData.length;i++)
	{
		if (arrayData[i][inddailyFocus].toUpperCase()=="Y")
			dailyFocus++;
	}
	
	return dailyFocus;
}

function closeAndOpen(varID)
{
 	var itemToSwap = document.all[varID];
        //alert(itemToSwap.style.display);
        if(itemToSwap.style.display =="inline") 
        {
        	itemToSwap.style.display="none";
        	var itemToSwap2 = document.all[varID + "_pict"];
        	itemToSwap2.src="com/c_images/cpi/btplus.jpg";
        }
        else 
        {
		itemToSwap.style.display="inline";
		var itemToSwap2 = document.all[varID + "_pict"];
        	itemToSwap2.src="com/c_images/cpi/btn.jpg";
	}
} 

function onLoadCookie()
{
	var needDCCheckAll = true;
	var needTOICheckALL = true;
//	alert(document.cookie);
	//alert(readCookie("dcFilter2"));
	//alert(readCookie("dcFilter3"));
	//alert(readCookie("ccpair1"));
	
	if (readCookie("dcFilter1") != "")
		{
			itemToSwap = document.all["filter1"];
			itemToSwap.checked="true";
			needDCCheckAll =false;
		}	
	if (readCookie("dcFilter2") != "")
		{
			itemToSwap = document.all["filter2"];
			itemToSwap.checked="true";
			needDCCheckAll =false;
		}	
	if (readCookie("dcFilter3") != "")
		{
			itemToSwap = document.all["filter3"];
			itemToSwap.checked="true";
			needDCCheckAll =false;
		}	
	if (readCookie("dcFilter4") != "" || needDCCheckAll ==true)
		{
			itemToSwap = document.all["filter4"];
			itemToSwap.checked="true";
		}
	
	
	if (readCookie("investType1") != "")
		{
			itemToSwap = document.all["investType1"];
			itemToSwap.checked="true";
			needTOICheckALL=false;
		}	
	if (readCookie("investType2") != "")
		{
			itemToSwap = document.all["investType2"];
			itemToSwap.checked="true";
			needTOICheckALL=false;
		}
	if (readCookie("investType3") != "")
		{
			itemToSwap = document.all["investType3"];
			itemToSwap.checked="true";
			needTOICheckALL=false;
		}
	if (readCookie("investType4") != "" || needTOICheckALL == true)
		{
			itemToSwap = document.all["investType4"];
			itemToSwap.checked="true";
		}
	
	if (readCookie("ccpair1") != "")
		{
			var selectedoption=0;
			selectedoption = readCookie("ccpair1");
			itemToSwap = document.all["ccpair1"];
			itemToSwap.options[selectedoption].selected=true;
		}
	if (readCookie("ccpair2") != "")
		{
			var selectedoption=0;
			selectedoption = readCookie("ccpair2");
			itemToSwap = document.all["ccpair2"];
			itemToSwap.options[selectedoption].selected=true;
		}
	if (readCookie("ccpair3") != "")
		{
			var selectedoption=0;
			selectedoption = readCookie("ccpair3");
			itemToSwap = document.all["ccpair3"];
			itemToSwap.options[selectedoption].selected=true;
		}
	if (readCookie("tenor") != "")
		{
			var selectedoption=0;
			selectedoption = readCookie("tenor");
			itemToSwap = document.all["tenor"];
			itemToSwap.options[selectedoption].selected=true;
		}
	if (readCookie("potenialReturn") != "")
		{
			var selectedoption=0;
			selectedoption = readCookie("potenialReturn");
			itemToSwap = document.all["potenialReturn"];
			itemToSwap.options[selectedoption].selected=true;
		}
	if (readCookie("minimumReturn") != "")
		{
			var selectedoption=0;
			selectedoption = readCookie("minimumReturn");
			itemToSwap = document.all["minimumReturn"];
			itemToSwap.options[selectedoption].selected=true;
		}
	
}

function readCookie(name)
{
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0)
  { 
    offset = document.cookie.indexOf(search);
    if (offset != -1)
    { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}

function writeCookie(name, value, hours)
{
  var expire = "";
  if(hours != null)
  {
    expire = new Date((new Date()).getTime() + hours * 3600000);
    expire = "; expires=" + expire.toGMTString();
  }
  document.cookie = name + "=" + escape(value) + expire;
}

function disableAll()
{
	var itemToSwap ;
	itemToSwap = document.all["filter1"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["filter2"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["filter3"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["filter4"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["investType1"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["investType2"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["investType3"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["investType4"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["ccpair1"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["ccpair2"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["ccpair3"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["tenor"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["potenialReturn"];
	itemToSwap.disabled=true;
	itemToSwap = document.all["minimumReturn"];
	itemToSwap.disabled=true;	
}

function disableText()
{
	var totalDim = 12;
	for (var i=1; i<=totalDim;i++)
	{
		itemToSwap = document.all["disf" + i];	
		itemToSwap.className="disabledText";
	}	
}
