//global variables
var is_add_clicked = 0;

function setInputFields(shape)
{
  var image = document.getElementById('concrete_image');
  var selected_option;

  // Get the selected option
  chosenOption = -1;
  for (i = shape.length-1; i > -1; i--)
  {
    if (shape[i].checked)
    {
      chosenOption = i;
      selected_option = shape[chosenOption].value;
    }
  }

 // reset all fields

 document.getElementById('rect_lFeet').value = 0;
 document.getElementById('rect_lInch').value = 0;
 document.getElementById('rect_wFeet').value = 0;
 document.getElementById('rect_wInch').value = 0;
 document.getElementById('rect_tFeet').value = 0;
 document.getElementById('rect_tInch').value = 0;
 document.getElementById('cyl_dFeet').value = 0;
 document.getElementById('cyl_dInch').value = 0;
 document.getElementById('cyl_hFeet').value = 0;
 document.getElementById('cyl_hInch').value = 0;
 document.getElementById('quantity').value = 1;


 // If selected option is rectangular footing
 // Generate input fields for Length, Width and Height

 if(selected_option == "rect")
 {
   document.getElementById('rect_len').style.display='inline';
   document.getElementById('rect_width').style.display='inline';
   document.getElementById('rect_thk').style.display='inline';
   document.getElementById('cylin_dia').style.display='none';
   document.getElementById('cylin_ht').style.display='none';
   document.getElementById('tube_form').style.display='none';
   document.getElementById('tube_info').style.display='none';
   document.getElementById('tube_link').style.display='none';

   image.src = "image-files/rectangular_footing.jpg";
 }

 // If selected option is cylindrical footing
 // Generate input fields for Diameter and Height
 if(selected_option == "cylin" || selected_option == "sono")
 {
   document.getElementById('cylin_dia').style.display='inline';
   document.getElementById('cylin_ht').style.display='inline'; 
   document.getElementById('rect_len').style.display='none';
   document.getElementById('rect_width').style.display='none';
   document.getElementById('rect_thk').style.display='none';
   document.getElementById('tube_form').style.display='none';
   document.getElementById('tube_info').style.display='none';
   document.getElementById('tube_link').style.display='none';

   if(selected_option == "cylin")
   {
     image.src = "image-files/cylindrical_footing.jpg";
   }
   else
   {
     image.src = "image-files/sonotube.jpg";
   }
 }
 if(selected_option == "tube")
 {
   document.getElementById('tube_form').style.display='inline';
   document.getElementById('tube_info').style.display='inline';
   document.getElementById('tube_link').style.display='inline'; 
   document.getElementById('rect_len').style.display='none';
   document.getElementById('rect_width').style.display='none';
   document.getElementById('rect_thk').style.display='none';
   document.getElementById('cylin_dia').style.display='none';
   document.getElementById('cylin_ht').style.display='none';
   image.src = "image-files/tubebase.jpg";
 }
}

function setDefaults()
{
  document.getElementById('rect').checked = true;
  document.getElementById('rect_len').style.display='inline';
  document.getElementById('rect_width').style.display='inline';
  document.getElementById('rect_thk').style.display='inline';
  document.getElementById('cylin_dia').style.display="none";
  document.getElementById('cylin_ht').style.display='none';
  document.getElementById('tube_form').style.display='none';
  document.getElementById('tube_info').style.display='none';
  document.getElementById('tube_link').style.display='none';
  document.getElementById('concrete_image').src = "image-files/rectangular_footing.jpg";
  document.getElementById('result_cu_ft').value = 0;
  document.getElementById('result_cu_yd').value = 0;
  document.getElementById('result_60lb').value = 0;
  document.getElementById('result_80lb').value = 0;
  document.getElementById('quantity').value = 1;
} 

function findVolume(form_name)
{
  var tbl = document.getElementById('user_input');
  var selected_option;
  var table_row;
  var stored_cubic_feet = 0;
  var shape = document.getElementById(form_name).concrete_radiobutton;
  // Get the selected option
  chosenOption = -1;
  for (i = shape.length-1; i > -1; i--)
  {
    if (shape[i].checked)
    {
      chosenOption = i;
      selected_option = shape[chosenOption].value;
    }
  }

  // Get stored volume, if add button is clicked
  if(is_add_clicked == 1)
  {
    stored_cubic_feet = parseFloat(document.getElementById('store_result_cu_ft').value);
    is_add_clicked = 0;
  }

  // find volume for rectangular footing
  if(selected_option == "rect")
  {
    var l_feet = parseInt(document.getElementById('rect_lFeet').value);
    var l_inch = parseInt(document.getElementById('rect_lInch').value);
    var w_feet = parseInt(document.getElementById('rect_wFeet').value);
    var w_inch = parseInt(document.getElementById('rect_wInch').value);
    var t_feet = parseInt(document.getElementById('rect_tFeet').value);
    var t_inch = parseInt(document.getElementById('rect_tInch').value);
    var quan = parseInt(document.getElementById('quantity').value);
    var cubic_feet = ((l_feet + (0.0833333333*l_inch)) * (w_feet + (0.0833333333*w_inch)) * (t_feet + (0.0833333333*t_inch)))*quan;
    cubic_feet = cubic_feet + stored_cubic_feet ;
    showResults(cubic_feet);
  }

  // find volume for cylindrical footing or sonotube
  if(selected_option == "cylin" || selected_option == "sono")
  {
    var r_feet = (parseInt(document.getElementById('cyl_dFeet').value))/2;
    var r_inch = (parseInt(document.getElementById('cyl_dInch').value))/2;
    var h_feet = parseInt(document.getElementById('cyl_hFeet').value);
    var h_inch = parseInt(document.getElementById('cyl_hInch').value);
    var quan = parseInt(document.getElementById('quantity').value);
    var cubic_feet = ( 3.14159265 * (r_feet + (0.0833333333*r_inch)) * (r_feet + (0.0833333333*r_inch)) * (h_feet + (0.0833333333*h_inch)))*quan;
    cubic_feet = cubic_feet + stored_cubic_feet ;
    showResults(cubic_feet);
  }

  // find volume for tubebase
  if(selected_option == "tube")
  {
    var tube_dia = parseFloat(document.getElementById('tubeBaseID').value);
    var quan = parseInt(document.getElementById('quantity').value);
    var cubic_feet = tube_dia * quan;
    cubic_feet = cubic_feet + stored_cubic_feet ;
    showResults(cubic_feet);
  }
}

function addVolume()
{
  document.getElementById('store_result_cu_ft').value = document.getElementById('result_cu_ft').value;
  is_add_clicked = 1;
}

function checkIt(evt)
{
  evt = (evt) ? evt : window.event;
  var charCode = (evt.which) ? evt.which : evt.keyCode;
  if (charCode > 31 && (charCode < 48 || charCode > 57))
  {
    alert("This field accepts numbers only.");
    return false;
  }

  return true;
}

function validate(form_field, value)
{
  if(form_field.value == "")
  {
    form_field.value = value;
  }
}

function showResults(volume_cu_ft)
{
  var volume_cu_ft_shown = Math.round(volume_cu_ft * 100)/100;
  var volume_cu_yd = Math.round((0.037 * volume_cu_ft)*100)/100;
  var cement_60 = Math.round((volume_cu_ft/0.45)*100)/100;
  var cement_80 = Math.round((volume_cu_ft/0.60)*100)/100;
  document.getElementById('result_cu_ft').value = volume_cu_ft_shown;
  document.getElementById('result_cu_yd').value = volume_cu_yd;
  document.getElementById('result_60lb').value = cement_60;
  document.getElementById('result_80lb').value = cement_80;
}