function convertlength(form){
    var inMeter = 0;
    switch(form.from.value){
      case 'km' :
        inMeter = form.amount.value / 0.001;
        break;
      case 'm' :
        inMeter = form.amount.value; 
        break;
      case 'cm' :
        inMeter = form.amount.value / 100;
        break;
      case 'in' :
        inMeter = form.amount.value / 39.37007874;
        break;
      case 'ft' :
        inMeter = form.amount.value / 3.280839895;
        break;
      case 'ya' :
        inMeter = form.amount.value /1.093613298; 
        break;
      case 'mi' :
        inMeter = form.amount.value /0.00062137119;
        break;
    }

    switch(form.to.value){
      case 'km' :
        inMeter = inMeter * 0.001;
        break;
      case 'm' :
        inMeter = inMeter; 
        break;
      case 'cm' :
        inMeter = inMeter * 100;
        break;
      case 'in' :
        inMeter = inMeter * 39.37007874;
        break;
      case 'ft' :
        inMeter = inMeter * 3.280839895;
        break;
      case 'ya' :
        inMeter = inMeter * 1.093613298; 
        break;
      case 'mi' :
        inMeter = inMeter * 0.00062137119;
        break;
    }
    length_result.innerHTML = 'Résultat : ' + formatvalue(inMeter,10) +' '+ form.to.options[form.to.options.selectedIndex].text;
}


function convertsurface(form){
    var inMeter = 0;
    switch(form.from.value){
      case 'ha' :
        inMeter = form.amount.value / 0.0001;
        break;
      case 'ar' :
        inMeter = form.amount.value / 0.01;
        break;
      case 'm' :
        inMeter = form.amount.value;
        break;
      case 'ft' :
        inMeter = form.amount.value / 10.76391042;
        break;
      case 'ya' :
        inMeter = form.amount.value / 1.19599005;
        break;
      case 'ac' :
        inMeter = form.amount.value /0.00024711; 
        break;
    }

    switch(form.to.value){
      case 'ha' :
        inMeter = inMeter * 0.0001;
        break;
      case 'ar' :
        inMeter = inMeter * 0.01;
        break;
      case 'm' :
        inMeter = inMeter;
        break;
      case 'ft' :
        inMeter = inMeter * 10.76391042;
        break;
      case 'ya' :
        inMeter = inMeter * 1.19599005;
        break;
      case 'ac' :
        inMeter = inMeter * 0.00024711; 
        break;
    }
    surface_result.innerHTML = 'Résultat : '+ formatvalue(inMeter,10) +' ' +form.to.options[form.to.options.selectedIndex].text;
}

function convertvolume(form){
    var inLiter = 0;
    switch(form.from.value){
      case 'm3' :
        inLiter = form.amount.value / 0.001;
      break;
      case 'f3' :
        inLiter = form.amount.value / 0.0353357;
      break;
      case 'y3' :
        inLiter = form.amount.value /0.001308;
      break;
      case 'l' :
        inLiter = form.amount.value;
        break;
      case 'cl' :
        inLiter = form.amount.value /100;
        break;
      case 'gal' :
        inLiter = form.amount.value / 0.22;
        break;
      case 'pt' :
        inLiter = form.amount.value / 1.76;
        break;
      case 'oz' :
        inLiter = form.amount.value / 35.2; 
        break;
      case 'usgal' :
        inLiter = form.amount.value / 0.2642;
        break;
      case 'uspt' :
        inLiter = form.amount.value / 2.11730;
        break;
      case 'usoz' :
        inLiter = form.amount.value / 33.87677; 
        break;
    }

    switch(form.to.value){
      case 'm3' :
        inLiter = inLiter * 0.001;
        break;
      case 'f3' :
        inLiter = inLiter * 0.0353357;
      break;
      case 'y3' :
        inLiter = inLiter * 0.001308;
      break;
      case 'l' :
        inLiter = inLiter ;
        break;
      case 'cl' :
        inLiter = inLiter * 100;
        break;
      case 'gal' :
        inLiter = inLiter * 0.22;
        break;
      case 'pt' :
        inLiter = inLiter * 1.76;
        break;
      case 'oz' :
        inLiter = inLiter * 35.2; 
        break;
      case 'usgal' :
        inLiter = inLiter * 0.2642;
        break;
      case 'uspt' :
        inLiter = inLiter * 2.11730;
        break;
      case 'usoz' :
        inLiter = inLiter * 33.87677; 
        break;
    }
    volume_result.innerHTML = 'Résultat : '+ formatvalue(inLiter,10) +' ' + form.to.options[form.to.options.selectedIndex].text;
}

function convertweight(form){
    var inKg = 0;
    switch(form.from.value){
      case 'to' :
        inKg = form.amount.value / 0.001;
        break;
      case 'kg' :
        inKg = form.amount.value; 
        break;
      case 'g' :
        inKg = form.amount.value / 1000;
        break;
      case 'lt' :
        inKg = form.amount.value / 0.0009843;
        break;
      case 'cwt' :
        inKg = form.amount.value / 0.01968;
        break;
      case 'st' :
        inKg = form.amount.value / 0.15747;
        break;
      case 'lb' :
        inKg = form.amount.value / 2.20460;
        break;
      case 'oz' :
        inKg = form.amount.value / 35.27360;
        break;
    }

    switch(form.to.value){
      case 'to' :
        inKg = inKg * 0.001;
        break;
      case 'kg' :
        inKg = inKg; 
        break;
      case 'g' :
        inKg = inKg * 1000;
        break;
      case 'lt' :
        inKg = inKg * 0.0009843;
        break;
      case 'cwt' :
        inKg = inKg * 0.01968;
        break;
      case 'st' :
        inKg = inKg * 0.15747;
        break;
      case 'lb' :
        inKg = inKg * 2.20460;
        break;
      case 'oz' :
        inKg = inKg * 35.27360;
        break;
    }
    weight_result.innerHTML = 'Résultat : '+ formatvalue(inKg,10) +' ' + form.to.options[form.to.options.selectedIndex].text;
}

function convertdegree(form){
    var inCelsius = 0;
    switch(form.from.value){
      case 'c' :
        inCelsius = form.amount.value;
        break;
      case 'f' :
        inCelsius = 100/(212-32) * (form.amount.value - 32 ); 
        break;
     }

    switch(form.to.value){
      case 'c' :
        inCelsius = inCelsius;
        break;
      case 'f' :
        inCelsius = (212-32)/100 * inCelsius + 32; 
        break;
    }
    degree_result.innerHTML = 'Résultat : '+ formatvalue(inCelsius,10) +' '+ form.to.options[form.to.options.selectedIndex].text;
}

function formatvalue(input, rsize) {
   var invalid = '**************************';
   var nines = '999999999999999999999999';
   var strin = '' + input;
   var fltin = parseFloat(strin);
   if (strin.length <= rsize) return strin;
   if (strin.indexOf('e') != -1 ||
       fltin > parseFloat(nines.substring(0,rsize)+'.4'))
      return invalid.substring(0, rsize);
   var rounded = '' + (fltin + (fltin - parseFloat(strin.substring(0, rsize))));
   return rounded.substring(0, rsize);
}

// var page_name = 'convert_unit';
// var invisible = '';
// var framed = 'no';
// function sE(){return true;}window.onError=sE;var base=document;
// if(framed=='yes'){base=top.document;}var rn=Math.random();
// var ui='immofrance';var al='Web-Stat hit counters';
// var qry=ui+':1::'+escape(base.referrer)+'::'+screen.width
// +'x'+screen.height+'::'+screen.colorDepth+'::'+escape(page_name)
// +'::'+invisible+'::'+rn+"::"+escape(base.URL);
// document.write('<a href="http://www.web-stat.com/stats/'+ui);
// document.write('.htm" target="new"><img name="ct" border="0" ');
// document.write('src="http://www.web-stat.com/count.pl?');
// document.write(qry+'" width="0" height="0" alt="'+al+'" /></a>');
