// JavaScript Document
function bmiCalc(form) {
   var weight = Number(form.wt.value);
   var height = Number(form.ht.value);
 
	if (!checkNum(weight,"peso")) {
		form.wt.select();
		form.wt.focus();
		return false
	}
 
	if (!checkNum(height,"Altezza")) {
		form.ht.select();
		form.ht.focus();
		return false
	}
 
      
        if (form.sex[1].checked) {      
        //  0 = sesso maschile
        //  1 = sesso femminile
     	 idealConvert = 45.5;	//  fattore di conversione per sesso F
        } 
        else {
        idealConvert = 50;	//  fattore di conversione per sesso M
        }
        
 
		 if (form.hu.selectedIndex == 0) {  
		 //  se le unità sono "cm"
		 AltezzaMetri = height / 100;
		 }
 
        if (form.hu.selectedIndex == 1) {
        //  se le unità sono "metri"
        AltezzaMetri = height;
        }
 
	
 
   var AreaSupCorporea = 0.20247 * Math.pow(AltezzaMetri,0.725) * Math.pow(weight,0.425);
   var PesIdKg = idealConvert + 2.3 * ((AltezzaMetri * 100 /2.54) - 60);
   var bmi = weight / Math.pow(AltezzaMetri,2);
   
   AreaSupCorporea = rounding(AreaSupCorporea,2);
   PesIdKg = Math.round(PesIdKg);
   bmi = rounding(bmi,1);
 
	if (bmi < 18.5) {
		var interp = "Sottopeso"
	} 
	else {
		if (bmi < 25.0) {
			var interp = "Normopeso"
		} else {
			if (bmi < 30.0) {
				var interp = "Sovrappeso"
			} else {
				var interp = "Obesità"
			}
		}
	}
 
	form.AreaSupCorporea.value = AreaSupCorporea;
	form.PesIdKg.value = PesIdKg;
	form.bmi.value = bmi;
	form.interp.value = interp;
 
	return true
	}
 
 
	function checkNum(val,text) {
       if ((val == null) || (isNaN(val)) || (val == "") || (val < 0)) {
		alert("Inserire un valore per il parametro " + text + ".");
       return false
       }
       return true;
		}
 
 
	function rounding(number,decimal) {
	multiplier = Math.pow(10,decimal);
	number = Math.round(number * multiplier) / multiplier;
        return number
	}

