
var colTables;






function GetTBody(oTable, sRateID){
	for(i = 0; i < oTable.tBodies.length; i++){
		if(oTable.tBodies[i].id==sRateID){
			return oTable.tBodies[i]
		}
	}
}

 
function LoopThroughTables(oDocument){

	var s = '';
	colTables = oDocument.getElementsByTagName("TABLE");

	for(i = 0; i < colTables.length; i++){
		s = s + 'Table:' + i + '/n';
		s = s + ReportTableStructure(colTables[i]) + '\n\n';
	}
	alert(s);

}


function ReportTableStructure(oTable){

	var s = '';
	s = s + 'TABLE: ' + oTable.id + ', ' + oTable.name + '\n';
	if(oTable){	
		s = s + oTable.rows.length + ': ';
		for (var x=0; x < oTable.rows.length; x++) {
			//s = s + oTable.rows[x].cells.length + ',';
			for (var j=0; j < oTable.rows[x].cells.length; j++) {
				//oDocument.all.oTable.rows[x].cells[j].innerText = count;
				s = s + '[' + oTable.rows[x].cells[j].id + ']';	//=' + oTable.rows[x].cells[j].innerText + ']\n';
			}
		}
		s = s + '\n';
	}
    return s;
}




function AddPercentage(iNumber_, iPercentage_){

	var bCanProceed = true;

	if(isNaN(iNumber_)==true){
		bCanProceed = false;
		alert('Cannot add percentage to this number (' + iNumber_ + ').');
	}

	if(isNaN(iPercentage_)==true){
		bCanProceed = false;
		alert('Please specify a valid percentage.');
	}
	
	if(bCanProceed==true){
		var iPercentage = Number(iPercentage_);
		var iNumber = Number(iNumber_);	
		iPercentage = (iPercentage * 0.01) + 1	
		iNumber = (iNumber * iPercentage);
		iNumber = RoundNumberTo2DecPlaces(iNumber);
		return iNumber;
	}	
}

function RoundNumberTo1DecPlaces(iDecimal_){
	var iDecimal = Number(iDecimal_);
	iDecimal = (iDecimal * 10);
	iDecimal = Math.round(iDecimal);
	iDecimal = (iDecimal * 0.1);
	var sDecimal = new String(iDecimal);
	if(sDecimal.indexOf(".") > 0){
		sDecimal = iDecimal + '0';
	}
	var i = sDecimal.indexOf(".");
	if(i > 0){
		sDecimal = sDecimal.slice(0, i+2);
	}
	return sDecimal
}


function RoundNumberTo2DecPlaces(iDecimal_){
	var iDecimal = Number(iDecimal_);
	var sDebug = 'RoundNumberTo2DecPlaces\n';
			sDebug = sDebug + iDecimal + '\n';
		
	iDecimal = (iDecimal * 100);
			sDebug = sDebug + iDecimal + '\n';

	iDecimal = Math.round(iDecimal);
			sDebug = sDebug + iDecimal + '\n';

	iDecimal = (iDecimal * 0.01);
			sDebug = sDebug + iDecimal + '\n';

	var sDecimal = new String(iDecimal);
	if(sDecimal.indexOf(".") > 0){
		sDecimal = iDecimal + '0';
		sDebug = sDebug + iDecimal + '\n';

	}
	var i = sDecimal.indexOf(".");
	if(i > 0){
		sDecimal = sDecimal.slice(0, i+3);
	}
	//alert(sDebug);
	return sDecimal
}


function RoundNumberTo3DecPlaces(iDecimal_){
	var iDecimal = Number(iDecimal_);
	var sDebug = 'RoundNumberTo3DecPlaces\n';
		sDebug = sDebug + iDecimal + '\n';

	iDecimal = (iDecimal * 1000);
		sDebug = sDebug + iDecimal + '\n';
	
	iDecimal = Math.round(iDecimal);
		sDebug = sDebug + iDecimal + '\n';
			
	iDecimal = (iDecimal * 0.001);
		sDebug = sDebug + iDecimal + '\n';
			
	var sDecimal = new String(iDecimal);
	if(sDecimal.indexOf(".") > 0){
		sDecimal = iDecimal + '0';
			sDebug = sDebug + iDecimal + '\n';
	}
	var i = sDecimal.indexOf(".");
	if(i > 0){
		sDecimal = sDecimal.slice(0, i+4);
	}
	//alert(sDebug);
	return sDecimal
}



function Add2Numbers(i1_, i2_){
	//alert(i1_ + ' + ' +  i2_);
	var i1 = Number(i1_);
	var i2 = Number(i2_);
	var iTotal = Number(i1 + i2);
	iTotal = RoundNumberTo2DecPlaces(iTotal);
	//alert(iTotal);
	return iTotal
}


function RoundToPoint5(iDecimal_){
	var sDecimal = new String(iDecimal_);
	var sBeforePoint = new String('');
	var sAfterPoint = new String('');
	var i = sDecimal.indexOf(".");
	if(i > 0){		
		sBeforePoint = sDecimal.slice(0, i);		
		sAfterPoint = sDecimal.slice(i+1, sDecimal.length);
		var iTempBeforePoint = new Number(sBeforePoint);
		var iTempAfterPoint = new Number(sAfterPoint);
		if(iTempAfterPoint == 0){
			sAfterPoint = '0'
		}
		if(iTempAfterPoint > 5){
			sAfterPoint = '1'
		}
		if((iTempAfterPoint < 5) && (iTempAfterPoint > 0)){
			sAfterPoint = '0.5'
		}
		if(iTempAfterPoint == 5){
			sAfterPoint = '5'
		}
	}else{
		sAfterPoint = '0'
		sBeforePoint = sDecimal
	}
	var iBeforePoint = new Number(sBeforePoint);
	var iAfterPoint = new Number(sAfterPoint);
	iDecimal = iBeforePoint + iAfterPoint

	return iDecimal
}


function ValidateKG(oTextInput){
	var v = oTextInput.value;
	var x = RoundNumberTo1DecPlaces(v);
	//var x = v;
	if(isNaN(x)==true){
		x = "";
	}else{
		x = RoundToPoint5(x);
	}
	oTextInput.value = x;
	ChargeableWeight();
}


function ValidateM3(oTextInput){
	var v = oTextInput.value;
	var x = RoundNumberTo3DecPlaces(v);
	if(isNaN(x)==true){
		x = ""	
	}
	oTextInput.value = x;
	ChargeableWeight();
}

function ChargeableWeight(){
	var frm = document.frmLandedCostsStepOne;
	var sM3 = frm.iM3.value;
	var sKg = frm.iKg.value;

	if((sM3=='')||(isNaN(sM3)==true)){
		sM3 = 0
	}
	if((sKg=='')||(isNaN(sKg)==true)){
		sKg = 0
	}
	frm.iM3.value = sM3;
	frm.iKg.value = sKg;

	var iM3 = new Number(sM3);
	var iKg = new Number(sKg);
	var iM3ChargeableWeight = new Number(iM3 * 167);

	if(iM3ChargeableWeight > iKg){
		frm.iChargeableWeight.value = RoundToPoint5(iM3ChargeableWeight);	
	}else{
		frm.iChargeableWeight.value = iKg;	
	}
}








function UseThisBuyRate(sRateID){
	//alert(sRateID);
	
	var oIFrmBuyRates;
	var oObj;
	if(document){
		//alert('document.parentWindow.location: ' + document.parentWindow.location);
		oIFrmBuyRates = document.parentWindow.frameElement;
		if(oIFrmBuyRates){
			//alert('oIFrmBuyRates.parentElement.tagName: ' + oIFrmBuyRates.parentElement.tagName);
			oObj = oIFrmBuyRates.parentElement;
			if(oObj){
				oObj = oObj.parentElement
				//alert('oObj.tagName: ' + oObj.tagName);
				
				if(oObj){
					oObj = oObj.parentElement
					//alert('oObj.tagName: ' + oObj.tagName);
					
					if(oObj){
						oObj = oObj.parentElement
						//alert('oObj.tagName: ' + oObj.tagName);


						if(oObj){
							oObj = oObj.parentElement
							//alert('oObj.tagName: ' + oObj.tagName);
					
							if(oObj){
								var oHTML = oObj.parentElement
								//alert('a oHTML.tagName: ' + oHTML.tagName);
								colTables = oHTML.getElementsByTagName("TABLE");
								//alert(colTables.length);			
								
								var tblSelectBuyRate = document.getElementById('tblSelectBuyRate');
								var oTBody = GetTBody(tblSelectBuyRate, sRateID);
								//alert(oTBody.rows.length);
								
								
								var otblAddSellRate = oHTML.all.item('tblAddSellRate');
								var ofrmAddSellRate = oHTML.all.item('frmAddNewSellRate');
								
								
								
								var s = '';

								for(c = 0; c < oTBody.rows[0].cells.length; c++){
									s = s + oTBody.rows[0].cells[c].id + ', ';

									if(oTBody.rows[0].cells[c].id=='Carrier'){
										ofrmAddSellRate.sCarrier_0.value = oTBody.rows[0].cells[c].innerText;
									}
									if(oTBody.rows[0].cells[c].id=='Origin'){
										ofrmAddSellRate.sOrigin_0.value = oTBody.rows[0].cells[c].innerText;
									}
									if(oTBody.rows[0].cells[c].id=='Departure'){
										ofrmAddSellRate.sDeparture_0.value = oTBody.rows[0].cells[c].innerText;
									}
									if(oTBody.rows[0].cells[c].id=='Destination'){
										ofrmAddSellRate.sDestination_0.value = oTBody.rows[0].cells[c].innerText;
									}
									if(oTBody.rows[0].cells[c].id=='Currency'){
										ofrmAddSellRate.sCurrency_0.value = oTBody.rows[0].cells[c].innerText;
									}
									if(oTBody.rows[0].cells[c].id=='Minimum'){
										ofrmAddSellRate.iMinimum_0.value = oTBody.rows[0].cells[c].innerText;
									}
									
									
									var oWBInput;
									//for(iWBID = 1; 10; iWBID++){									
										//if(oTBody.rows[0].cells[c].id=='WB' + iWBID){
											//oWBInput = eval('ofrmAddSellRate.iWB_' + iWBID + '_0')
											//oWBInput.value = oTBody.rows[0].cells[c].innerText;
											//oWBInput.value = 'x';
											//ofrmAddSellRate.iWB_1_0.value = '6';
										//}
									//}
									
								}
								alert('foo ' + s);
						
								
								
								//ofrmAddSellRate.sClientCode
								//ofrmAddSellRate.iClientID
								//ofrmAddSellRate.sOrigin_0
								//ofrmAddSellRate.sDeparture_0
								//ofrmAddSellRate.sDestination_0
								//ofrmAddSellRate.sCurrency_0
								//ofrmAddSellRate.iMinimum_0
								//ofrmAddSellRate.iWB_1_0
								//ofrmAddSellRate.iWB_2_0
								//ofrmAddSellRate.iWB_3_0
								//ofrmAddSellRate.iWB_4_0
								//ofrmAddSellRate.iWB_5_0
								//ofrmAddSellRate.iWB_6_0
								//ofrmAddSellRate.iWB_7_0
								//ofrmAddSellRate.iWB_8_0
								//ofrmAddSellRate.iSECFee_0
								//ofrmAddSellRate.iSECpKG_0
								//ofrmAddSellRate.iFSCFee_0
								//ofrmAddSellRate.iFSCpKG_0
								//ofrmAddSellRate.sEffectiveFrom_0
								//ofrmAddSellRate.sExpires_0
								//ofrmAddSellRate.sDOMAO_Min_0
								//ofrmAddSellRate.iDOMAO_1_0
								//ofrmAddSellRate.iDOMAO_2_0
								//ofrmAddSellRate.iDOMAO_3_0
								//ofrmAddSellRate.iDOMAO_4_0
								//ofrmAddSellRate.iDOMAO_5_0
								//ofrmAddSellRate.iDOMAO_6_0
								//ofrmAddSellRate.iDOMAO_7_0
								//ofrmAddSellRate.iDOMAO_8_0
								//ofrmAddSellRate.sDOMAOComments_0
								//ofrmAddSellRate.iTotal_1_0
								//ofrmAddSellRate.iTotal_2_0
								//ofrmAddSellRate.iTotal_3_0
								//ofrmAddSellRate.iTotal_4_0
								//ofrmAddSellRate.iTotal_5_0
								//ofrmAddSellRate.iTotal_6_0
								//ofrmAddSellRate.iTotal_7_0
								//ofrmAddSellRate.iTotal_8_0
								//ofrmAddSellRate.submit
								//ofrmAddSellRate.sCASS_Min_0
								//ofrmAddSellRate.sCASS_1_0
								//ofrmAddSellRate.sCASS_2_0
								//ofrmAddSellRate.sCASS_3_0
								//ofrmAddSellRate.sCASS_4_0
								//ofrmAddSellRate.sCASS_5_0
								//ofrmAddSellRate.sCASS_6_0
								//ofrmAddSellRate.sCASS_7_0
								//ofrmAddSellRate.sCASS_8_0
								//ofrmAddSellRate.sComments_0

							}
						}
					}
				}
			}
		}
	}
	
	//LoopThroughTables(window.document.body);
}








