var start=1;
var lamonot = "not";
var oldvalue = 0;
var searchStr = 0;
var areaF=0;
var obj=document.myform;
var oldindex;
var oldareaF;
var installationPriceLow = "15.00";
var installationPriceHigh = "17.00";
var lamTprice = "6.25";
var woodTprice = "10.42";
var lamBprice = "1.88";
var woodBprice="3.33"; 
var foamPrice="1.27";
var boardPrice="1.80";
var dpmPrice="0.52";
var flooring;
var accessories;
var installation;
var whichflooring;
var x=0;


function reFresh(x){

	FlooringQuote();	
		
			
		if (x=="0" && obj.floor.selectedIndex !="0"){x=1;}
		if(lamonot == "lam" && x=="1"){obj.typeT[0].checked = true; obj.typeB[0].checked = true;}
		else if(lamonot != "lam" && x=="1") {obj.typeT[1].checked = true; obj.typeB[1].checked = true;}
		
		if(x=="1" && lamonot !="0"){obj.typeU[0].checked = true; obj.typeDPM[1].checked= true;}	
		x=0;

	AccessoriesQuote();
	InstallationQuote();
	
	toTal();
}

function Flooring(){

	if (obj.flooring.checked == false){
		oldindex=obj.floor.selectedIndex;
		obj.floor.selectedIndex = 0; 
		reFresh();
	}
	else {obj.floor.selectedIndex = oldindex; obj.areaF.value=oldareaF; reFresh();}
}

function FlooringQuote() {

	if (obj.flooring.checked == false){ obj.floor.selectedIndex = 0; }

	if (window.location.search.substring(1) && searchStr == 0){SearchStr();}
	
	var data = obj.floor.options[obj.floor.selectedIndex].value;
	var dataArray = data.split('/');
	
	whichflooring=dataArray[0];
	obj.priceF.value = dataArray[2];
	obj.packsizeF.value = dataArray[1];
	lamonot=dataArray[3];

	obj.wasteF.value = obj.areaF.value*5/100;

	if (obj.wasteF.value == "NaN") {obj.areaF.value= areaF; reFresh();}
	areaF = obj.areaF.value;

	if (obj.areaF.value == ""){

		areaF=0;
		if (start == 1){obj.areaF.value=0;}
	}

	var totsqm = eval(areaF) + eval(obj.wasteF.value);
	if (totsqm/dataArray[1] - parseInt(totsqm/dataArray[1])> 0.1){ var thepacks = parseInt(totsqm/dataArray[1])+1;}
	else { var thepacks = parseInt(totsqm/dataArray[1]);}

	if (dataArray[1] == 0){thepacks = 0;}

	obj.totalpacksF.value = thepacks;
	
	flooring=thepacks*dataArray[1]*dataArray[2];
	obj.totalF.value = outputMoney(flooring);

}


function outputMoney(number) {

	return outputPounds(Math.floor(number-0) + '') + outputPence(number - 0);

}

function outputPounds(number) {

	if (number.length <= 3){return (number == '' ? '0' : number);}

		else {
			var mod = number.length%3;
			var output = (mod == 0 ? '' : (number.substring(0,mod)));
		}

	for (i=0 ; i < Math.floor(number.length/3) ; i++) {
			
		if ((mod ==0) && (i ==0)){output+= number.substring(mod+3*i,mod+3*i+3);}
		else{output+= ',' + number.substring(mod+3*i,mod+3*i+3);}
        	}
	
	return (output);
		
}

function outputPence(amount) {

	amount = Math.round( ( (amount) - Math.floor(amount) ) *100);
	return (amount < 10 ? '.0' + amount : '.' + amount);
}




function SearchStr() {
 
// 	for(z=0; z<myform.floor.options.length; z++){  // Fucking Opera does not suport options.length


	for(z=0; z<58; z++) {
		
		var check = obj.floor.options[z].value;
		var checkArray = check.split('/');

		if (checkArray[0] == unescape(window.location.search.substring(1))){
		obj.floor.selectedIndex = z;
		}
		       
	}

searchStr = 1;
}



function AccessoriesQuote(){

	if (obj.accessories.checked == false || start==1 || obj.areaF.value == "" || obj.areaF.value=="0"){

		obj.lengthT.value = 0; obj.priceT.value=0;
		obj.lengthB.value = 0; obj.priceB.value=0;
		obj.areaU.value = 0; obj.priceU.value=0;
		obj.areaDPM.value = 0; obj.priceDPM.value=0;


	}

	if(obj.typeT[0].checked){obj.priceT.value=lamTprice;}
	if(obj.typeT[1].checked){obj.priceT.value=woodTprice;}
	if(obj.typeB[0].checked){obj.priceB.value=lamBprice;}
	if(obj.typeB[1].checked){obj.priceB.value=woodBprice;}
	
	if(obj.typeU[0].checked){obj.priceU.value=boardPrice;}
	if(obj.typeU[1].checked){obj.priceU.value=foamPrice;}
	if(obj.typeDPM[0].checked){obj.priceDPM.value=dpmPrice;}
	if(obj.typeDPM[1].checked){obj.priceDPM.value="0";}


	if (obj.areaF.value > 0 && obj.accessories.checked == true) {

		obj.lengthT.value = Math.round((eval(areaF)/10)*1.2); 
		obj.lengthB.value = Math.round(eval(areaF)*1.2);
		obj.areaU.value = areaF;
		obj.areaDPM.value = Math.round(eval(areaF)*1.1);
	}
	
	obj.totalT.value=outputMoney(obj.lengthT.value*obj.priceT.value);
	obj.totalB.value=outputMoney(obj.lengthB.value*obj.priceB.value);
	obj.totalU.value=outputMoney(obj.areaU.value*obj.priceU.value);
	obj.totalDPM.value=outputMoney(obj.areaDPM.value*obj.priceDPM.value);
	accessories=eval(obj.lengthT.value*obj.priceT.value)+eval(obj.lengthB.value*obj.priceB.value)+eval(obj.areaU.value*obj.priceU.value)+eval(obj.areaDPM.value*obj.priceDPM.value);
}


function InstallationQuote(){
	
	if (obj.typeI.selectedIndex >0){installationPrice = installationPriceHigh;}
	else {installationPrice = installationPriceLow;}
	
	if (obj.installation.checked == false || start == 1 || obj.areaF.value == "" || obj.areaF.value=="0"){obj.areaInst.value = 0; obj.priceInst.value= installationPrice;}
	if (obj.areaF.value > 0 && obj.installation.checked == true) {obj.areaInst.value = areaF; obj.priceInst.value=installationPrice;}
	installation=eval(obj.areaInst.value*obj.priceInst.value);
	obj.totalInst.value=outputMoney(installation);
toTal();
}



function toTal(){



obj.Gtotal.value=outputMoney(flooring+accessories+installation);

	start=0;
}



function printQuotation(){

myWindow = window.open("","quotation","height=200,width=550,top=0,left=0,scrollbars=no,resizable=no, menubar=yes");
myWindow.document.open();

myWindow.document.write('<body onload=self.focus();><table border="0" width="530"><tr><td colspan="2" bgcolor="#C0C0C0"><font size="2" face="Verdana"><strong>fabFloor Laminate flooring<br>');
myWindow.document.write('</strong>http://www.fabfloor.co.uk</font></td></tr><tr><td colspan="2"><font size="2" face="Verdana">Quotation is based on ');
myWindow.document.write(obj.areaF.value+' m<sup>2</sup> of '+whichflooring+' flooring</font></td></tr><tr><td valign="top"><font size="2" face="Verdana"><br>');
myWindow.document.write('Flooring:<br>Accessories:<br>Installation:</font><p><font size="2" face="Verdana">Total:</font></p></td>');
myWindow.document.write('<td align="right" valign="top"><font size="2" face="Verdana"><br>£ '+obj.totalF.value+'<br></font><font size="2" face="Verdana">£ '+outputMoney(accessories)+'<br>');
myWindow.document.write('</font><font size="2" face="Verdana">£ '+obj.totalInst.value+'</font><p><font size="2" face="Verdana">£ '+obj.Gtotal.value+'</font></p></td></tr><tr>');
myWindow.document.write('<td colspan="2" bgcolor="#C0C0C0"><font size="2" face="Verdana"><strong>Please call us on: 0870 7 66 40 33</strong></font></td></tr></table>');

myWindow.document.close();
myWindow.print();

}
