function ValidateRequired(AElement,AErrorMsg)
{
  var lRetval = true;
  var lValue = AElement.value;
  if ((lValue == null) || (typeof(lValue) == "undefined") || (lValue == ""))
  {
    AElement.focus();
    alert(AErrorMsg);
    lRetval = false;
  }
  return lRetval;
}

function ValidateEMail(AForm)
{
  var lElement = AForm.elements["email"];
  var lRetval = ValidateRequired(lElement,'Please enter your e-mail address');
  var lFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  if (lRetval)
  {
    lValue = lElement.value;
	if (! lFilter.test(lValue))
    {
      lElement.focus();
      alert('The e-mail address you entered is not valid.  Please enter a valid e-mail address.');
	  lRetval = false;
    }
  }
  return lRetval;
}

function HasCheckedValue(AElement)
{
  var lRetval = false;
  var lCount = AElement.length;
  var ldex = 0;
  while ((!lRetval) && (ldex < lCount))
  {
	lRetval = AElement[ldex].checked;
    ldex++;
  }
  return lRetval;
}

function ValidateSurvey(AForm)
{
  var lRetval = true;
  var lElement = null;
  var lFirstBad = null;
  var lCount = AForm.elements["questioncount"].value;
  var ldex = 0;
  while (lRetval && (ldex < lCount))
  {
    lElement = AForm.elements["q"+ldex];
    lRetval = lRetval && HasCheckedValue(lElement);
	if ((!lRetval) && (lFirstBad == null))
      lFirstBad = lElement;
    ldex++;
  }
  if (lFirstBad != null)
    lFirstBad[0].focus();
  if (! lRetval)
    alert('Please answer all of the questions in the survey');
  return lRetval;
}

function Validate()
{
  var lForm = document.forms["survey"];
  var lRetval = ValidateRequired(lForm.elements["firstname"],'Please enter your first name');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["lastname"],'Please enter your last name');
  if (lRetval)
    lRetval = ValidateEMail(lForm);
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["contestcode"],'Please enter a contest code.  If you do not have a WinCard number or a Contest Code from one of our advertisements, use code: WEB04');
  if (lRetval)
    lRetval = ValidateSurvey(lForm);
  return lRetval;
}

function ClubhouseValidate()
{
  var lForm = document.forms["clubhouse"];
  var lRetval = ValidateRequired(lForm.elements["firstname"],'Please enter your first name');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["lastname"],'Please enter your last name');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["street"],'Please enter your address');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["city"],'Please enter your city');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["province"],'Please enter your province');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["postalcode"],'Please enter your postal code');
  if (lRetval)
    lRetval = ValidateRequired(lForm.elements["phone"],'Please enter your phone number');
  if (lRetval)
    lRetval = ValidateEMail(lForm);
  if (lRetval)
    lRetval = ValidateSurvey(lForm);
  return lRetval;
}
