var fieldNumber;
var itemMap = new Array(1,2,3);
var itemTbl;

function isBlank(field){
	var re = /^[ ]*$/i
	if(field.value.match(re)){
		return true;
	}	
	return false;
}

function winopen(url,stuff,morestuff) {
	window.open(url,stuff,morestuff).focus();
}

function checkItems(){
	
	for(x=0;x<tableSize;x++){
		var desc = eval("document.form1.description"+itemMap[x]);
		if(!isBlank(desc)){
				return checkTable();
		}
	}
	alert("Please enter at least one item to be moved");
	return false;
}

function checkTable(){
	for(x=0;x<tableSize;x++){
		var desc = eval("document.form1.description"+itemMap[x]);
		var he = eval("document.form1.height"+itemMap[x]);
		var wi  = eval("document.form1.width"+itemMap[x]);
		var le = eval("document.form1.length"+itemMap[x]);
		var we = eval("document.form1.weight"+itemMap[x]);				
		if(isBlank(desc)){
			if(!isBlank(he)){
				alert("You have entered a height value without entering a description for the item.  Please enter a description.");
				he.focus();
				return false;
			}
			if(!isBlank(wi)){
				alert("You have entered a width value without entering a description for the item.  Please enter a description.");
				wi.focus();
				return false;
			}
			if(!isBlank(le)){
				alert("You have entered a length value without entering a description for the item.  Please enter a description.");
				le.focus();
				return false;
			}
			if(!isBlank(we)){
				alert("You have entered a weight value without entering a description for the item.  Please enter a description.");
				we.focus();
				return false;
			}
		}else if(!isValidFormat(he,'Height',desc) || !isValidFormat(wi,'Width',desc) || !isValidFormat(le,'Length',desc) ||
				!isValidFormat(we,'Weight',desc)){
				return false;
		}
	}
}				
		
function isValidFormat(field, fieldname, description){
  len=field.value.length
   digits="0123456789"
   for(i=0; i<len; i++){
     if (digits.indexOf(field.value.charAt(i))<0){
	   alert("Invalid " + fieldname + " for " + description.value + ". Please enter only numbers in this field.");
	   field.focus();
       return false;
	 }
   }
   return true;
}




function addNewRow(onLoad,base)
{
	var tempRow;
	var tempCell;
	
	var lastArrayIndex = tableSize - 1;
	if(tableSize == 0)
	{
		this.fieldNumber = 1;
	}else{
		this.fieldNumber = itemMap[lastArrayIndex]+1;
	}
	itemMap[tableSize]=this.fieldNumber;
	tableSize = tableSize +1;

	tempRow = itemTbl.insertRow(itemTbl.rows.length);
	tempRow.align = "center";
	
	tempCell = tempRow.insertCell(0);
	tempCell.id = 'Col1';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4';
	tempCell.innerHTML= "<input name=\"reassembly"+fieldNumber+"\" type=\"hidden\">"+
			"<input name=\"disassembly"+fieldNumber+"\" type=\"hidden\">"+
			"<input name=\"imageLink"+fieldNumber+"\" type=\"hidden\">"+"<input type=\"text\" name=\"description"+fieldNumber+"\" style=\"width:150px\" maxlength=32>";

	tempCell = tempRow.insertCell(1);
	tempCell.id = 'Col2';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4';
	tempCell.innerHTML="<select name=\"quantity"+fieldNumber+"\"><option>1</option></select>";
	var abc="<select name=\"quantity"+fieldNumber+"\">";
	for(k=1;k<=99;k++){
			abc=abc+"<option>" + k + "</option>";
	}
	tempCell.innerHTML=abc+"</select>";
	numItems=numItems+1;
	//alert "hi";
	//alert("The tempCell innerHTML is:" + tempCell.innerHTML);


	tempCell = tempRow.insertCell(2);
	tempCell.id = 'Col3';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4';
	tempCell.innerHTML="<input name=\"height"+fieldNumber+"\" type=\"text\" size=3 maxlength=3>";

	tempCell = tempRow.insertCell(3);
	tempCell.id = 'Col4';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4';
	tempCell.innerHTML="<input name=\"width"+fieldNumber+"\" type=\"text\" size=3 maxlength=3>";
	
	tempCell = tempRow.insertCell(4);
	tempCell.id = 'Col5';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4';
	tempCell.innerHTML="	<input name=\"length"+fieldNumber+"\" type=\"text\" size=3 maxlength=3>";
	
	tempCell = tempRow.insertCell(5);
	tempCell.id = 'Col6';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4';
	tempCell.innerHTML="<input name=\"weight"+fieldNumber+"\" type=\"text\" size=3 maxlength=3>";

	tempCell = tempRow.insertCell(6);
	tempCell.id = 'Col7';
	tempCell.noWrap = true;
	tempCell.className = 'Box8-4-6';
	tempCell.innerHTML="<input type=\"button\" value=\"Options\" onClick=\"showMoreOptions("+fieldNumber+",'" + base + "')\">";
}

function calculateNumItems(){
	var temp;
	numItems = 0;
	var re = /^[ ]*$/i
	for(i=0;i<tableSize;i++){
		temp = eval ("window.document.form1.description" + itemMap[i] + ".value");
		if(!temp.match(re)){
			numItems = numItems + 1;
		}	
	}
}

function pageLoad()
{
	itemTbl = document.getElementById("itemTable");
	if(itemTbl != null){
	for(i=0;i<tableSize;i++)
	{
		itemMap[i]=i+1;
	}
	}
}

function showMoreOptions( rowNum, base )
{
	fieldNumber = rowNum;
	this.winAddItem = window.open( base, "AddItem", 'width=450,height=250');
	winAddItem.opener = self;	
}

function callToSetValues(){
	//eval("winAddItem.setAddItemValues("+fieldNumber+",document.form1.description"+
	 //  fieldNumber+".value,document.form1.imageLink"+fieldNumber+".value,document.form1.height"+
	 //  fieldNumber+".value,document.form1.width"+fieldNumber+".value,document.form1.length"+
	 //  fieldNumber+".value, document.form1.weight"+fieldNumber+".value, document.form1.disassembly"+
	 //  fieldNumber+".value, document.form1.reassembly"+fieldNumber+".value,\""+addEdit+"\")");
	eval("winAddItem.setAddItemValues("+fieldNumber+",document.form1.imageLink"+
		fieldNumber+", document.form1.disassembly"+
	  fieldNumber+", document.form1.reassembly"+fieldNumber+")");
}

function deleteButtonClicked(fieldNum)
{
	rowNum=getRowNum(fieldNum);
	if(rowNum!=-1){
		deleteRow(rowNum);
	}
}

function getRowNum(value)
{
	var returnValue=-1;
	for(var i=0;i<=tableSize;i++)
	{
		if(itemMap[i]==value){	
			returnValue=i+1;
			return returnValue;
		}
	}	
	return returnValue;
}

function deleteRow(rowSelected)
{
	itemTbl.getElementsByTagName("tr").item(rowSelected).bgColor="#ffffff"
	//itemTbl.deleteRow(itemMap[rowSelected-1]);
	document.body.style.cursor='default'
	itemTbl.deleteRow(rowSelected);
	for(var i=rowSelected-1;i<itemMap.length;i++){
			itemMap[i]=itemMap[i+1];
	}
	itemMap.pop();
	printArray();
	rowSelected = 0;
	numItems=numItems-1;
	//window.document.form1.numItems.value=numItems;
	tableSize=tableSize-1;
}

function printArray(){
	var arrayStr="";
	for(var i=0;i<itemMap.length;i++){
		arrayStr=arrayStr+itemMap[i]+",";
	}
}
