var defaultColor = "#fff";
function msgCheck(msg, elementToDisplayMsg)
{
  var element = document.getElementById(elementToDisplayMsg);
  if(msg == null || msg == "true")
  {
    if(element != null)
      element.innerHTML = "";
    return true;
  }
  else
  {
    if(element != null)
    {
      displayMsg(element.id, "");
      setTimeout("displayMsg('"+ element.id +"','"+msg+"')",200);
    }
    return false;
  }
}
function displayMsg(id, msg)
{
  var element = document.getElementById(id);
  element.innerHTML = msg;
  element.style.display = "inline";
}
function highLight(element)
{
  element.focus();
  element.style.backgroundColor="#FFFF99";
}
function checkForBlank(form)
{
  var msg = null;
  try
  {
  for(var i = 0; i < form.elements.length; i++)
  {
    var formField = form.elements[i];
    if(formField.id.charAt(0) != '*')
    {
      if(formField.value == '')
      {
        msg = "Please complete required fields";
        highLight(formField);
        return msg;
      }
      else
        formField.style.background = defaultColor;
    }
    else if(formField.id == "*Terms")
    {
      if(!formField.checked)
      {
        msg = "Please check that you have read and agreed to the Terms of service.";
        highLight(formField);
        return msg;
      }
      else
        formField.style.background = defaultColor;
    }
  }
  }
  catch(ex){msg = "Error"; alert(ex);}
  return msg;
}

function checkForMatch(element1, element2)
{
  var msg = null;
  try
  {
    if(element1.value != element2.value)
    {
      msg = "Please confirm your Emails match";
      highLight(element1);
      return msg;
    }
  }
  catch(ex){msg = "Error";}
  return msg;
}

function checkBoxCheck(element)
{
  var msg = null;
  if(!element.checked)
    msg = "Please check that you "+ element.title +".";
  else
    element.style.background = defaultColor;
  return msg;
}
function radioButtonCheck(element)
{
  var msg = null;
  for(i=0, n=element.length; i<n; i++)
  {
    if(element[i].checked)
    {
      return null;
    }
  }
  msg = "You must select a \\'"+ element[0].title +"\\'.";
  return msg;
}


function textLengthCheck(element, minLength, maxLength)
{//alert("element: "+ element);
  var msg = null;
  try
  {
  var value = element.value;
  if(value.length < minLength || value.length > maxLength)
  {
    msg = element.title +" must be between "+ minLength +" and "+ maxLength +" characters.";
    highLight(element);
    return msg;
  }
  else
    element.style.background = defaultColor;
  }
  catch(ex){msg = "Error";}
  return msg;
}

function specialCharsCheck(element)
{//alert("element: "+ element);
  var msg = null;
  try
  {
  var value = element.value;
  var iChars = " !@#$%^&*()+=-[]\\\';,./{}|\":<>?";
  for(var i = 0; i < value.length; i++)
  {
    if(iChars.indexOf(value.charAt(i)) != -1)
    {
      msg = element.title +" contains special character(s) \\'"+ value.charAt(i) +"\\'. Please remove and try again.";
      highLight(element);
      return msg;
    }
    else
      element.style.background = defaultColor;
  }
  }
  catch(ex){msg = "Error";}
  return msg;
}

function specialCharsCheckSpaceOk(element)
{//alert("element: "+ element);
  var msg = null;
  try
  {
  var value = element.value;
  var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
  for(var i = 0; i < value.length; i++)
  {
    if(iChars.indexOf(value.charAt(i)) != -1)
    {
      msg = element.title +" contains special character(s) \\'"+ value.charAt(i) +"\\'. Please remove and try again.";
      highLight(element);
      return msg;
    }
    else
      element.style.background = defaultColor;
  }
  }
  catch(ex){msg = "Error";}
  return msg;
}

function email(element)
{
  var msg = null;
  if(element == null || element == '')
    element = document.getElementById("Email");
  var value = element.value;
  if(value.length > 0)
  {
    i=value.indexOf("@");
    j=value.indexOf(".",i);
    k=value.indexOf(",");
    kk=value.indexOf(" ");
    jj=value.lastIndexOf(".")+1;
    len=value.length;
    if((i>0) && (j>(1+1)) && (k==-1) && (kk==-1) && (len-jj >=2) && (len-jj<=3))
    {
      element.style.background = "";
      return msg;
    }
    else
    {
      msg = "NOT a valid Email Address!";
      highLight(element);
      return msg;
    }
  }
  return msg;
}


