/* FILE ValidateForm.js
 *
 * Contains JavaScript code that corresponds to the DataSearch.html page
 *
 * Version 1.0.0 04/02/2000 Keith Atkins - created
 */

/* function ValidateForm
 *
 *  Validates all fields on the query form prior to submission
 */
function CheckData()
{
  var strError = '';
/* Ensure that some kind of spatial area has been selected */  
  if (!(document.entry.NWLat.value ||
        document.entry.NWLon.value ||
        document.entry.SELat.value ||
        document.entry.SELon.value))
    { strError += "ERROR: You must have a spatial restriction to your query.\n"; }

/* Ensure that the minimum year is valid (if entered) */
  var MinYear = document.entry.MIN_YEAR.value.replace(/\s/g,"");
  var isMinYear = false; if (MinYear != "") { isMinYear = true; }
  
  if (isMinYear)
  {
    if (isNaN(MinYear))  
      { strError += "ERROR: Invalid minimum year\n"; }
    else if ((MinYear < 1900) || (MinYear > 2100)) 
      { strError += "ERROR: Minimum year out of range\n"; }
  }
  
/* Ensure that the maximum year is valid (if entered) */
  var MaxYear = document.entry.MAX_YEAR.value.replace(/\s/g,"");
  var isMaxYear = false; if (MaxYear != "") { isMaxYear = true; }
  
  if (isMaxYear)
  {
    if (isNaN(MaxYear))  
      { strError += "ERROR: Invalid maximum year\n"; }
    else if ((MaxYear < 1900) || (MaxYear > 2100)) 
      { strError += "ERROR: Maximum year out of range\n"; }
  }

/* Ensure that at least one datatype has been selected */
  if (!(document.entry.DATATYPE1.checked ||
        document.entry.DATATYPE2.checked ||
        document.entry.DATATYPE3.checked ||
        document.entry.DATATYPE4.checked ||
        document.entry.DATATYPE5.checked ||
        document.entry.DATATYPE6.checked ||
        document.entry.DATATYPE7.checked ||
        document.entry.DATATYPE8.checked))
    { strError += "ERROR: No data types have been selected\n"; }
  
/* Ensure that at least one output field has been selected */
  if (!(document.entry.FIELD2.checked ||
        document.entry.FIELD3.checked ||
        document.entry.FIELD4.checked ||
        document.entry.FIELD5.checked ||
        document.entry.FIELD6.checked ||
        document.entry.FIELD7.checked ||
        document.entry.FIELD9.checked))
    { strError += "ERROR: No output fields have been selected\n"; }

  if (strError)
  {
     alert(strError);
     return false;
  } else
  {
     return true;
  }
}

