/*
 * All the various functions for handling the 
 * "Further info" request form
 *
 */
 
function ValidateSafariAddress()
{
  // called on submit of the "more info request" form

  // firstly stop those annoying enter key accidental submits
  if( ! ValidSubmit() ) return false;

  if ( !DetectAPartner() )
  {
    alert('No company selected, please select at least\none to request further information from.');
    return false;
  }
  

  // check that each of the fields is non-null
  if ( document.safariform.name.value == '' )
  {
    alert('Please enter your name');
    document.safariform.name.focus();
    return false;
  }
  
  if ( (document.safariform.address.value == '') )
  {
    alert('Please enter your address');
    document.safariform.address.focus();
    return false;
  }
  
  if ( (document.safariform.message.value == '') )
  {
    alert('Please provide a brief message,\nsuch as an outline of your safari plans.');
    document.safariform.message.focus();
    return false;
  }
  
  if ( (document.safariform.email.value == '') )
  {
    alert('Please enter your email address');
    document.safariform.email.focus();
    return false;
  }
/*  
  if ( (document.safariform.telephone.value == '') )
  {
    alert('Please enter your telephone number');
    document.safariform.telephone.focus();
    return false;
  }
*/  
  if ( !emailCheck( document.safariform.email.value ))
  {
    document.safariform.email.focus();
    return false;
  }
  
  // made it!
  return true;
}


function CheckResetAllRegions() 
{  
  var all_regions_checked = document.safariform.all_regions.checked;
  var regions_field = document.safariform['regions[]'];
  var countries_field = document.safariform['countries[]'];
  var all_countries_field = document.safariform.all_countries;
  var i;

  for (i = 0; i < regions_field.length; i++) 
  {
    regions_field[i].checked = all_regions_checked;
  }
  
  // and reset all countries
  for (i = 0; i < countries_field.length; i++) 
  {
    countries_field[i].checked = false;
  }
  all_countries_field.checked = false;
  
}


function RegionClicked()
{
  var all_regions_field = document.safariform.all_regions;
  var all_countries_field = document.safariform.all_countries;
  var countries_field = document.safariform['countries[]'];
  var i;

  // turn off "all regions"
  all_regions_field.checked = false;
  
  // and turn off all the countries
  for (i = 0; i < countries_field.length; i++) 
  {
    countries_field[i].checked = false;
  }
  all_countries_field.checked = false;
  
}


function CheckResetAllCountries() 
{  
  var all_countries_checked = document.safariform.all_countries.checked;
  var regions_field = document.safariform['regions[]'];
  var countries_field = document.safariform['countries[]'];
  var all_regions_field = document.safariform.all_regions;
  var i;

  for (i = 0; i < countries_field.length; i++) 
  {
    countries_field[i].checked = all_countries_checked;
  }

  // and reset all regions  
  for (i = 0; i < regions_field.length; i++) 
  {
    regions_field[i].checked = false;
  }
  all_regions_field.checked = false;
  
}


function CountryClicked()
{
  var all_regions_field = document.safariform.all_regions;
  var all_countries_field = document.safariform.all_countries;
  var regions_field = document.safariform['regions[]'];
  var i;

  // turn off "all countries"
  all_countries_field.checked = false;
  
  // and turn off all the regions
  for (i = 0; i < regions_field.length; i++) 
  {
    regions_field[i].checked = false;
  }
  all_regions_field.checked = false;
  
}


function SetAllPartners( truefalse ) 
{  
  var partners_field = document.safariform['selectedpartners[]'];
  var i;

  if ( typeof partners_field.length == "undefined" )
  {
    partners_field.checked = truefalse;
  }
  else
  {
    for (i = 0; i < partners_field.length; i++) 
    {
      partners_field[i].checked = truefalse;
    }  
  }
}


function DetectAPartner() 
{  
  var i;

  if ( !document. getElementsByName )
  {
    // let PHP check for no partner selected
    return true;
  }

  // get the array of partners
  var fields = document.getElementsByName("selectedpartners[]")

  // if there aren't any - whoops - let PHP handle it
  // if there's just one, assume they want to send to this one
  // (bypassing having to test for "checked" which is tricky)
  if ( fields.length <= 1 )
  {
    return true;
  }
  
//alert(fields.length + " elements!")
//alert("item() " + fields.item(0).checked)

  // otherwise check that they selected at least one  
  for (i = 0; i < fields.length; i++) 
  {
    if ( fields.item(i).checked )
    {
      // okay if at least one "checked"
      return true;
    }
  }  

  // no partner selected
  return false;
}



