function sdebug(inp){
  document.getElementById('debugText').value = inp+'\n'+document.getElementById('debugText').value
}

function convertIt(){
  fromValue = document.getElementById('convertFromValue').value;
  fromUnits = document.getElementById('convertFromUnits').value;
  fromScale = document.getElementById('convertFromScale').value;

  toUnits = document.getElementById('convertToUnits').value;
  toScale = document.getElementById('convertToScale').value;

  //sdebug('Convert '+fromValue+' '+fromUnits+' in '+fromScale+' scale to '+toUnits+' in '+toScale+' scale');

  // convert the from measurement into mm
  if (fromUnits == "mm"){
    fromMeasurement = fromValue;
  }else if (fromUnits == "cm"){
    fromMeasurement = fromValue * 10;
  }else if (fromUnits == "m"){
    fromMeasurement = fromValue * 1000;
  }else if (fromUnits == "in"){
    fromMeasurement = fromValue * 25.4;
  }else if (fromUnits == "ft"){
    fromMeasurement = fromValue * 304.8;
  }

  //sdebug('from measure='+fromMeasurement+' mm');


  // now convert the fromMeasurement into 1/1 scale
  if (fromScale == "1/1"){
    fromMeasurement1_1 = fromMeasurement;
  }else if (fromScale == "1/4"){
    fromMeasurement1_1 = fromMeasurement * 4;
  }else if (fromScale == "1/6"){
    fromMeasurement1_1 = fromMeasurement * 6;
  }else if (fromScale == "1/8"){
    fromMeasurement1_1 = fromMeasurement * 8;
  }else if (fromScale == "1/10"){
    fromMeasurement1_1 = fromMeasurement * 10;
  }else if (fromScale == "1/16"){
    fromMeasurement1_1 = fromMeasurement * 16;
  }else if (fromScale == "1/20"){
    fromMeasurement1_1 = fromMeasurement * 20;
  }else if (fromScale == "1/24"){
    fromMeasurement1_1 = fromMeasurement * 24;
  }else if (fromScale == "1/25"){
    fromMeasurement1_1 = fromMeasurement * 25;
  }else if (fromScale == "1/30"){
    fromMeasurement1_1 = fromMeasurement * 30;
  }else if (fromScale == "1/32"){
    fromMeasurement1_1 = fromMeasurement * 32;
  }else if (fromScale == "1/33"){
    fromMeasurement1_1 = fromMeasurement * 33;
  }else if (fromScale == "1/35"){
    fromMeasurement1_1 = fromMeasurement * 35;
  }else if (fromScale == "1/45"){
    fromMeasurement1_1 = fromMeasurement * 45;
  }else if (fromScale == "1/48"){
    fromMeasurement1_1 = fromMeasurement * 48;
  }else if (fromScale == "1/50"){
    fromMeasurement1_1 = fromMeasurement * 50;
  }else if (fromScale == "1/65"){
    fromMeasurement1_1 = fromMeasurement * 65;
  }else if (fromScale == "1/72"){
    fromMeasurement1_1 = fromMeasurement * 72;
  }else if (fromScale == "1/87"){
    fromMeasurement1_1 = fromMeasurement * 87;
  }else if (fromScale == "1/100"){
    fromMeasurement1_1 = fromMeasurement * 100;
  }else if (fromScale == "1/110"){
    fromMeasurement1_1 = fromMeasurement * 110;
  }else if (fromScale == "1/144"){
    fromMeasurement1_1 = fromMeasurement * 144;
  }else if (fromScale == "1/350"){
    fromMeasurement1_1 = fromMeasurement * 350;
  }else if (fromScale == "1/500"){
    fromMeasurement1_1 = fromMeasurement * 500;
  }else if (fromScale == "1/600"){
    fromMeasurement1_1 = fromMeasurement * 600;
  }else if (fromScale == "1/720"){
    fromMeasurement1_1 = fromMeasurement * 720;
  }else if (fromScale == "1/1200"){
    fromMeasurement1_1 = fromMeasurement * 1200;
  }
  else if (fromScale == "1/64"){
      fromMeasurement1_1 = fromMeasurement * 64;
  }else if (fromScale == "1/67"){
    fromMeasurement1_1 = fromMeasurement * 67;
  }else if (fromScale == "1/160"){
    fromMeasurement1_1 = fromMeasurement * 160;
  }else if (fromScale == "1/200"){
    fromMeasurement1_1 = fromMeasurement * 200;
  }else if (fromScale == "1/29"){
    fromMeasurement1_1 = fromMeasurement * 29;
  }else if (fromScale == "1/20.5"){
    fromMeasurement1_1 = fromMeasurement * 20.5;
  }


  //sdebug('1/1 from measure='+fromMeasurement1_1+' mm');

  // now convert the 1/1 measurement into the required scale in mm
  if (toScale == "1/1"){
    finalMeasurement = fromMeasurement;
  }else if (toScale == "1/4"){
    finalMeasurement = fromMeasurement1_1 / 4;
  }else if (toScale == "1/6"){
    finalMeasurement = fromMeasurement1_1 / 6;
  }else if (toScale == "1/8"){
    finalMeasurement = fromMeasurement1_1 / 8;
  }else if (toScale == "1/10"){
    finalMeasurement = fromMeasurement1_1 / 10;
  }else if (toScale == "1/16"){
    finalMeasurement = fromMeasurement1_1 / 16;
  }else if (toScale == "1/20"){
    finalMeasurement = fromMeasurement1_1 / 20;
  }else if (toScale == "1/24"){
    finalMeasurement = fromMeasurement1_1 / 24;
  }else if (toScale == "1/25"){
    finalMeasurement = fromMeasurement1_1 / 25;
  }else if (toScale == "1/30"){
    finalMeasurement = fromMeasurement1_1 / 30;
  }else if (toScale == "1/32"){
    finalMeasurement = fromMeasurement1_1 / 32;
  }else if (toScale == "1/33"){
    finalMeasurement = fromMeasurement1_1 / 33;
  }else if (toScale == "1/35"){
    finalMeasurement = fromMeasurement1_1 / 35;
  }else if (toScale == "1/45"){
    finalMeasurement = fromMeasurement1_1 / 45;
  }else if (toScale == "1/48"){
    finalMeasurement = fromMeasurement1_1 / 48;
  }else if (toScale == "1/50"){
    finalMeasurement = fromMeasurement1_1 / 50;
  }else if (toScale == "1/65"){
    finalMeasurement = fromMeasurement1_1 / 65;
  }else if (toScale == "1/72"){
    finalMeasurement = fromMeasurement1_1 / 72;
  }else if (toScale == "1/87"){
    finalMeasurement = fromMeasurement1_1 / 87;
  }else if (toScale == "1/100"){
    finalMeasurement = fromMeasurement1_1 / 100;
  }else if (toScale == "1/110"){
    finalMeasurement = fromMeasurement1_1 / 110;
  }else if (toScale == "1/144"){
    finalMeasurement = fromMeasurement1_1 / 144;
  }else if (toScale == "1/350"){
    finalMeasurement = fromMeasurement1_1 / 350;
  }else if (toScale == "1/500"){
    finalMeasurement = fromMeasurement1_1 / 500;
  }else if (toScale == "1/600"){
    finalMeasurement = fromMeasurement1_1 / 600;
  }else if (toScale == "1/720"){
    finalMeasurement = fromMeasurement1_1 / 720;
  }else if (toScale == "1/1200"){
    finalMeasurement = fromMeasurement1_1 / 1200;
  }

  else if (toScale == "1/64"){
    finalMeasurement = fromMeasurement1_1 / 64;
  }  else if (toScale == "1/67"){
    finalMeasurement = fromMeasurement1_1 / 67;
  }  else if (toScale == "1/160"){
    finalMeasurement = fromMeasurement1_1 / 160;
  }  else if (toScale == "1/200"){
    finalMeasurement = fromMeasurement1_1 / 200;
  }  else if (toScale == "1/29"){
    finalMeasurement = fromMeasurement1_1 / 29;
  }  else if (toScale == "1/20.5"){
    finalMeasurement = fromMeasurement1_1 / 20.5;
  }
  //sdebug('converted to scale ='+finalMeasurement+' mm');

  // now convert the final value into the required units
  var finalValue = 0;
  if (toUnits == "mm"){
    finalValue = finalMeasurement;
  }else if (toUnits == "cm"){
    finalValue = finalMeasurement / 10;
  }else if (toUnits == "m"){
    finalValue = finalMeasurement / 1000;
  }else if (toUnits == "in"){
    finalValue = finalMeasurement / 25.4;
  }else if (toUnits == "ft"){
    finalValue = finalMeasurement / 304.8;
  }
  //sdebug('finalValue:'+finalValue);
  finalValue = roundNumber(finalValue,2);

 document.getElementById('finalValue').value =finalValue+' '+toUnits;

}

function roundNumber(rnum, rlength) {
  var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
  return newnumber;
}
