var last = 0;

function cal_bmi() {
	var kg = document.getElementById('kg').value;
	var htc = document.getElementById('cm').value;

   var m = htc/100;
   var h2 = m * m;
   var bmi = kg/h2;
   var f_bmi = Math.floor(bmi);
   var diff  = bmi - f_bmi;

   diff = diff * 10;

   diff = Math.round(diff);
   if (diff == 10){
      // Need to bump up the whole thing instead
      f_bmi += 1;
      diff = 0;
   }
   bmi = f_bmi + "." + diff;

   return bmi;
}

function highlight(bmi) {
	if (bmi < 1) return;
	if (last > 0) document.getElementById('r'+last).className = '';
	if (bmi < 18.5) 
		last = 1;
	else if (bmi < 25)
		last = 2;
	else if (bmi < 30)
		last = 3;
	else if (bmi < 35)
		last = 4;
	else if (bmi < 40)
		last = 5;
	else 
		last = 6;
	document.getElementById('r'+last).className = 'selrow';
}

function compute(){
	var w = document.getElementById('kg');
	var i = document.getElementById('cm');
	var bmi = document.getElementById('bmi');

   // Do validation checking to ensure existence of values

   if (!chkw(i.value)){
     alert("Introduceti inaltimea dvs.");
     i.focus();
     return;
   }
   if (!chkw(w.value)){
     alert("Introduceti gretutatea dvs.");
     w.focus();
     return;
   }
   var b = cal_bmi(w, i);
   highlight(b);
   bmi.innerHTML = b;
   return false;
}

function chkw(w){
  // if (isNaN(parseInt(w))){
   if (isNaN(w)){
	  return false;
   } else if (w < 0){
  return false;
  }
  else{
  return true;
  }
}

