  
function CarpetPriceForm_imperialChange(eventObj) {
			updateCarpetPriceForm(false,true);
}

function CarpetPriceForm_metricChange(eventObj) {
			updateCarpetPriceForm(true,false);
}

function updateCarpetPriceForm(updateFromMetres,updateFromFeet) {
	var metreLength=0;
	var feetLength=0;
	var inchesLength=0;
	var metreWidth=0;
	var inches=0;
	var totalMetreSquare=0;
	if ( updateFromFeet ) {
		feetLength=parseInt(document.getElementById("feetLength").value);
		if (isNaN(feetLength)) {
			feetLength=0;
		}
		inchesLength=parseInt(document.getElementById("inchesLength").value);
		if (isNaN(inchesLength)) {
			inchesLength=0;
		}
		if (inchesLength>12) {
			inchesLength=11;
		}
		var inches=((feetLength*12)+inchesLength);
		metreLength=inches/(metresToFeetRatio*12);
		updated=true;
	}
	if (updateFromMetres) {//|| (inputControl.id=="metreLength") {// ({ || (inputControl.id=="carpetWidthDropDown") ) {
		metreLength=parseFloat(document.getElementById("metreLength").value);
		if (isNaN(metreLength)) {
			metreLength=0;
		}
		inches=Math.round(12*metreLength*metresToFeetRatio);
		updated=true;
	}
	feetLength=Math.round(eval((inches/12)-0.5));
	inchesLength=inches%12;
	metreWidth=parseInt(document.getElementById("metreWidth").value);
	if (isNaN(metreWidth)) {
			metreWidth=0;
	}
	metreLength=Math.floor(metreLength*100)/100;
	totalMetreSquare=metreWidth*metreLength;
	if (updateFromFeet) {
		if (parseFloat(document.getElementById("metreLength").value) != metreLength) {
			document.getElementById("metreLength").value=metreLength;
		}
	}
	if (updateFromMetres) {
	document.getElementById("feetLength").value=feetLength;
	document.getElementById("inchesLength").value=inchesLength;
	}
	document.getElementById("metreSquareTotal").innerHTML=""+format(totalMetreSquare,2)+" m<sup>2</sup>";
	document.getElementById("priceTotal").innerHTML="&pound;"+format(itemPrice*totalMetreSquare,2)+"";
	document.getElementById("cart_quantity").value=totalMetreSquare;
	//alert(getEventSrc(eventObj).id);
}  

var laminatepacksize=0;
var estimateWastageAllowancePercentage=0;
function LaminateForm_metricChange(eventObj) {
			updateLaminatePriceForm(false,true);
}

function LaminateForm_packChange(eventObj) {
			updateLaminatePriceForm(true,false);
}
function updateLaminatePriceForm(updateFromPack,updateFromMetres) {
	var metreDepth=0;
	var metreWidth=0;
	var packTotal=0;
	
	var feetDepth=0;
	var inchesDepth=0;
	var feetWidth=0;
	var inchesWidth=0;
	
	var totalMetreSquare=0;
	
	if ( updateFromPack ) {
		packTotal=parseInt(document.getElementById("laminatePackTotal").value);
		if (isNaN(packTotal)) {
			packTotal=0;
		}
		totalMetreSquare=laminatepacksize*packTotal;
		if (document.getElementById("wastagefootnote")) {
			document.getElementById("wastagefootnote").style.visibility="hidden";
			document.getElementById("wastageasterisk").style.visibility="hidden";
		}
	}
	if (updateFromMetres) {
		if (document.getElementById("laminateDepthTxt").value=="0") {
			document.getElementById("laminateDepthTxt").value="1";
		}
		if (document.getElementById("laminateWidthTxt").value=="0") {
			document.getElementById("laminateWidthTxt").value="1";
		}
		metreDepth=parseFloat(document.getElementById("laminateDepthTxt").value);
		if (isNaN(metreDepth)) {
			metreDepth=0;
		}
		metreWidth=parseFloat(document.getElementById("laminateWidthTxt").value);
		if (isNaN(metreWidth)) {
			metreWidth=0;
		}
		if (isNaN(estimateWastageAllowancePercentage)) {
			estimateWastageAllowancePercentage=10;
		}
		totalMetreSquare=metreDepth*metreWidth;
		inchesDepth=Math.round(12*metreDepth*metresToFeetRatio);
		inchesWidth=Math.round(12*metreWidth*metresToFeetRatio);
		packTotal=(totalMetreSquare/laminatepacksize);
		if ((packTotal % 1)>0) {
			packTotal=Math.floor(packTotal/1)+1;
		}
		if (document.getElementById("wastagefootnote")) {
			document.getElementById("wastagefootnote").style.visibility="visible";
			document.getElementById("wastageasterisk").style.visibility="visible";
		}
	}
	if ( (metreDepth==0) && (metreWidth==0)) {
		document.getElementById("laminateDepthTxt").value="0";
		document.getElementById("laminateWidthTxt").value="0";
		document.getElementById("laminateImperial").innerHTML="-";
	} else {
		var ftDepth=Math.round(eval((inchesDepth/12)-0.5));
		inchesDepth=inchesDepth%12;
		var ftWidth=Math.round(eval((inchesWidth/12)-0.5));
		inchesWidth=inchesWidth%12;
		document.getElementById("laminateImperial").innerHTML=ftWidth+"' "+inchesWidth+"&quot; x "+ftDepth+"' "+inchesDepth+"&quot;";
	}
	document.getElementById("cart_quantity").value=totalMetreSquare;
	document.getElementById("laminatePriceTotal").innerHTML="&pound;"+format(itemPrice*totalMetreSquare,2)+"";
}  

function initProductForm() {
	// check if this is a carpet form
	if (!document.getElementById) {return;}
	carpetFormPresent=document.getElementById("feetLength");
	if (carpetFormPresent && document.getElementById("metreLength")) {
		//addEvent(document.getElementById("carpetWidthDropDown"),"change",updateCarpetPrice);
		addEvent(document.getElementById("metreLength"),"change",CarpetPriceForm_metricChange);
		addEvent(document.getElementById("feetLength"),"change",CarpetPriceForm_imperialChange);
		addEvent(document.getElementById("inchesLength"),"change",CarpetPriceForm_imperialChange);
		addEvent(document.getElementById("metreLength"),"keyup",CarpetPriceForm_metricChange);
		addEvent(document.getElementById("feetLength"),"keyup",CarpetPriceForm_imperialChange);
		addEvent(document.getElementById("inchesLength"),"keyup",CarpetPriceForm_imperialChange);
		updateCarpetPriceForm(true,false);
	}
	laminateFormPresent=document.getElementById("laminateWidthTxt");
	if (laminateFormPresent) {
		addEvent(document.getElementById("laminateWidthTxt"),"change",LaminateForm_metricChange);
		addEvent(document.getElementById("laminateDepthTxt"),"change",LaminateForm_metricChange);
		addEvent(document.getElementById("laminatePackTotal"),"change",LaminateForm_packChange);
		addEvent(document.getElementById("laminateWidthTxt"),"keyup",LaminateForm_metricChange);
		addEvent(document.getElementById("laminateDepthTxt"),"keyup",LaminateForm_metricChange);
		addEvent(document.getElementById("laminatePackTotal"),"keyup",LaminateForm_packChange);
		updateLaminatePriceForm(true,false);
	}
}

var itemPrice=0;
var metresToFeetRatio=3.28083;

function setPrice(price) {
	itemPrice=price;
}
addEvent(window,"load",initProductForm);
//callWhenDOMLoaded(initProductForm);




  


  

