function ClearAndHideTripsBlock(block_id) {

   var i = 0;
   for (i = 3*block_id; i < 3*(block_id + 1); i++) {
      Elmnt('start_date_trip_'+i).value='';
      Elmnt('end_date_trip_'+i).value='';
      Elmnt('tot_part_trip_'+i).value='';
      Elmnt('tot_guides_trip_'+i).value='';
   }
   Elmnt('trip_table_chunk_'+block_id).style.display='none';
}

function isTripsBlockFilled(block_id) {

   var no_fields_blank = true;
   var i = 0;
   for (i = 3*block_id; i < 3*(block_id + 1); i++) {
      if (   TrimStr(Elmnt('start_date_trip_'+i).value) == ''
          || TrimStr(Elmnt('end_date_trip_'+i).value) == ''
          || TrimStr(Elmnt('tot_part_trip_'+i).value) == ''
          || TrimStr(Elmnt('tot_guides_trip_'+i).value) == '') {

         no_fields_blank = false;
         break;
      }
   }
   return no_fields_blank;
}

function isTripsBlockEmpty(block_id) {

   var all_fields_blank = true;
   var i = 0;
   for (i = 3*block_id; i < 3*(block_id + 1); i++) {
      if (   TrimStr(Elmnt('start_date_trip_'+i).value) != ''
          || TrimStr(Elmnt('end_date_trip_'+i).value) != ''
          || TrimStr(Elmnt('tot_part_trip_'+i).value) != ''
          || TrimStr(Elmnt('tot_guides_trip_'+i).value) != '') {

         all_fields_blank = false;
         break;
      }
   }
   return all_fields_blank;
}

function OnMoreTripsUncheck(max_chunks) {
   var new_num_chunks = parseInt(Elmnt('num_trip_chunks').value) - 1;
   if (new_num_chunks <= 0) {
      alert ('error');
      return;
   }
   if (new_num_chunks < max_chunks) {
      ClearAndHideTripsBlock(new_num_chunks);
   } else {
      alert ('error');
   }
   Elmnt('num_trip_chunks').value = new_num_chunks;
}

function OnMoreTripsCheck(max_chunks) {
   var num_chunks = parseInt(Elmnt('num_trip_chunks').value);
   if (num_chunks < 1) {
      alert ('error');
      return;
   }
   if (num_chunks == 1 && !isTripsBlockFilled(0) ||
       num_chunks == max_chunks) {
      // prevent the check action
      if (num_chunks == max_chunks) {
         window.status="congratulations, you have reached the support limit of this page, please contact SportsInsurance by email";
      } else {
         window.status="please complete the currently available trip entry fields before proceeding";
      }
      Elmnt('cb_more_trips').checked = false;
      return;   
   }
   if (num_chunks < max_chunks) {
      Elmnt('trip_table_chunk_'+num_chunks).style.display='';
   } else {
      alert ('error');
   }
   Elmnt('num_trip_chunks').value = num_chunks + 1;
}

function OnTripsBlockElmntBlur (elt_value, block_id, max_chunks) {
   if (block_id >= max_chunks) {
      alert ('error');
      return;
   }
   var num_chunks = parseInt(Elmnt('num_trip_chunks').value);

   if (num_chunks != block_id + 1) {
      return;
   }
   if (elt_value != '' && isTripsBlockFilled(block_id)) {
//      if (block_id + 1 == max_chunks) {
//         Elmnt('cb_more_trips').disabled = true;
//      } else {
//         Elmnt('cb_more_trips').checked = false;
//      }
      Elmnt('cb_more_trips').checked = false;
   }
   else if (elt_value == '') {
//      if (block_id + 1 == max_chunks) {
//         Elmnt('cb_more_trips').disabled = false;
//         Elmnt('cb_more_trips').checked = true;
//      } else if (block_id > 0) {
//         Elmnt('cb_more_trips').checked = true;   
//      }
      if (block_id > 0) {
         Elmnt('cb_more_trips').checked = true;   
      }
   }
}

function MoreTripsOnMouseOver (max_chunks) {
   var last_block_id = parseInt(Elmnt('num_trip_chunks').value) - 1;

   if (last_block_id >= max_chunks) {
      alert ('error');
      return;
   }

   if (isTripsBlockFilled(last_block_id)) {
//      if (last_block_id + 1 == max_chunks) {
//         Elmnt('cb_more_trips').disabled = true;
//      } else {
//         Elmnt('cb_more_trips').checked = false;
//      }
      Elmnt('cb_more_trips').checked = false;
//   } else if (last_block_id + 1 == max_chunks) {
//      Elmnt('cb_more_trips').disabled = false;
//      Elmnt('cb_more_trips').checked = true;
   } else if (last_block_id > 0) {
      Elmnt('cb_more_trips').checked = true;   
   }
   if (Elmnt('cb_more_trips').checked) {
      window.status="uncheck to remove the last block of trip entries";
   } else {
      window.status="check to add an new block of trip entries";
   }
   return true;      
}

function RemoveLastGuideSupp() {
   var num_guides = parseInt(Elmnt('num_guide_supps').value);
   if (num_guides < 1) {
      alert ('error');
      return;
   }
   if (num_guides == 1) {
      window.status="cannot remove the initial guide form";
      return;
   }
   var index = num_guides - 1;
   Elmnt('ta_guide_addrs_info_'+index).value='';
   Elmnt('guide_supplnt_'+index).style.display='none';
   Elmnt('num_guide_supps').value = index;
}

function MoreGuides(max_guides) {
   var num_guides = parseInt(Elmnt('num_guide_supps').value);
   if (num_guides < 1 || num_guides > max_guides) {
      alert ('error');
      return;
   }
   if (num_guides == max_guides) {
      return;
   }
   var last_index = num_guides - 1;
   if (TrimStr(Elmnt('ta_guide_addrs_info_'+last_index).value) == '') {
      window.status="please complete the current guide form before proceeding";
      return;
   }
   Elmnt('guide_supplnt_'+num_guides).style.display='';
   Elmnt('num_guide_supps').value = num_guides + 1;
}
   

