var arrayListLength;
var showTotal = 32;
var totalPage;
var tableName = "showElementTable";
var tablePageName = "showPageTable";
var tablePageNameLow = "showPageTableLow";
var arrayList = new Array();
var clickElement;
window.onload =	function onloadAction(){
	//setIdOnClick();
	show(1);
}
function setIdOnClick()  
{  
  	document.getElementById("trbutton").onclick = function trbuttonOnClick(e){  
	  		e = window.event || e;
		  	var srcElement = e.srcElement || e.target;
		  	try
			{
				clickElementId= srcElement.id;
			}
			catch(err)
			{
			}
		  	clickElement = srcElement.id;
		  	show(1);
	  }   
}  
function show(getPage)
{
	var textValue;
	var elementValue = '';
	switch(clickElement)
	{ 
		
		default: 
		elementValue = 'Singapore,65;Singapore-mobile,65;Malaysia-Kuala Lumpur,60;Malaysia,60;Australia,61;Australia-Canberra,61;Australia-Shared Cost,61;Australia-Sydney,61; Belgium,32;Canada,1;Canada-Mobile,1;China,86;China-Mobile,86;Denmark,45;France,33;Germany,49;Hongkong,852;Hongkong-Mobile ,852;Ireland,353;Italy,39;Netherlands,31;New Zealand,64;Norway,47;Spain,34;Spain-Barcelona,34;Spain-Madrid,34;Sweden,46;Sweden-Stockhlom,46;Taiwan,886;United kingdom,44;USA(48 states only),1;USA-Mobile (48 states only),1';
	}
	arrayList= getArrayList(elementValue,';',',');
	if(arrayList[0].length!=2)
	{
		setErrorInfo(arrayList[0]);
	}
	else
	{
		arrayListLength = arrayList.length;
		if((arrayListLength!=0)&&((arrayListLength%showTotal)==0))
		{
			totalPage = parseInt(arrayListLength/showTotal);
		}
		else
		{
			totalPage = parseInt((arrayListLength/showTotal)+1);
		}
		setInfo(getPage);
	}
}

function setErrorInfo(alertValue)
{
	clearRow(tableName,1,0);
	var reportTableRows = document.getElementById(tableName).rows.length;
	var tableRow=document.getElementById(tableName).insertRow(reportTableRows);
	var cell1=tableRow.insertCell(0);
	cell1.colSpan=2;
	cell1.height="30";
	cell1.align="center";
	cell1.innerHTML=alertValue;
}
function setInfo(getPage)
{	
	clearRow(tableName,1,0);
	var currentPage=getPage;
	var startElement = (currentPage-1)*showTotal;
	var endElement = currentPage*showTotal;
	if(endElement>arrayListLength)
	{
		endElement = arrayListLength;
	}	
	for(var ElementSed = startElement;ElementSed<endElement;ElementSed++)
	{
		var arrayList_jsArrayValue = arrayList[ElementSed];
		insRow(arrayList_jsArrayValue,tableName);
	}
	insPageRow(getPage);
}
function insPageRow(getPage)
{
	clearRow(tablePageName,0,0,1);
	clearRow(tablePageNameLow,0,0,1);
	insPageRowTable(tablePageName,getPage);
	insPageRowTable(tablePageNameLow,getPage);
}
function insPageRowTable(tablePage,nowPage)
{
	var tableRow=document.getElementById(tablePage).insertRow(0);
	var cell1=tableRow.insertCell(0);
	var cell2=tableRow.insertCell(1);
	var cell3=tableRow.insertCell(2);
	var cell4=tableRow.insertCell(3);
	var cell5=tableRow.insertCell(4);
	cell1.width="72%";
	cell1.height="30";
	cell1.align="left";
	var cell1Text = "Records:"+arrayListLength+"-Page "+nowPage+" of "+totalPage;
	cell1.innerHTML=cell1Text;
	
	cell2.width="7%";
	cell2.height="30";
	cell2.align="left";
	var cell2Text;
	if(nowPage==1)
	{
		cell2Text="First";
	}
	else
	{
	 	cell2Text="<div onclick='setInfo(1)' class='rate2'>First</div>";
	}
	cell2.innerHTML=cell2Text;
	
	cell3.width="7%";
	cell3.height="30";
	cell3.align="left";
	var cell3Text;
	if(nowPage==1)
	{
		cell3Text="Prev";
	}
	else
	{
		var tempSum = parseInt(parseInt(nowPage)-1);
	 	cell3Text="<div onclick=setInfo('"+tempSum+"') class='rate2'>Prev</div>";
	}
	cell3.innerHTML=cell3Text;
	
	cell4.width="7%";
	cell4.height="30";
	cell4.align="left";
	var cell4Text;
	if(nowPage==totalPage)
	{
		cell4Text="Next";
	}
	else
	{
		var tempSum = parseInt(parseInt(nowPage)+1);
	 	cell4Text="<div onclick=setInfo('"+tempSum+"')  class='rate2'>Next</div>";
	}
	cell4.innerHTML=cell4Text;
	
	cell5.width="7%";
	cell5.height="30";
	cell5.align="left";
	var cell5Text;
	if(nowPage==totalPage)
	{
		cell5Text="Last";
	}
	else
	{
	 	cell5Text="<div onclick=setInfo('"+totalPage+"')  class='rate2'>Last</div>";
	}
	cell5.innerHTML=cell5Text;
	
}

function insRow(arrayList_jsArrayValue,tableName)
{
	var reportTableRows = document.getElementById(tableName).rows.length;
	var tableRow=document.getElementById(tableName).insertRow(reportTableRows);
	var cell1=tableRow.insertCell(0);
	var cell2=tableRow.insertCell(1);
	cell1.bgcolor="#f6f6f6"
	cell1.align="left";
	cell1.innerHTML=arrayList_jsArrayValue[0];
        cell1.width="50%";
	
	cell2.bgcolor="#f6f6f6"
	cell2.align="left";
	cell2.innerHTML=arrayList_jsArrayValue[1];
        cell2.width="50%";
	
}

function getArrayList(string2ArrayList,splitElement1,splitElement2)
{
	var arrayElementList = string2ArrayList.split(splitElement1);
	for(var i=0;i<arrayElementList.length;i++)
	{
		arrayElementList[i] = arrayElementList[i].split(splitElement2);
	}
	return arrayElementList;
}

//delete designate rows of the table
function clearRow(tableName,deleteElement,startRows,endRows)
{
	if(isNULL(endRows))
	{
		endRows = document.getElementById(tableName).rows.length - 1;
	}
	var tb = document.getElementById(tableName);
	for(var deleteElementValue=startRows;deleteElementValue<endRows;deleteElementValue++)
	{
		tb.deleteRow(deleteElement);
	}
}
//judge obj whether or not null
function isNULL(obj)
{
 	return obj==null || typeof(obj)=='undefine';
}