var prevForm;
var prefix = 
  "<br />" + 
  "<h2>Results</h2>";
var suffix = "";

function $(id)
{
  return document.getElementById(id);
}

function toReal(value)
{
  return (value.length > 0) ? parseFloat(value) : 0;
}

function round(value, places)
{
  var toRoundUp = "56789";
  var valuestr = value + "";
  var decimal = valuestr.indexOf(".");
  var lastdigit;
  
  if(decimal == -1)
    return valuestr;
  
  valuestr = valuestr.substr(0, decimal + places + 1)
  lastdigit = toReal(valuestr.substr(valuestr.length - 2, 1));
  
  // See if we should round up or not.
  if(toRoundUp.indexOf(valuestr.substr(valuestr.length - 1, 1)) != -1)
  {
    valuestr = valuestr.substr(0, valuestr.length - 2) + (lastdigit + 1.0);
  }
  else
  {
    valuestr = valuestr.substr(0, valuestr.length - 1);
  }
    
  return valuestr;
}

function calculate(formNumber)
{
  var qs = "?c=" + formNumber;

  // Open new window with fields in query string.
  switch(formNumber)
  {
    case 0:
		var activity = $("0_activity").selectedIndex;
		var intensity = $(activity + "_intensity").selectedIndex;
		//alert(activity + ":" + intensity);
      qs += "&activity=" + activity + 
            "&intensity=" + intensity + 
            "&weight=" + $("0_weight_kg").value + 
            "&time=" + $("0_time_m").value;
      break;
    case 1:
      qs += "&weight=" + $("1_weight_kg").value + 
            "&height=" + $("1_height_m").value;
      break;
    case 2:
      qs += "&gender=" + $("2_gender")[$("2_gender").selectedIndex].value + 
            "&waist=" + $("2_waist_cm").value + 
            "&hip=" + $("2_hip_cm").value;
      break;
  }
  
  // Open new window.
  //window.open("http://www.fithealthysteps.com.au/calculate.php" + qs,"w","status=1,height=250,width=400,scrollbars=1,location=1");
  
  //submit form
  document.formCalc.submit();
  
}

function calculateEE(weight_kg, time_m, intensity, activity)
{
  try
  {
    var w = toReal(weight_kg);
    var t = toReal(time_m);
    var E = 3.817;
    
    var result = 0;    
    switch(activity)
    {
      case "Walking":
        var v = 3 + intensity * 1.5;
        
        result = (w == 0 || t == 0 || v == 0) ? 0 : 
          w * E * (t / 60) * v;
        break;
      case "Running":
        var v = 10 + intensity * 5;
      
        result = (w == 0 || t == 0 || v == 0) ? 0 : 
          w * E * (t / 60) * v;
        break;
      case "Cycling":
        
        break;
      case "Bootcamp":
        
        break;
      case "Circuit training":
        
        break;
      case "Weight training":
        
        break;
      case "Golf":
        
        break;
      case "Swimming":
        
        break;
      case "Gardening":
        
        break;
    }
    
    $("result").innerHTML = 
      prefix + 
      "Your Energy Expenditure:<br />" + 
      round(result, 3) + " kJ/" + round(result / 4.18, 3) + " cal" + 
      suffix;
  }
  catch(e)
  {
    $("result").innerHTML = "Program Error: " + e;
  }
}

function calculateBMI(weight_kg, height_m)
{
  try
  {
    var w = toReal(weight_kg);
    var h = toReal(height_m);
    
    var result = (w == 0 || h == 0) ? 0 : 
      w / (h * h);
    
    $("result").innerHTML = 
      prefix + 
      "Your BMI:<br />" + 
      round(result, 3) + 
      suffix;
  }
  catch(e)
  {
    $("result").innerHTML = "Program Error: " + e;
  }
}

function calculateWaistHip(waist_cm, hip_cm)
{
  try
  {
    var w = toReal(waist_cm);
    var h = toReal(hip_cm);
    
    var result = (w == 0 || h == 0) ? 0 : 
      w / h;
    
    $("result").innerHTML = 
      prefix + 
      "Your waist to hip ratio:<br />" + 
      round(result, 3) + 
      suffix;
  }
  catch(e)
  {
    $("result").innerHTML = "Program Error: " + e;
  }
}

function validate(textfield)
{
  var validChars = ".1234567890";

  // Remove invalid characters.
  for(var i = 0; i < textfield.value.length; i++)
  {
    if(validChars.indexOf(textfield.value.substr(i, 1)) == -1)
    {
      textfield.value = textfield.value.substr(0, i) + textfield.value.substr(i + 1);
      i--;
    }
    
    // Disable decimal points from here on if found.
    if(textfield.value.substr(i, 1) == ".")
      validChars = validChars.substr(1);
  }
}

function ShowObj(objMID) {
	document.getElementById(objMID).style.display='';
}

function HideObj(objMID) {
	document.getElementById(objMID).style.display='none';
}

function show(id)
{
  var Idvalue = id.value;
  //alert(Idvalue);
  if(Idvalue != " ")
  {
    switch(Idvalue)
	{
	   case "CircuitTraining":
	      ShowObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");				
	   break;
	   case "Cycling":
	      ShowObj("intensity1");
	      HideObj("intensity0");
		  HideObj("intensity2");
		  HideObj("intensity3");	      
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");		  				
	   break;
	   case "Football":
	      ShowObj("intensity2");
	      HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity3");	      
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Gardening":
	      ShowObj("intensity3");
		  HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");		  
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Golf":
	      ShowObj("intensity4");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity0");
		  HideObj("intensity3");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Housework":
	      ShowObj("intensity5");
		  HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Running":
	      ShowObj("intensity6");
		  HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");		  
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Shopping":
	      ShowObj("intensity7");
		  HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");		  
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Sitting":
	      ShowObj("intensity8");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity0");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Swimming":
	      ShowObj("intensity9");
		  HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity8");
		  HideObj("intensity7");
		  HideObj("intensity10");
		  HideObj("intensity11");
	   break;
	   case "Walking":
	      ShowObj("intensity10");
		  HideObj("intensity0");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity7");
		  HideObj("intensity11");
	   break;
	   case "Yoga":
	      ShowObj("intensity11");
		  HideObj("intensity1");
		  HideObj("intensity2");
		  HideObj("intensity3");
		  HideObj("intensity4");
		  HideObj("intensity5");
		  HideObj("intensity6");
		  HideObj("intensity7");
		  HideObj("intensity8");
		  HideObj("intensity9");
		  HideObj("intensity10");
		  HideObj("intensity0");
	   break;
	}
  }  
}

/*function display(id)
{
  // Hide previous form.
  if(prevForm != undefined)
    $(prevForm).style.display = "none";
	document.getElementById('0_intensity').style.display = "none"; //"block"
  
  // Display selected form.
  $("_form" + id).style.display = "block";
  
  // Set previous form.
  prevForm = "_form" + id;
}*/