//<script>


var postsize=7; // in square board feet, when higher postage should be used
var minipostsize=1 ; // in square board feet, under or equal which the minipostage is used
var minipostage=3.50 ;  // super low postage for tiny items
var lowerpostage=6.20;  // **Value also in common.js**
var higherpostage=9.50; // **Value also in common.js**
var discountpercent=5; // 5%  **Value also in common.js**
var discountpercentpackaging=10 ; // 10%
var discountthreshold=100 ; //£100  **Value also in common.js**
var postsize2=2; // when higher postage should be used **Value also in common.js**
var spraycan=4.50;


// add to basket for Main, Packaging, Acoustic, Mattress
function Qaddbasket(desc) {
document.write('<input type="image" style="cursor:pointer;" border=0 align="absmiddle" src="img/addtobasket.png" width=116 height=24 border=0 name="submit">');
document.write('<input type="hidden" name="itemname" value="'+desc+'">');
document.write('<input type="hidden" name="inititemname" value="'+desc+'">');
document.write('<input type="hidden" name="itemname2" value="">');
document.write('<input type="hidden" name="itemname3" value="">');
document.write('<input type="hidden" name="quantity" value=1>');
document.write('<input type="hidden" name="storeid" value=27328>');
document.write('<input type="hidden" name="X1itemname" value="Spray Adhesive">');
document.write('<input type="hidden" name="X1price" value="'+spraycan+'">');
document.write('<input type="hidden" name="X1storeid" value=27328>');
document.write('<input type="hidden" name="X1quantity" value=1>');
}


// key change for Packaging, Acoustic
function QPqchange(obj) { 
  if (obj.howmany.value.match(/\D/)) {obj.howmany.value = obj.howmany.value.replace(/\D/g,""); return}
  if (obj.howmany.value>999) obj.howmany.value=999
  QPcalctot(obj);
}


// key change for Main, Mattress
function qchange(obj) { 
  if (obj.howmany.value.match(/\D/)) {obj.howmany.value = obj.howmany.value.replace(/\D/g,""); return}
  if (obj.howmany.value>999) obj.howmany.value=999
  calctot(obj);
}

// key change for sheets
function Sqchange(obj,initprice) { 
  if (obj.howmany.value.match(/\D/)) {obj.howmany.value = obj.howmany.value.replace(/\D/g,""); return}
  if (obj.howmany.value>999) obj.howmany.value=999
  Scalctot(obj,initprice);
}



// After submit for Packaging, Acoustic
function QPQuoteForm(obj) {
QPqchange(obj);
if (obj.X1include.checked) obj.price.value=dec2(obj.price.value-spraycan);
obj.itemname.value=(obj.howmany.value>1)?"Set of "+obj.howmany.value+" pieces of "+product:product;
return true;
}

// After submit for Mattress
function QMQuoteForm(obj) {
qchange(obj);
obj.itemname.value=(obj.howmany.value>1)?"Set of "+obj.howmany.value+" x "+product:product;
return true;
}

// After submit for Main
function QuoteForm(obj) {
qchange(obj);
if (obj.X1include.checked) obj.price.value=dec2(obj.price.value-spraycan);
obj.itemname.value=(obj.howmany.value>1)?"Set of "+obj.howmany.value+" pieces of "+product:product;
return true;
}

// After submit for sheet
function SQuoteForm(obj,price) {
Scalctot(obj,price);
obj.itemname3.value+=" thickness";
obj.itemname.value=(obj.howmany.value>1)?"Set of "+obj.howmany.value+" pieces of "+obj.inititemname.value:obj.inititemname.value;
return true;
}




// Calculate price for Packaging, Acoustic (for acoustic change minipostsize) 
// (a=price x volume/144)
function QPcalctot(obj) {
var a=vp;
// quantity
var b=obj.howmany.value*1;
if (!(b>0)) b=1;
var c=a*(b+1); a=a*b;
if (volume*b>=144*postsize) a+=higherpostage; else {if (volume*b<=144*minipostsize) a+=minipostage; else a+=lowerpostage;}
if (volume*(b+1)>=144*postsize) c+=higherpostage; else {if (volume*(b+1)<=144*minipostsize) c+=minipostage; else c+=lowerpostage;} // case quantity=+1
// spray
if (obj.X1include.checked) {a+= spraycan*1; c+= spraycan*1;}
// discount over £100
var objref=document.getElementById("add_discount");
if (c>=discountthreshold) c=c-c*discountpercentpackaging/100;
if (a<discountthreshold) {if (c-a>0) objref.innerHTML="Buy another one for only&nbsp;&#163;"+dec2(c-a)+"!"; else objref.innerHTML="";} 
else { objref.innerHTML="Over&nbsp;&#163;"+discountthreshold+"!&nbsp;Included discount:&nbsp;&#163;"+dec2(a*discountpercentpackaging/100); a=a-a*discountpercentpackaging/100;}
obj.price.value=dec2(a);
} 

// Calculate price for Main & Mattress
function calctot(obj) {
for (var i=0; i < obj.ftype.length; i++) {
    if (obj.ftype[i].checked) {var a = obj.ftype[i].value*1;
	                           obj.itemname2.value=ftn[i];
							   if (i==9) obj.itemname2.value+=" NOT FIRE RETARDANT"}
    }
obj.itemname3.value="no wrapping";
if (obj.addons[1].checked) {a+= obj.addons[1].value*1; obj.itemname3.value="Stockinette undercover";}
if (obj.addons[2].checked) {a+= obj.addons[2].value*1; obj.itemname3.value="Polyfibre wrap";}
// quantity
var b=obj.howmany.value*1;
if (!(b>0)) b=1;
var c=a*(b+1); a=a*b;
if (volume*b>=144*postsize) a+=higherpostage; else a+=lowerpostage;
if (volume*(b+1)>=144*postsize) c+=higherpostage; else c+=lowerpostage; // case quantity=+1
// spray
if (obj.X1include.checked) {a+= spraycan*1; c+= spraycan*1;}
// discount over £100
var objref=document.getElementById("add_discount");
if (c>=discountthreshold) c=c-c*discountpercent/100;
if (a<discountthreshold) {if (c-a>0) objref.innerHTML="Buy another one for only&nbsp;&#163;"+dec2(c-a)+"!"; else objref.innerHTML="";} 
else { objref.innerHTML="Over&nbsp;&#163;"+discountthreshold+"!&nbsp;Included discount:&nbsp;&#163;"+dec2(a*discountpercent/100); a=a-a*discountpercent/100;}
obj.price.value=dec2(a);
}


// Calculate total for sheets
function Scalctot(obj,price) {
price=price/2.56; // intentional confusing factor
// size
for (var i=0; i < obj.size.length; i++) {
	if (obj.size[i].checked) {var b=obj.size[i].value; obj.itemname2.value=b;
							  var b0=b.split("x"); var bX=b0[0]*1; var bY=b0[1].substr(0,b0[1].length-2)*1;
							  var v=bX*bY/6.4516;} // v=volume in cubic inches
	}
// thickness
v=v*obj.thickness.value.substr(0,obj.thickness.value.length-2);
obj.itemname3.value=obj.thickness.value;
// quantity
var b=obj.howmany.value*1;
if (!(b>0)) b=1;
var a=v*price/144;
var c=a*(b+1); a=a*b;
if (v*b>=144*postsize) a+=higherpostage; else a+=lowerpostage;
if (v*(b+1)>=144*postsize) c+=higherpostage; else c+=lowerpostage; // case quantity=+1
// discount over £100
if (c>=discountthreshold) c=c-c*discountpercent/100;
if (a<discountthreshold) {if (c-a>0) obj.discmsg.value="Buy another one for only "+poundsign+dec2(c-a)+"!"; else obj.discmsg.value="";} 
else { obj.discmsg.value="Over "+poundsign+discountthreshold+"!"+" "+"Included discount: "+poundsign+dec2(a*discountpercent/100); a=a-a*discountpercent/100;}
obj.price.value=dec2(a);
}




function checksum(form,arr)
{
var crc=Math.ceil(form.result.value/3);
for (var i = 0; i < arr.length; i++) {crc+=arr[i].value*1+17;}
crc=crc*(form.meas[1].checked?2:1)*(form.meas[2].checked?3:1);
form.size.value=crc ^ 345; // XOR
}


//
// show foam type windows 
function show(obj) {
hide("t0");hide("t1");hide("t2");hide("t3");hide("t4");hide("t5");hide("t6");hide("t7");hide("t8");hide("t9");hide("a1");hide("a2");hide("a3");
var dom=document.getElementById;
objref=(dom)? document.getElementById(obj) : document.all.obj;
objref.style.visibility="visible"; }

function hide(obj) {
var dom=document.getElementById;
objref=(dom)? document.getElementById(obj) : document.all.obj;
objref.style.visibility="hidden"; }



function DisplayFormValues(form) 
{ var str = ''; 
  var elem = document.getElementById(form).elements; 
  for(var i = 0; i < elem.length; i++) 
     { str += "<b>Type:</b>" + elem[i].type + "&nbsp&nbsp"; 
	   str += "<b>Name:</b>" + elem[i].name + "&nbsp;&nbsp;"; 
	   str += "<b>Value:</b><i>" + elem[i].value + "</i>&nbsp;&nbsp;"; 
	   str += "<BR>" }
document.write(str);	   
} 
