var ie=(document.all) ? 1:0;
var n4=(document.layers) ? 1:0;
var n6=(document.getElementById) ? 1:0;  

function getResult(msg, name_boton, opt){
	result = '';
	if (opt==true)
	{
		result = result + '<div class="reticula_470" style="text-align:right;">';
		result = result + '</div>';
		result = result + '<div class="reticula_470" style="text-align:center;background-color:#FFFFFF;">';
		result = result + '<div class="reticula_470" style="width:450px">';
		result = result + msg;
		result = result + '</div>';
		result = result + '</div>';
	}else{
		result = result + msg;
	}
	
	if(ie){    
		document.all[nombreSpan].innerHTML=result;
	}else{
		if(n4){
			document.layers[nombreSpan].innerHTML=result;
		}else{
			if(n6){      
				document.getElementById(nombreSpan).innerHTML=result;
			}
		}
	}
}

//	CONSUMO DE CALRÍAS NECESARIO 
function getCaloricIntake_es(frm) 
{
	var frm, bTmp, i ;
	
//	f = document.forms.frmInput;
	
	// PESO

	if (frm.peso.value.length <= 0)
	{
		alert("Debes indicar tu peso");
		frm.peso.focus();
		return false;
	}
	
	bTmp = false ;
	for (i = 0; i < frm.actividad.length; i++) 
	{
		if (frm.actividad[i].checked) 
		{
			bTmp = true ;
			break ;
		}
	}
	
	if (!bTmp)
	{
		alert("Debes indicar tu nivel de actividad física");
		return false;
	}
	
	getCaloricIntake(frm) ;
	return false;
}

	function getCaloricIntake(frm) {
		if (frm.peso.value == "") 
		{
			alert("You must enter your weight in pounds.  Please try again.");
			frm.peso.focus();
			return false;
		} 
		else 
		{
			// EL FACTOR 2.2046215 ES PARA PASAR LAS LIBRAS A KILOS
			basicCalorieNeed = (2.2046215 * parseInt(frm.peso.value)) * 11;
		}

		activtyLevelValue = 0;

		for (i = 0; i < frm.actividad.length; i++) {
			if (frm.actividad[i].checked) {
				activtyLevelValue = frm.actividad[i].value;
			};
		};

		if (activtyLevelValue == 0) {
			alert("You must choose your Physical Activity Level.  Please try again.");
			frm.actividad[0].focus();
			return false;
		};

		phycialActivity = basicCalorieNeed * activtyLevelValue;
		maintainWeight = basicCalorieNeed + phycialActivity;
		
		nombreSpan = 'spanResultado';
		result = '';
		result = result + '<p class="texto_normal" style="font-size:12px;color:#000000;text-align:center;"><strong>Consumo de calorías necesario</strong> (al día)</p>';
		result = result + '<p class="texto_normal" style="font-size:12px"><strong>Aporte de calorías necesario para mantener tu peso: </strong> '+Math.round(maintainWeight)+' calorías</p>';
		result = result + '<p class="texto_normal" style="font-size:12px"><strong>Aporte de calorías necesario para perder medio kilo a la semana: </strong> '+Math.round(maintainWeight-500)+' calorías</p>';
		
		getResult(result, 'vaciarCCN', true);
		
		return false;
	};

//	ÍNDICE DE MASA CORPORAL
function cal_bmi(lbs, ins){
   h2 = ins * ins;
   bmi = lbs/h2 * 703
   f_bmi = Math.floor(bmi);
   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 getIMC(frm)
{
	// ALTURA
	if (frm.altura.value.length <= 0)
	{
		alert("Debes indicar tu altura");
		return false;
	}
	// PESO
	if (frm.peso.value.length <= 0)
	{
		alert("Debes indicar tu peso");
		return false;
	}
			
	compute(frm);
	return false;
}

//----------------------------------------------------------------------------

function compute(frm)
{
   w = frm.peso.value;
   u = frm.altura.value;
   v = 0; // f.htf.value;	// SOLO PREGUNTO UNA CIFRA (cms) NO DOS COMO EN LA INGLESA
   
	// CONVIERTO LOS KILOS Y CENTIMETROS EN LIBRAS, PIES Y PULGADAS
	w = 2.2046215 * parseInt(w) ;
	
	// 1 meter = 39.37007874 inches
	// 1 meter = 3.280839895 feet
	// 1 feet = 12 inches
	
	u = (39.37007874 * parseInt(u)) / 100 ;
	v = parseInt(u / 12) ;
	u = parseInt(u % 12) ;
					
   // Format values for the BMI calculation

   if (!chkw(u))
   {
     var ii = 0;
     u = 0;
   } else {
     var ii = parseInt(u);
   }

   var fi = parseInt(v * 12);
   var i = fi + ii;

  // Do validation of remaining fields to check for existence of values

   if (!chkw(v)){
     alert("Please enter a number for your height.");
     frm.altura.focus();
     return;
   }
   if (!chkw(w)){
     alert("Please enter a number for your weight.");
     frm.peso.focus();
     return;
   }

	var val = cal_bmi(w, i);
	var msg = '';
	if (val < 18.5){
		msg = "Tu peso est&aacute; por debajo del m&iacute;nimo saludable. Consulta un nutricionista.";
	}else{
		if (val >= 18.5 && val <= 24.9){
			msg = "Gozas de buena salud";
		}else{
			if (val >= 25 && val <= 29.9){
				msg = "¡Pierde unos kilos! Entrar&aacute;s en tu IMC adecuado y mejorar&aacute;s tu salud.";
			}else{
				if (val >= 30 && val <= 40){
					msg = "Tu peso est&aacute; por encima del máximo recomendado. Consulta un nutricionista para conseguir llegar a tu peso ideal.";
				}else{
					msg = "Tu peso puede causarte problemas de salud. Consulta un nutricionista para reducirlo.";
				}
			}
		}
	}
	
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<p class="texto_normal" style="font-size:12px;color:#000000;text-align:center;"><strong>Indice de Masa Corporal (IMC)</strong></p>';
	result = result + '<p class="texto_normal" style="font-size:12px;text-align:center;color:#000000">' + val + '. ' + msg + '.</p>';
	
	getResult(result, 'vaciarIMC', true);
	
	return false;
}
function computeIngestas(frm)
{
   w = frm.peso.value;
   u = frm.altura.value;
   v = 0; // f.htf.value;	// SOLO PREGUNTO UNA CIFRA (cms) NO DOS COMO EN LA INGLESA
   
	// CONVIERTO LOS KILOS Y CENTIMETROS EN LIBRAS, PIES Y PULGADAS
	w = 2.2046215 * parseInt(w) ;
	
	// 1 meter = 39.37007874 inches
	// 1 meter = 3.280839895 feet
	// 1 feet = 12 inches
	
	u = (39.37007874 * parseInt(u)) / 100 ;
	v = parseInt(u / 12) ;
	u = parseInt(u % 12) ;
					
   // Format values for the BMI calculation

   if (!chkw(u))
   {
     var ii = 0;
     u = 0;
   } else {
     var ii = parseInt(u);
   }

   var fi = parseInt(v * 12);
   var i = fi + ii;

  // Do validation of remaining fields to check for existence of values

	var val = cal_bmi(w, i);
	return val;
}
function chkw(w){
   if (isNaN(parseInt(w))){
      return false;
   } else if (w < 0){
  return false;
  }
  else{
  return true;
  }
}
//	RANGO CARDIOVÁSCULAR PARA LA ACTIVIDAD FÍSICA
function getRCAF(frm){
	// ALTURA
	if (frm.pulso.value.length <= 0)
	{
		alert("Debes indicar tus pulsaciones por minuto, que sean mayores a 10 y menores a 180.");
		frm.pulso.focus();
		frm.pulso.select();
		return false;
	}
	// PESO
	if (frm.edad.value.length <= 0)
	{
		alert("Debes indicar tu edad, que sea mayor a 1 y menor a 100.");
		frm.edad.focus();
		frm.edad.select();
		return false;
	}
			
	calcularango(frm);
	return false;
}
function calcularango(frm)
{
	var pulso = frm.pulso.value;
	var edad = frm.edad.value;
//	var rangoinferior = frm.rangoinferior.value;
	
	var rangoinferior = 0.0
	rangoinferior = "" + rangoinferior

//	if(checaforma1())
//	{
		pulso = "" + pulso
		edad = "" + edad
		var valor1 = ((220-pulso-edad)*.6);
		var valor2 = ((+pulso)* 1);
		rangoinferior = "" + ((valor1 + valor2)* 1);

		var rangosuperior=0.0
		rangosuperior= "" + rangosuperior
		var valor1 = ((220-pulso-edad)*.9);
		rangosuperior = "" + ((valor1 + valor2)* 1);

	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<p class="texto_normal" style="font-size:12px;color:#4A592B;text-align:center;"><strong>Rango cardiováscular para la actividad física</strong></p>';
	result = result + '<p class="texto_normal" style="font-size:12px;text-align:center;"><strong>Nivel inferior</strong> ' + rangoinferior + ' pulsaciones / min.</p>';
	result = result + '<p class="texto_normal" style="font-size:12px;text-align:center;"><strong>Nivel superior</strong> ' + rangosuperior + ' pulsaciones / min.</p>';
	
	getResult(result, 'vaciarRCAF', true);
	
	return false;
}

//	GASTO CALORICO DIARIO
function getGCD(frm){
	// PESO
	if (frm.peso.value.length <= 0)
	{
		alert("Debes indicar tu peso.");
		frm.peso.focus();
		frm.peso.select();
		return false;
	}
	calculagasto(frm);
	return false;
}
function calculagasto(frm)
{
	var peso = frm.peso.value;
	var genero = frm.genero.value;
	var edad = frm.edad.value;
	var actividad = frm.actividad.value;
//	var gasto = frm.gasto.value;
	
	peso = "" + peso
	if(genero=="1" && edad=="1")
		var factor = (0.063*peso+2.8957)*240
	else
	if(genero=="1" && edad=="2")
		var factor = (0.0557*peso+3.2745)*240
	else
	if(genero=="1" && edad=="3")
		var factor = (0.0484*peso+3.6534)*240
	else
	if(genero=="1" && edad=="4")
		var factor = (0.0487*peso+3.056)*240
	else
	if(genero=="1" && edad=="5")
		var factor = (0.0491*peso+2.4587)*240
	else
	if(genero=="2" && edad=="1")
		var factor = (0.0621*peso+2.0357)*240
	else
	if(genero=="2" && edad=="2")
		var factor = (0.0481*peso+2.7867)*240
	else
	if(genero=="2" && edad=="3")
		var factor = (0.0342*peso+3.5377)*240
	else
	if(genero=="2" && edad=="4")
		var factor = (0.0359*peso+3.1461)*240
	else
	if(genero=="2" && edad=="5")
		var factor = (0.0377*peso+2.7545)*240
	
	if(actividad=="2")
		var factor = (factor*1.3)+((factor*1.3)*0.1)
	if(actividad=="3")
		var factor = (factor*1.37)+((factor*1.37)*0.1)
	if(actividad=="4")
		var factor = (factor*1.59)+((factor*1.59)*0.1)
	
	var gasto = 0.0
	gasto = "" + factor;
	
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<p class="texto_normal" style="font-size:12px;color:#FFFFFF;text-align:center;"><strong>Gasto calórico diario</strong></p>';
	result = result + '<p class="texto_normal" style="font-size:12px;text-align:center;">' + gasto.substring(0,4) + ' Calorías / día</p>';
	
	getResult(result, 'vaciarGCD', true);
	
	return false;
}

//	CALCULO DEL GASTO CALORICO
function getCGC(frm){
	// PESO
	if (frm.peso.value.length <= 0)
	{
		alert("Debes indicar tu peso.");
		frm.peso.focus();
		frm.peso.select();
		return false;
	}
	calculaCGC(frm);
	return false;
}

function calculaCGC(frm){
	var actividad = frm.actividad.value;
	var peso = frm.peso.value;
	var horas = frm.horas.value;
	var min = frm.minutos.value;
	var resultado = '';
	resultado = eval(peso)*(eval(horas)+(eval(min)/60))*actividad;
	resultado = resultado + "";
	var index = resultado.indexOf(".");
	if(index!=-1){
		resultado = resultado.substring(0, index+2);
	}
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<p class="texto_normal" style="font-size:12px;color:#000000;text-align:center;"><strong>Gasto calórico diario</strong></p>';
	result = result + '<p class="texto_normal" style="font-size:12px;text-align:center;">' + resultado + ' Kcal.</p>';
	
	getResult(result, 'vaciarCGC', true);
	
	return false;
}


//	VACIAR
function vaciarCCN(frm){
	frm.peso.value = '';
	frm.actividad[0].checked=true;
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<div class="reticula_470" style="text-align:right;">';
	//Result = result + '<input align="center" type="submit" class="boton2" name="calcular" value="Calcular" style="background-color:#ffffff;" onclick="getCaloricIntake_es(document.frm_calculadora);" />';
	result = result + '</div>';

	getResult(result, 'vaciarCCN', false);
}
function vaciarIMC(frm){
	
	frm.peso.value = '';
	frm.altura.value = '';
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<div class="reticula_470" style="text-align:right;">';
	result = result + '<input align="center" type="submit" class="boton2" name="calcular" value="Calcular" style="background-color:#5C7034;" onclick="getIMC(document.frm_calculadora);" />';
	result = result + '</div>';
	
	getResult(result, 'vaciarIMC', false);
}
function vaciarRCAF(frm){
	frm.pulso.value = '';
	frm.edad.value = '';
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<div class="reticula_470" style="text-align:right;">';
	result = result + '<input type="submit" class="boton2" name="calcular" value="Calcular" style="background-color:#5C7034;" onclick="getRCAF(document.frm_calculadora);" />';
	result = result + '</div>';

	getResult(result, 'vaciarRCAF', false);
}
function vaciarGCD(frm){
	frm.peso.value = '';
	frm.genero.value = '2';
	frm.edad.value = '1';
	frm.act[0].checked=true;
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<div class="reticula_470" style="text-align:right;">';
	result = result + '<input type="submit" class="boton2" name="calcular" value="Calcular" style="background-color:#5C7034;" onclick="getGCD(document.frm_calculadora);" />';
	result = result + '</div>';

	getResult(result, 'vaciarGCD', false);
}
function vaciarCGC(frm){
	frm.peso.value = '';
	frm.horas.value = '0';
	frm.minutos.value = '0';
	nombreSpan = 'spanResultado';
	result = '';
	result = result + '<div class="reticula_470" style="text-align:right;">';
	result = result + '<input type="submit" class="boton2" name="calcular" value="Calcular" style="background-color:#5C7034;" onclick="getCGC(document.frm_calculadora);" />';
	result = result + '</div>';

	getResult(result, 'vaciarCGC', false);
}

