/* COPYRIGHT Life Quotes, Inc. 2010
 * This Entire Program is copyrighted intellectual property of Life Quotes, Inc.  Any use by others
 * is prohibited by law.  No portion of this program from Life Quotes, Inc. may be published, broadcasted,
 * duplicated, photocopied, faxed, mailed, distributed, transmitted, redistributed,  incorporated, modified
 * or otherwise utilized in any manner whatsoever, regardless of purpose, without the express, prior written
 * authorization of Life Quotes, Inc.
 */

var poBoxAlreadyWarned = false;
function warnIfPOBox(address)
{
   var addy = address;
   addy = stripString(addy, ".");
   addy = stripString(addy, " ");
   addy = addy.toUpperCase();
   if ( !poBoxAlreadyWarned )
   {
      if ( addy.indexOf("PO") > -1  || addy.indexOf("BOX") > -1 ) 
      {
         alert("We have detected that your address:'" + address + "' may contain a P.O. Box, which is unacceptable. If this is true please enter your real address, otherwise click 'OK' and resubmit your application.");
         poBoxAlreadyWarned = true;
         return false;
      }
   }
   return true;
}

function sharedQSTest(form)
{
   autoFillSeq(form, 100);
   if (form.elements['QI_FIRST_NAME'].value == 'qstest')
   {
	  if (eval("form.primaryBeneficiaryYesNo1_1") != null )
	   {
		  form.primaryBeneficiaryYesNo1_1[0].checked=true;
	      form.primaryBeneficiaryYesNo1_1[1].checked=false;
	   }


      if (eval("form.primaryBeneficiaryYesNo4_1") != null )
      {
         form.primaryBeneficiaryYesNo4_1[0].checked = true;
         form.primaryBeneficiaryYesNo4_1[1].checked = false;
         form.primaryBeneficiaryYesNo4_1[2].checked = false;
      }
      if (eval("form.contingentBeneficiaryYesNo10_1") != null )
      {
         form.contingentBeneficiaryYesNo10_1[0].checked = true;
         form.contingentBeneficiaryYesNo10_1[1].checked = false;
         form.contingentBeneficiaryYesNo10_1[2].checked = false;
      }
   }
}

// Function to get an element's style object given its id name
function getStyleObject(objectId)
{
   if (document.getElementById && document.getElementById(objectId))
   {
      return document.getElementById(objectId).style;
   }
   else if (document.all && document.all(objectId))
   {
      return document.all(objectId).style;
   }
   else if (document.layers && document.layers[objectId])
   {
      return document.layers[objectId];
   }
   else
   {
      alert("style object not found for " + objectId);
      return false;
   }
}

// Given a target object's id and desired new visibility setting
// find that element object, retrieve its style object and
// use that to set the visibility to the specified setting
// NOTE: Visibility is usually either "block", meaning visible,
// or "none", meaning hidden.
function changeObjectVisibility(objectId, newVisibility)
{
   // get a reference to the cross-browser style
   // object and make sure the object exists
   var styleObject = getStyleObject(objectId);
   if (styleObject)
   {
      styleObject.visibility = newVisibility;
   }
   else
   {
      // we couldn't find the object, so we can't change its visibility
      return false;
   }
}

// Given a target object's id and desired x and y coordinates find
// the element object and set its coordinates to the specified request
function moveObject(objectId, newXCoordinate, newYCoordinate)
{
   // get a reference to the cross-browser style
   // object and make sure the object exists
   var styleObject = getStyleObject(objectId);
   if (styleObject)
   {
      styleObject.left = newXCoordinate;
      styleObject.top = newYCoordinate;
      return true;
   }
   else
   {
      // we couldn't find the object, so
      // we can't very well move it
      return false;
   }
}

// Used to switch a particular div section to either "block", meaning visible,
// or "none", meaning not visible to the user. Acts a lot like
// changeObjectVisibility.
function changeDiv(the_div, the_change)
{
   var the_style = getStyleObject(the_div);
   if (the_style != false)
   {
      the_style.display = the_change;
   }
   else
   {
      return false;
   }
}


// For a CheckBox, Used to switch a particular div section to either "block",
// meaning visible,
// or "none", meaning not visible to the user. when using a checkbox
function changeDivCheckbox(checkbox, div)
{
   if (checkbox.checked) changeDiv(div, "block");
   else changeDiv(div, "none");
}


// Used to show a div, and to focus on the first field of that div,
// thereby placing cursor in the textbox, highlighting a field, etc.
function showAndFocus(div_id, field_to_focus)
{
  var the_div = getStyleObject(div_id);
  if (the_div != false)
  {
    changeObjectVisibility(div_id, "visible");
    field_to_focus.focus();
  }
}

// Short-hand change function which utilizes changeDiv and
// automatically calls it with "block", which means "make visible to user"
function showDiv(the_div)
{
   changeDiv(the_div, "block");
}

function hideDiv(divName){
   changeDiv(divName, "none");
}

// Opposite of showDiv, this is a short-hand call function which utilizes
// changeDiv with "none", which means "make NOT visible to user"
function hide(theName)
{
   changeDiv(theName, "none");
}

// Given a target div's id and some text to set into it, find the div
// and set the text to the specified. The commented out section must
// be saved as this function is not proved to be wholly cross browser
// compatible yet.
function setDivText(someDivName, someText)
{
   var obj;
   if (document.getElementById && document.getElementById(someDivName))
   {
      obj = document.getElementById(someDivName);
   }
   else if (document.all && document.all(someDivName))
   {
      obj = document.all(someDivName);
   }
   else if (document.layers && document.layers[someDivName])
   {
      obj = document.layers[someDivName];
   }

   obj.innerHTML = someText;
}

var debugMode = true;
function debug(mes)
{
    if(debugMode)
    {
        alert(mes);
    }
}

// ////////////////////// VALIDATION HELPERS ////////////////////////

function setElementExists(form, elementName,  valueToSet)
{
   if (elementExists(form, elementName))
   {
      form.elements[elementName].value = valueToSet;
   }
   return;
}

function elementExists(form, elementName)
{
   var temp = form.elements[elementName];
   if (typeof temp == "undefined")
   {
      return false;
   }
   return true;
}

function objectExists(objectName) {
	var o = document.getElementById(objectName);
	
	if (o)
		return true;
	
	return false;
}

function checkdate(form, fld_name , yesDivNumber, questionNumber, subQuestionNumber, parentID )
{
   var datefield   = form.elements[fld_name];
   var dateMessage = "The following date is invalid: '" + datefield.value + "',  please use mm/yyyy or m/yyyy format";
   if (chkdate(datefield) == false)
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber != null)
         {
            showDiv("subDiv_" + questionNumber + "_" + subQuestionNumber);
            showDiv("YesDiv" + parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(dateMessage);
      datefield.focus();
      return false;
   }
   else 
   {
      return true;
   }
}

function checkdate1(form, fld_name , divId )
{
   var datefield = form.elements[fld_name];
   var dateMessage = "The following date is invalid: '" + datefield.value + "',  please use mm/yyyy or m/yyyy format";
   if (chkdate(datefield) == false) {

      if (divId != 'none')
           showDiv(divId);

      alert(dateMessage);
      datefield.focus();

      return false;
   }
   else {
      return true;
   }
}


function chkdate(objName) {
   var strDate;
   var strDateArray;
   var strDay;
   var strMonth;
   var strYear;
   var intMonth;
   var intYear;
   var datefield = objName;
   var err = 0;

   strDate = objName.value;
   if (strDate.length < 1) {
      return false;
   }

   if (strDate.indexOf("/") == -1)
       return false;

   strDateArray = strDate.split("/");
   if (strDateArray.length > 2)
   {
     return false
   }


   strYear = strDateArray[1];
   strMonth = strDateArray[0];

   intMonth = parseInt(strMonth, 10);
   if (isNaN(intMonth))
   {
       return false;
   }


   if (intMonth>12 || intMonth<1) {
      return false;
   }


   intYear = parseInt(strYear, 10);
   if (isNaN(intYear)) {
      return false;
   }


   if (intYear < 1900 || intYear >2100)	// match logic of function checkDateMMDDYYYY
      return false;


   return true;
}

function checkdateMMDDYYYY(form, fld_name , yesDivNumber, questionNumber, subQuestionNumber, parentID )
{

   var datefield = form.elements[fld_name];
   var dateMessage = "The date is invalid for :" + fld_name + " please fill date mm/dd/yyyy format";
   if (checkDateMMDDYYYY(datefield) == false) {
             if(yesDivNumber > 0)
            {
               hideAll();
               if(questionNumber!=null){
                  showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
                  showDiv("YesDiv"+parentID);
               }
               showDiv("YesDiv" + yesDivNumber);
                  }


      alert(dateMessage);
      datefield.focus();

      return false;
   }
   else {
      return true;
   }
}



function checkdateMMDDYYYY1(form, fld_name , dateMessage, divId )
{

   var datefield = form.elements[fld_name];
   if (checkDateMMDDYYYY(datefield) == false) {

      if (divId != 'none')
         showDiv(divId);
      alert(dateMessage);
      datefield.focus();

      return false;
   }
   else {
      return true;
   }
}

function checkdateMMDDYYYY2(form, fld_name, dateMessage)
{
   var datefield = form.elements[fld_name];
   if (checkDateMMDDYYYY(datefield) == false) 
   {
      alert(dateMessage);
      datefield.focus();
      return false;
   }
   else 
   {
      return true;
   }
}

function repeatNum(repNum)
{
// var repTest = /([a-zA-Z])\1\1/;
var repTest = /([0-9])\1{5}/;
 	if (repTest.test(repNum))					// check for the same character
												// repeating 3 or more times
 		return false;
 		
 		return true;
}

function repeatNumAdvance(repNum)
{

   var repTest = /([0-9])\1\1\1\1\1\1\1/;
    var upRunTest = /123456789/;
    var downRunTest = /987654321/;
  


 	if (repTest.test(repNum))					// check for the same character
												// repeating 8 or more times
 		return false;
  	if (upRunTest.test(repNum))					// check for
 		return false;		
 	if (downRunTest.test(repNum))					// check for
 		return false;



 		return true;
}
// Credit Card Check
function checkCC(obj, exactLength)
{
	var ccVal=obj.value;

	if (!checkBlank(obj, "Please enter your Credit Card Number"))return false;
    if (!checkDigitOnly(obj,"Please enter a valid Credit Card Number"))return false;

    if(obj.value.length!=exactLength)
	{
		alert("Please enter your "+exactLength+" digit Credit Card Number");
		obj.focus();
		return false;
	}


	if(!repeatNumAdvance(ccVal))
	{
			alert('Please enter valid Credit Card Number');
			form.elements["creditCardNumber_1"].value="";
			form.elements["creditCardNumber_1"].focus();
			return false;
	}  


      return true;
}
// Credit SS#
function checkSS(obj1, obj2, obj3)
{
	var ssVal_1 = obj1.value;
	var ssVal_2 = obj2.value;
	var ssVal_3 = obj3.value;

   if (!textIsValid(form, obj1, emptyMessage + "the SSN.", 0))return false;
   if (!isNumeric(form, obj1, "The SSN" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, obj1, "The SSN" + lengthMessage + "3 digits.", 3, 0))return false;

   if (!textIsValid(form, obj2, emptyMessage + "the SSN.", 0))return false;
   if (!isNumeric(form, obj2, "The SSN" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, obj2, "The SSN" + lengthMessage + "2 digits.", 2, 0))return false;
  
   if (!textIsValid(form, obj3, emptyMessage + "the SSN.", 0))return false;
   if (!isNumeric(form, obj3, "The SSN" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, obj3, "The SSN" + lengthMessage + "4 digits.", 4, 0))return false;

   var ssnVal=ssVal_1 + ssVal_2 + ssVal_3;
alert("ssnVal = " + ssnVal);
		if(!repeatNum(ssnVal))
		{
			alert('Please enter valid SSN');
			form.obj1.value="";
			form.elements[obj2].value="";
			form.elements[obj3].value="";
			obj1.focus();
			return false;
		}



      return true;
}
      
 
function checkDocName(form, obj, divId)
{
  
	var retVal = true;
	var docNameVal = form.elements[obj].value;
	var docNameLength = docNameVal.length;

    var dashTest =   /([-])\1\1\1/;
    var periodTest = /([.])\1\1\1/;
    var noneTest = /None/;
	var none2Test = /NONE/;
	var na1Test = /N\/A/;
	var na2Test = /NA/;
	var na3Test = /n\/a/;
	var na4Test = /na/;
    var dontTest = /DON\'T/;
	var dont2Test = /don\'t/;
    var appTest = /APPLICABLE/;
    var appTest = /applicable/;

    var dashTestLength =   /([-])\1\1\1/;
    var periodTestLength = /([.])\1\1\1/;
    var noneTestLength = 5;
	var none2TestLength = 5;
	var na1TestLength = 4;
	var na2TestLength = 3;
	var na3TestLength = 4;
	var na4TestLength = 3;
    var dontTestLength = 6;
	var dont2TestLength = 6;
    var appTestLength = 11;
    var appTestLength = 11;





 	if (dashTest.test(docNameVal))		// check for dashes
 		retVal = false;
  	else if (periodTest.test(docNameVal))		// check for ...
 		retVal = false;		

	else if (noneTest.test(docNameVal) && (docNameLength <= noneTestLength ))		// check
																					// for
																					// none
 		retVal = false;
 	else if (none2Test.test(docNameVal) && (docNameLength <= none2TestLength ))		// check
																					// for
																					// none
 		retVal = false;
 	else if (na1Test.test(docNameVal) && (docNameLength <= na1TestLength ))		// check
																				// for
																				// none
 		retVal = false;
 	else if (na2Test.test(docNameVal) && (docNameLength <= na2TestLength ))		// check
																				// for
																				// none
 		retVal = false;
	else if (na3Test.test(docNameVal) && (docNameLength <= na3TestLength ))		// check
																				// for
																				// none
 		retVal = false;
 	else if (na4Test.test(docNameVal) && (docNameLength <= na4TestLength ))		// check
																				// for
																				// none
 		retVal = false;
 	else if (dontTest.test(docNameVal) && (docNameLength <= dontTestLength ))		// check
																					// for
																					// none
 		retVal = false;
 	else if (dont2Test.test(docNameVal) && (docNameLength <= dont2TestLength ))		// check
																					// for
																					// none
 		retVal = false;
 	else if (appTest.test(docNameVal) && (docNameLength <= appTestLength ))		// check
																				// for
																				// none
 		retVal = false;

    if (retVal == false)
    { 
	  alert("You must enter a valid name for the Doctor!");
      form.elements[obj].focus();
      if (divId != 'none')
      {
          showDiv(divId);
      }   
	  return false;
    }

      return true;
}
// ------------------------------------------------------
// checks the phone number when entered as one string
// (630)555-1212, 630-555-1212, 6305551212, 630 355 1212
// -----------------------------------------------------
function checkPhone( form, elementName, message)
{
   var result = true;

   var validChars = "0123456789";
   var validDNCChars = "()- "           // DNC - do not care
   var needGoodOne = 0;
   var countNOT_DNC = 0;
   var countDNC = 0;

   var startString = form.elements[elementName].value;
   var strLength = startString.length;


// alert("in the right place with my people doing whatever!");
// alert("length = " + strLength);
// alert("startString = " + startString);


   for( x=0; x < strLength; x++)
   {
      var testChar = startString.charAt(x);
// alert("testChar = " + testChar);

	  // Lets see if it is a DNC char "()- "
	  if(validDNCChars.indexOf( testChar ) > -1 ) 
	  {
		 // This is a DNC char
         countDNC = countDNC + 1;    
// alert("countDNC = " + countDNC);
      }
	  else
	  {
		  countNOT_DNC = countNOT_DNC + 1;   
// alert("countNOT_DNC = " + countNOT_DNC);
		  // Lets see if it is a valid char of this list "123456789"
		  if(validChars.indexOf( testChar ) > -1 ) 
		  {
			 // This is a good char
			 needGoodOne = needGoodOne + 1;  
// alert("needGoodOne = " + needGoodOne);
		  }
	  }
   }

// Div it out before you focus on it!!!!

   if ((needGoodOne != 10) || (countNOT_DNC != needGoodOne) || (countDNC > 4))
   {
         result = false;
         alert(message);
         form.elements[elementName].focus();
   }

   return result;
}


function checkDateMMDDYYYY(objName)
{
   var strDate;
   var strDateArray;
   var strDay;
   var strMonth;
   var strYear;
   var intMonth;
   var intYear;
   var intDay;
   var datefield = objName;
   var err = 0;

   strDate = objName.value;
   if (strDate.length < 1) {
      return false;
   }

   if (strDate.indexOf("/") == -1)
       return false;

   strDateArray = strDate.split("/");
   if (strDateArray.length != 3)
   {
     return false
   }


   strYear = strDateArray[2];
   strDay  = strDateArray[1]
   strMonth = strDateArray[0];

   intMonth = parseInt(strMonth, 10);
   if (isNaN(intMonth))
   {
       return false;
   }


   if (intMonth>12 || intMonth<1) {
      return false;
   }


   intYear = parseInt(strYear, 10);
   if (isNaN(intYear)) {
      return false;
   }

   intDay = parseInt(strDay, 10);
   if (isNaN(intDay))
     {
       return false;
    }

   if (intYear < 1900 || intYear > 2100)	// match logic of function chkdate()
	   return false;

   if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intDay > 31 || intDay < 1)) {
      return false;
   }
   if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intDay > 30 || intDay < 1)) {
      return false;
   }

   if (intMonth == 2)
    {
      if (intDay < 1) {return false;}
      if (LeapYear(intYear) == true)
       {
         if (intDay > 29) { return false; }

       }
       else
       {
          if (intDay > 28) { return false; }
       }

     }


   return true;

}


function LeapYear(intYear)
{
   if (intYear % 100 == 0)
   {
      if (intYear % 400 == 0) { return true; }
   }
   else
   {
      if ((intYear % 4) == 0) { return true; }
   }
  return false;
}


// by terry for TFE
function textIsValidByID(form, elementName, emptyMessage, yesDivNumber, questionNumber, subQuestionNumber, parentID)
{
   var temp = document.getElementById(elementName);
 
   if (temp.value.length < 1)
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber!=null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(emptyMessage);
      temp.focus();
      return false;
   }
   return true;
}

function textIsValid(form, elementName, emptyMessage, yesDivNumber, questionNumber, subQuestionNumber, parentID)
{
   var temp = form.elements[elementName];
   if (temp.value.length < 1)
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber!=null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(emptyMessage);
      temp.focus();
      return false;
   }
   return true;
}

function textIsValid1(form, elementName, emptyMessage, divId)
{
   var temp = form.elements[elementName];
   if (temp.value.length < 1)
   {
      if (divId != 'none')
          {
          showDiv(divId);
             }
      alert(emptyMessage);
      temp.focus();
      return false;
   }
   return true;
}

// JCV [03-16-2010] just a boolean...no messages
function isFieldEmpty(form, elementName) {
	var temp = form.elements[elementName];
	if (temp.value.length < 1) {
		return true;
	}
	return false;
}

function textIsNotAllCaps(form, elementName, divId)
{
   var temp = form.elements[elementName];
   if (temp.value.length < 2)  // do not care about 1 letter names
   {    
      return true;
   }
 
   var allcaps = new String(temp.value);
   var theallcaps = allcaps.toUpperCase();


   if (allcaps.indexOf(theallcaps) > -1 ) 
      {
         if (divId != 'none')
          {
            showDiv(divId);
         }
         alert("We have detected your name is all caps:'" + temp.value + "'  Please capitalize only the first letter!");
         temp.focus();
		 return false;
      }

   return true;
}


function strip(obj)
{
   var decimalIndex = obj.value.indexOf(".");
   if (decimalIndex >= 0)
   {
      obj.value = obj.value.substring(0, decimalIndex);
   }

   stripHelper(obj, ",");
   stripHelper(obj, "$");
   return obj.value;
}

function stripHelper(obj, toStrip)
{   
   var resetValue = obj.value;
   var index = resetValue.indexOf(toStrip);
   while (index >= 0)
   {
      resetValue = resetValue.substring(0, index) + resetValue.substring(index + 1);
      index = resetValue.indexOf(toStrip);
   }
   obj.value = resetValue;
}

function stripString(string, toStrip)
{   
   var resetValue = string;
   for( index=string.indexOf(toStrip) ;   index>=0 ;  index=resetValue.indexOf(toStrip) )
   {
      resetValue = resetValue.substring(0, index) + resetValue.substring(index + 1);
   }
   return resetValue;
}



function textIsLongEnough(form, elementName, lengthMessage, length, yesDivNumber, secondYesDivNumber)
{
   var temp = form.elements[elementName];
   if (temp.value.length < length)
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         changeDiv("YesDiv" + yesDivNumber, "block");
         if(secondYesDivNumber > 0)
         {
            changeDiv("YesDiv" + secondYesDivNumber, "block");
         }
      }
      alert(lengthMessage);
      temp.focus();
      return false;
   }
   return true;
}

function textIsLongEnough1(form, elementName, lengthMessage, length, divId)
{
   var temp = form.elements[elementName];
   if (temp.value.length < length)
   {
     if (divId != 'none')
          {
       showDiv(divId);
             }
      alert(lengthMessage);
      temp.focus();
      return false;
   }
   return true;
}

function isNumeric(form, elementName, numberMessage, yesDivNumber, secondYesDivNumber)
{
   var temp = form.elements[elementName];
   var tempValue = strip(temp);
   if (isNaN(tempValue))
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         changeDiv("YesDiv" + yesDivNumber, "block");
         if(secondYesDivNumber > 0)
         {
            changeDiv("YesDiv" + secondYesDivNumber, "block");
         }
      }

      alert(numberMessage);
      temp.select();
      temp.focus();
      return false;
   }

   return true;
}

function isNumeric1(form, elementName, numberMessage, divId)
{
   var temp = form.elements[elementName];
   var tempValue = strip(temp);
   if (isNaN(tempValue))
   {

     if (divId != 'none')
       {
     showDiv(divId);
        }
      alert(numberMessage);
      temp.select();
      temp.focus();
      return false;
   }

   return true;
}

//JCV [03-16-2010] just a boolean...no messages
function isFieldNumeric(form, elementName) {
	var temp = form.elements[elementName];
	var tempValue = strip(temp);
	if (isNaN(tempValue)) {
		return false;
	}
	return true;
}


function validateByCharset( form, elementName, message, validChars)
{
   var result = true;
   var validateString = form.elements[elementName];
   validateString = strip( validateString );
   for( x=0; x< validateString.length; x++) {
      var testChar = validateString.charAt(x);
      // Test testchar to see if it's in the set of validChars
      if (validChars.indexOf( testChar ) == -1 ) {
         result = false;
         alert(message);
         form.elements[elementName].focus();
         break;
      }
   }
   return result;
}

function validateDriversLicense( form, elementName, message)
{
   var validChars = "0123456789 ";
   var needGoodOne = 0;
   var result = true;
   var validateString = form.elements[elementName];
   validateString = strip( validateString );

  
   for( x=0; x< validateString.length; x++) {
      var testChar = validateString.charAt(x);
      // Test testchar to see if it's in the set of validChars
  	  if (validChars.indexOf( testChar ) > 0 ) 
	  {
         needGoodOne = needGoodOne + 1;     
      }
   }
   if (needGoodOne < 5)
   {
         result = false;
         alert(message);
         form.elements[elementName].focus();
   }

   return result;
}



function isNumericOrSpace( form, elementName, numberMessage )
{
  var validChars = "0123456789 ";
  return validateByCharset( form, elementName, numberMessage, validChars);
}

function itemIsSelected(form, elementName, message, yesDivNumber, questionNumber, subQuestionNumber, parentID)
{
   var selectList = form.elements[elementName];
   var selectedIndex = selectList.selectedIndex;
   if (selectedIndex<0 || selectList[selectedIndex].value == "-99")
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber!=null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(message);
      selectList.focus();
      return false;
   }
   return true;
}
function itemIsSelectedByID(form, elementName, message, yesDivNumber, questionNumber, subQuestionNumber, parentID)
{
   var selectList = document.getElementById(elementName);

  // var selectList = form.elements[elementName];
   var selectedIndex = selectList.selectedIndex;
   if (selectedIndex<0 || selectList[selectedIndex].value == "-99")
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber!=null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(message);
      selectList.focus();
      return false;
   }
   return true;
}
function itemIsSelected1(form, elementName, message, divId )
{
   var selectList = form.elements[elementName];
   var selectedIndex = selectList.selectedIndex;
   if (selectedIndex<0 || selectList[selectedIndex].value == "-99")
   {

     if (divId != 'none')
       {
         showDiv(divId);
       }


     alert(message);
      selectList.focus();
      return false;
   }
   return true;
}


// This funtion can handle hidden YesNo question. Added by Tao Liu on 10/2/02.
function checkHiddenYesNo(name, mustAnswer, yesDivNumber, questionNumber, subQuestionNumber, parentID)
{
   if (!elementExists(document.forms['onlineAppForm'], name)) return true;

   var yes = eval("document.forms['onlineAppForm']." + name + "[0]");
   var no = eval("document.forms['onlineAppForm']." + name + "[1]");

   if (!yes.checked && !no.checked)
   {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber!=null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(mustAnswer);
      yes.focus();
      return false;
   }
   return true;
}

// Returns true if a selection was made, alerts user that they must
// answer with predefined test in "mustAnswer" and returns false if
// no selection was made. NOTE: Your form MUST have the name onlineAppForm
function checkYesNo(name, mustAnswer)
{
   if (!elementExists(document.forms['onlineAppForm'], name)) return true;

   var yes = eval("document.forms['onlineAppForm']." + name + "[0]");
   var no = eval("document.forms['onlineAppForm']." + name + "[1]");

   if (!yes.checked && !no.checked)
   {
      alert(mustAnswer);
      yes.focus();
      return false;
   }
   return true;
}

function checkYesNo1(name, mustAnswer, divId)
{
   if (!elementExists(document.forms['onlineAppForm'], name)) return true;

   var yes = eval("document.forms['onlineAppForm']." + name + "[0]");
   var no = eval("document.forms['onlineAppForm']." + name + "[1]");

   if (!yes.checked && !no.checked)
   {
     if (divId != 'none')
       {
         showDiv(divId);
        }

      alert(mustAnswer);
      yes.focus();
      return false;
   }
   return true;
}

function checkTextField(form, name, mustAnswer)
{
   if (elementExists(form, name))
   {
        if (!textIsValid(form, name, mustAnswer, 0))
        {
            return false;
        }
   }


   return true;
}

function checkSelection(form, name, mustAnswer)
{
    if (elementExists(form, name))
    {
        if (!itemIsSelected(form, name, mustAnswer, 0))
        {
            return false;
        }
    }
   return true;
}


// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////// MEDICAL QUESTION VALIDATION HELPERS
// ////////////////////////////////////////////
// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function checkDETAILS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (elementExists(form, "primaryHistoryDate" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDate" + tempAnswerCounter + "_1", "Plese fill in a date.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!checkdate(form, "primaryHistoryDate" + tempAnswerCounter + "_1",  tempAnswerCounter, questionNumber, subQuestionNumber, parentID))
       {

         return false;
       }
   }
   if (elementExists(form, "primaryHistoryDocDetails" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDocDetails" + tempAnswerCounter + "_1", "Please explain.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }
   if(elementExists(form, "primaryHistoryWeight" + tempAnswerCounter + "_1")){
      if(!itemIsSelected(form, "primaryHistoryWeight" + tempAnswerCounter + "_1", "Please select \"+\" or \"-\" for the weight you losed or gained.", tempAnswerCounter,questionNumber))
      {
        return false;
      }
   }
   if(elementExists(form, "primaryHistoryWeightQty" + tempAnswerCounter + "_1"))
   {
        // alert("debug, before weighqty
		// textIsValid"+form.elements("primaryHistoryWeightQty"+tempAnswerCounter+"_1").value);
        if (!textIsValid(form, "primaryHistoryWeightQty" + tempAnswerCounter + "_1", "Please fill in the weight you gained or losed in the past year.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
        // alert("debug, before weighqty isNumeric");
        if (!isNumeric(form, "primaryHistoryWeightQty" + tempAnswerCounter + "_1", "Please only enter numeric digits for the weight you losed or gained.",tempAnswerCounter, questionNumber ))return false;
   }
   
   // JCV [05/27/2009] added to validate LL_DETAILS and TFE_DETAILS (also used
	// for NW)
   if(elementExists(form, "primaryHistoryDetails" + tempAnswerCounter + "_1"))
   {
       if (!textIsValid(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please provide the details.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }

   return true;
}

function blankDETAILS(form, tempAnswerCounter)
{
   if (elementExists(form, "primaryHistoryDate" + tempAnswerCounter + "_1"))
   {
      form.elements["primaryHistoryDate" + tempAnswerCounter + "_1"].value = "";
   }
   if (elementExists(form, "primaryHistoryDocDetails" + tempAnswerCounter + "_1"))
   {
      form.elements["primaryHistoryDocDetails" + tempAnswerCounter + "_1"].value = "";
   }
   if (elementExists(form, "primaryHistoryWeightQty" + tempAnswerCounter + "_1"))
   {
      form.elements["primaryHistoryWeightQty" + tempAnswerCounter + "_1"].value = "";
   }
   if (elementExists(form, "primaryHistoryDetails" + tempAnswerCounter + "_1"))
   {
      form.elements["primaryHistoryDetails" + tempAnswerCounter + "_1"].value = "";
   }

}


function checkHAZARD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   // Test Scuba, motor racing are answered
   changeDiv('YesDiv' + tempAnswerCounter, 'block');
   if (elementExists(form, "specificallyAutoRacing_1"))
   {
      if (!checkYesNo('specificallyAutoRacing_1', 'Please select whether or not you participate in auto racing.')) return false;
   }
   if (elementExists(form, "specificallyScuba_1"))
   {
      if (!checkYesNo('specificallyScuba_1', 'Please select whether or not you participate in scuba diving.')) return false;
   }
   return verifyHAZARD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID);
}

// Return true if either autoRacing or scuba question checked YES or Other
// activity entered//
function verifyHAZARD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID){
   var oneYESChecked=form.specificallyAutoRacing_1[0].checked || form.specificallyScuba_1[0].checked;
   if(!oneYESChecked){
      changeDiv('YesDiv' + tempAnswerCounter, 'block');
      if(isBlank(form.activityWhich_1.value)){
         form.activityWhich_1.focus();
         alert("Please answer YES to either auto racing, scuba diving or enter an hazardous activity.");
         return false;
      }
   }
   return true;
}

function blankHAZARD(form, tempAnswerCounter)
{
   form.specificallyAutoRacing_1[0].checked = false;
   form.specificallyAutoRacing_1[1].checked = true;
   form.specificallyScuba_1[0].checked = false;
   form.specificallyScuba_1[1].checked = true;
   form.activityWhich_1.value="";
   form.activityWhere_1.value="";
   form.activityWhy_1.value="";
   form.activityWhen_1.value="";
   form.activityOften_1.value="";
}

function checkTRAVEL(form, tempAnswerCounter)
{
   // Checking primary History Travel Where
   if (elementExists(form, "primaryHistoryTravelWhere_1"))
   {
      if (!textIsValid(form, "primaryHistoryTravelWhere_1", "Where do you intend to travel?", tempAnswerCounter))return false;
   }

   // Checking primary History Travel Month
   if (elementExists(form, "primaryHistoryTravelMonth_1"))
   {
      if (!itemIsSelected(form, "primaryHistoryTravelMonth_1", "In what month do you intend to travel?", tempAnswerCounter))return false;
   }

   // Checking primary History Travel Day
   // if (elementExists(form, "primaryHistoryTravelDay_1"))
   // {
      // if (!itemIsSelected(form, "primaryHistoryTravelDay_1", "What day did
		// your traveling start?", tempAnswerCounter))return false;
   // }

   // Checking primary History Travel Year
   if (elementExists(form, "primaryHistoryTravelYear_1"))
   {
      if (!textIsValid(form, "primaryHistoryTravelYear_1", "In what year do you intend to travel?", tempAnswerCounter))return false;
      if (!isNumeric(form, "primaryHistoryTravelYear_1", "Please only enter numeric digits for the year you intend to travel.", tempAnswerCounter))return false;
      if (!textIsLongEnough(form, "primaryHistoryTravelYear_1", "Please enter a four digit year in which you intend to travel.", 4, tempAnswerCounter))return false;
   }

   // Checking primary History Travel Why
   if (elementExists(form, "primaryHistoryTravelWhy_1"))
   {
      if (!textIsValid(form, "primaryHistoryTravelWhy_1", "Why do you intend to travel?", tempAnswerCounter))return false;
   }

   // Checking primary History Travel For How Long
   if (elementExists(form, "primaryHistoryTravelLength_1"))
   {
      if (!textIsValid(form, "primaryHistoryTravelLength_1", "For how long do you intend travel?", tempAnswerCounter))return false;
   }
   return true;
}

function blankTRAVEL(form, tempAnswerCounter)
{
   // Checking primary History Travel Where
   form.elements['primaryHistoryTravelWhere_1'].value = "";
   form.primaryHistoryTravelMonth_1.selectedIndex = 0;
   form.elements['primaryHistoryTravelYear_1'].value = "";
   form.elements['primaryHistoryTravelWhy_1'].value = "";
   form.elements['primaryHistoryTravelLength_1'].value = "";
}

function checkDOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (elementExists(form, "primaryHistoryDate" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDate" + tempAnswerCounter + "_1", emptyMessage + "History year for question " + tempAnswerCounter + ".", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!checkdate(form, "primaryHistoryDate" + tempAnswerCounter + "_1",  tempAnswerCounter, questionNumber, subQuestionNumber, parentID)) return false;
   }

   // Checking primary History Doc Details
   if (elementExists(form, "primaryHistoryDocDetails" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDocDetails" + tempAnswerCounter + "_1", emptyMessage + "the Details of your docotor visit for question " + tempAnswerCounter + ".", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }

   // Checking primary History Doc Duration
   if (elementExists(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1", emptyMessage + "the duration of your disease or injury for question " + tempAnswerCounter + ".", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }
      // Checking primary History Doc Result
   if (elementExists(form, "primaryHistoryDocResult" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDocResult" + tempAnswerCounter + "_1", emptyMessage + "the result of your disease or injury for question " + tempAnswerCounter + ".", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }

      // Checking primary History Doc Medication
   if (elementExists(form, "primaryHistoryDocMedication" + tempAnswerCounter + "_1"))
   {
      if (!textIsValid(form, "primaryHistoryDocMedication" + tempAnswerCounter + "_1", emptyMessage + "any medications you have taken in the past or are currently taking for this condition" + tempAnswerCounter + ".", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }
   return true;
}

function blankDOCTOR(form, tempAnswerCounter)
{
   form.elements['primaryHistoryDate' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocPhoneArea' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocPhoneNumber' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocPhoneCity' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocDetails' + tempAnswerCounter + '_1'].value = "";
   // form.elements['primaryHistoryDocDuration' + tempAnswerCounter +
	// '_1'].value = "";
   if (elementExists(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1"))
   {
        form.elements['primaryHistoryDocDuration' + tempAnswerCounter + '_1'].value = "";
   }
      // Checking primary History Doc Result
   if (elementExists(form, "primaryHistoryDocResult" + tempAnswerCounter + "_1"))
   {
       form.elements['primaryHistoryDocResult' + tempAnswerCounter + '_1'].value = "";
   }
}

function checkDOCTORADVANCED(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDiagnosis" + tempAnswerCounter + "_1", emptyMessage + "your diganosis?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTreatment" + tempAnswerCounter + "_1", emptyMessage + "what type of treatment you received?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTreatmentResults" + tempAnswerCounter + "_1", "What were the results of your treatment?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!itemIsSelected(form, "primaryHistoryOnsetMonth" + tempAnswerCounter + "_1", "In what month did your condition begin?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!textIsValid(form, "primaryHistoryOnsetYear" + tempAnswerCounter + "_1", "In what year did your condition begin?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;


   var recovYesNo = eval("form.primaryHistoryRecoveryComplete" + tempAnswerCounter + "_1");
   if (!recovYesNo[0].checked && !recovYesNo[1].checked)
   {

      if(tempAnswerCounter > 0)
      {
         hideAll();
         if(parentID != null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + tempAnswerCounter);
      }
      alert("Please select whether or not your recovery was complete.");
      recovYesNo[0].focus();
      return false;
   }
   if (recovYesNo[0].checked)
   {
      showDiv("RecoveryComplete"+tempAnswerCounter+"Div");
      if (!itemIsSelected(form, "primaryHistoryRecoveryMonth" + tempAnswerCounter + "_1", "In what month was your recovery complete?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!textIsValid(form, "primaryHistoryRecoveryYear" + tempAnswerCounter + "_1", "In what year was your recovery complete?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }
   else if (recovYesNo[1].checked)
   {
      var recovMonth = eval("form.primaryHistoryRecoveryMonth" + tempAnswerCounter + "_1");
      recovMonth.selectedIndex = 0;

      form.elements['primaryHistoryRecoveryYear' + tempAnswerCounter + '_1'].value = "";
   }

   return true;
}

function blankDOCTORADVANCED(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDiagnosis' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTreatment' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTreatmentResults' + tempAnswerCounter + '_1'].value = "";

   var onsetMonth = eval("form.primaryHistoryOnsetMonth" + tempAnswerCounter + "_1");
   onsetMonth.selectedIndex = 0;
   form.elements['primaryHistoryOnsetYear' + tempAnswerCounter + '_1'].value = "";

   var recovYesNo = eval("form.primaryHistoryRecoveryComplete" + tempAnswerCounter + "_1");
   recovYesNo[0].checked = false;
   recovYesNo[1].checked = false;

   var recovMonth = eval("form.primaryHistoryRecoveryMonth" + tempAnswerCounter + "_1");
   recovMonth.selectedIndex = 0;

   form.elements['primaryHistoryRecoveryYear' + tempAnswerCounter + '_1'].value = "";
}

function checkMEDICATION(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryMedication" + tempAnswerCounter + "_1", emptyMessage + "the type of medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!textIsValid(form, "primaryHistoryMedicationReason" + tempAnswerCounter + "_1", emptyMessage + "the reason for medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!itemIsSelected(form, "primaryHistoryMedicationMonth" + tempAnswerCounter + "_1", "In what month did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   
   if (!textIsValid(form, "primaryHistoryMedicationYear" + tempAnswerCounter + "_1", "In what year did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   return true;
}

function blankMEDICATION(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryMedication' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryMedicationReason' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";

   var medMonth = eval("form.primaryHistoryMedicationMonth" + tempAnswerCounter + "_1");
   medMonth.selectedIndex = 0;
   form.elements['primaryHistoryMedicationYear' + tempAnswerCounter + '_1'].value = "";
}


function checkMEDICATION3(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryMedication" + tempAnswerCounter + "_1", emptyMessage + "the type of medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!textIsValid(form, "primaryHistoryMedicationReason" + tempAnswerCounter + "_1", emptyMessage + "the reason for medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!itemIsSelected(form, "primaryHistoryMedicationMonth" + tempAnswerCounter + "_1", "In what month did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   
   if (!textIsValid(form, "primaryHistoryMedicationYear" + tempAnswerCounter + "_1", "In what year did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   return true;
}

function blankMEDICATION3(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryMedication' + tempAnswerCounter + '_1'].value = "";
  
   form.elements['primaryHistoryMedicationReason' + tempAnswerCounter + '_1'].value = "";
  
   var medMonth = eval("form.primaryHistoryMedicationMonth" + tempAnswerCounter + "_1");
   medMonth.selectedIndex = 0;
   form.elements['primaryHistoryMedicationYear' + tempAnswerCounter + '_1'].value = "";
}



function checkPRESCRIPTION(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryPrescriptionDrug" + tempAnswerCounter + "_1", emptyMessage + "the complete drug name?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryPrescriptionDosage" + tempAnswerCounter + "_1", emptyMessage + "the exact dosage?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryPrescriptionOften" + tempAnswerCounter + "_1", emptyMessage + "taken how often?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryPrescriptionReason" + tempAnswerCounter + "_1", emptyMessage + "the reason for prescription?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryPrescriptionDateStarted" + tempAnswerCounter + "_1", emptyMessage + "the date started?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!checkdate(form, "primaryHistoryPrescriptionDateStarted" + tempAnswerCounter + "_1",  tempAnswerCounter, questionNumber, subQuestionNumber, parentID)) return false;
   return true;
}
function blankPRESCRIPTION(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryPrescriptionDrug' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryPrescriptionDosage' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryPrescriptionOften' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryPrescriptionReason' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryPrescriptionDateStarted' + tempAnswerCounter + '_1'].value = "";
}


function checkRL1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocDiagnosis" + tempAnswerCounter + "_1", emptyMessage + "your diganosis?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocCondition" + tempAnswerCounter + "_1", emptyMessage + "your condition?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false; 
   return true;
}
function blankRL1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocDiagnosis' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocCondition' + tempAnswerCounter + '_1'].value = "";  
}


function checkRL2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocDates" + tempAnswerCounter + "_1", emptyMessage + "your dates?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocCondition" + tempAnswerCounter + "_1", emptyMessage + "your condition?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   return true;
}
function blankRL2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocDates' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocCondition' + tempAnswerCounter + '_1'].value = "";  
}


function checkRL3DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocDates" + tempAnswerCounter + "_1", emptyMessage + "your dates?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocCondition" + tempAnswerCounter + "_1", emptyMessage + "your condition?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
  
   return true;
}
function blankRL3DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocDates' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocCondition' + tempAnswerCounter + '_1'].value = "";  
}



function checkFL1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocName" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocCondition" + tempAnswerCounter + "_1", emptyMessage + "your condition?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocTreatment" + tempAnswerCounter + "_1", emptyMessage + "your treatment?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1", emptyMessage + "your dates and duration?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "_1", emptyMessage + "your doctor's phone?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!checkPhone(form, "primaryHistoryDocPhone" + tempAnswerCounter + "_1", emptyMessage + "your doctor's phone?" ))return false;
 
   return true;
}
function blankFL1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocCondition' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocTreatment' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocDuration' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '_1'].value = ""; 
   
}


function checkFL2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocName" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocExplain" + tempAnswerCounter + "_1", emptyMessage + "your explaination?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocDate" + tempAnswerCounter + "_1", emptyMessage + "your doctor's date?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "_1", emptyMessage + "your doctor's phone?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
   if (!checkPhone(form, "primaryHistoryDocPhone" + tempAnswerCounter + "_1", emptyMessage + "your doctor's phone?" ))return false;

 
   return true;
}
function blankFL2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocExplain' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocDate' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '_1'].value = "";  
 
}


function checkFL3DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocExplain" + tempAnswerCounter + "_1", emptyMessage + "your explaination?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1", emptyMessage + "your date(s) and duration?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
  
   return true;
}
function blankFL3DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocExplain' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocDuration' + tempAnswerCounter + '_1'].value = ""; 
}


function checkFL4DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocExplain" + tempAnswerCounter + "_1", emptyMessage + "your explaination?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocLocation" + tempAnswerCounter + "_1", emptyMessage + "your date(s) and location?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   return true;
}
function blankFL4DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocExplain' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocLocation' + tempAnswerCounter + '_1'].value = ""; 
}



function checkPLN2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;

	if (!textIsValid(form, "primaryHistoryDocDrugs" + tempAnswerCounter + "_1", emptyMessage + "your list of drugs?", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
	if (!isQSDateSelected(form, "primaryHistoryDocFirst"+ tempAnswerCounter, "Date first used", true, false, false, divName)) return false;
	if (!isQSDateSelected(form, "primaryHistoryDocLast"+ tempAnswerCounter, "Date last used", true, false, false, divName)) return false;
   return true;
}
function blankPLN2DOCTOR(form, tempAnswerCounter)
{
   form.elements['primaryHistoryDocDrugs' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocFirst' + tempAnswerCounter + 'Month_1'].value = ""; 
   form.elements['primaryHistoryDocFirst' + tempAnswerCounter + 'Year_1'].value = ""; 
   form.elements['primaryHistoryDocLast' + tempAnswerCounter + 'Month_1'].value = ""; 
   form.elements['primaryHistoryDocLast' + tempAnswerCounter + 'Year_1'].value = ""; 
}


function checkFL5DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocExplain" + tempAnswerCounter + "_1", emptyMessage + "your explaination?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   return true;
}
function blankFL5DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocExplain' + tempAnswerCounter + '_1'].value = "";  
   
}
function checkFL6DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	alert("Based on your answer to this question it is unlikely that you would be accepted into this particular plan. We will be unable to accept your application for this plan. Please click your browser's BACK button so that you can choose another company or plan.");

    return false;
}
function blankFL6DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
  return true; 
}


function checkFLWEIGHT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
  
   if(elementExists(form, "primaryHistoryWeightLoss" + tempAnswerCounter + "_1"))
   {
        // alert("debug, before weighqty
		// textIsValid"+form.elements("primaryHistoryWeightQty"+tempAnswerCounter+"_1").value);
        if (!textIsValid(form, "primaryHistoryWeightLoss" + tempAnswerCounter + "_1", "Please fill in the weight you lost in the past year.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
        // alert("debug, before weighqty isNumeric");
        if (!isNumeric(form, "primaryHistoryWeightLoss" + tempAnswerCounter + "_1", "Please only enter numeric digits for the weight you lost.",tempAnswerCounter, questionNumber ))return false;
   }
   return true;


}
function blankFLWEIGHT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{

  if(elementExists(form, "primaryHistoryWeightLoss" + tempAnswerCounter + "_1"))
	{
      form.elements['primaryHistoryWeightLoss' + tempAnswerCounter + '_1'].value = "";  
	}
}



// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ////////////////////////////////// Transamerica FE
// ////////////////////////////////////////////
// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////

  



function checkTFEDOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
  
 // if (!textIsValid(form, document.getElementById("primaryHistoryDocName" +
	// tempAnswerCounter + "_1"), emptyMessage + "your doctor's name?",
	// tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return
	// false;
 // if (!textIsValid(form, "primaryHistoryDocAddress" + tempAnswerCounter +
	// "_1", emptyMessage + "your doctor's address?", tempAnswerCounter,
	// questionNumber, subQuestionNumber, parentID))return false;
 // if (!textIsValid(form, "primaryHistoryDocDiagnosis" + tempAnswerCounter +
	// "_1", emptyMessage + "your diagnosis?", tempAnswerCounter,
	// questionNumber, subQuestionNumber, parentID))return false;
 // if (!textIsValid(form, "primaryHistoryDocDuration" + tempAnswerCounter +
	// "_1", emptyMessage + "your duration?", tempAnswerCounter, questionNumber,
	// subQuestionNumber, parentID))return false;
 // if (!textIsValid(form, "primaryHistoryDocDates" + tempAnswerCounter +
	// "_1", emptyMessage + "your dates?", tempAnswerCounter, questionNumber,
	// subQuestionNumber, parentID))return false;

   if (!textIsValidByID(form, "primaryHistoryDocName" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValidByID(form, "primaryHistoryDocAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValidByID(form, "primaryHistoryDocDiagnosis" + tempAnswerCounter + "_1", emptyMessage + "your diagnosis?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValidByID(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1", emptyMessage + "your duration?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
   if (!textIsValidByID(form, "primaryHistoryDocDates" + tempAnswerCounter + "_1", emptyMessage + "your dates?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;




   return true;
}
function blankTFEDOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocDiagnosis' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocDuration' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocDates' + tempAnswerCounter + '_1'].value = ""; 
   return;  
}



function checkTFEDRUGS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!itemIsSelected(form, "primaryHistoryDrugsMonth" + tempAnswerCounter + "_1", "In what month did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;   
   if (!textIsValidByID(form, "primaryHistoryDrugsYear" + tempAnswerCounter + "_1", "In what year did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValidByID(form, "primaryHistoryDrugsExplain" + tempAnswerCounter + "_1", emptyMessage + "the details?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
  // if (!textIsValid(form, "primaryHistoryDrugsTreatment" + tempAnswerCounter
	// + "_1", emptyMessage + "the treatment?", tempAnswerCounter,
	// questionNumber, subQuestionNumber, parentID))return false;
	 return true;
}
function blankTFEDRUGS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   var medMonth = eval("form.primaryHistoryDrugsMonth" + tempAnswerCounter + "_1");
   medMonth.selectedIndex = 0;
   form.elements['primaryHistoryDrugsYear' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryDrugsExplain' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDrugsTreatment' + tempAnswerCounter + '_1'].value = "";
   return;
}




function checkTFESMOKE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!itemIsSelected(form, "primaryHistoryNicotineMonth" + tempAnswerCounter + "_1", "In what month did you begin taking this type of nicotine?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValidByID(form, "primaryHistoryNicotineYear" + tempAnswerCounter + "_1", "In what year did you begin taking this type of nicotine?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	 return true;
}
function blankTFESMOKE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   var smokeMonth = eval("form.primaryHistoryNicotineMonth" + tempAnswerCounter + "_1");
   smokeMonth.selectedIndex = 0;
   form.elements['primaryHistoryNicotineYear' + tempAnswerCounter + '_1'].value = "";
   return;
}


function checkTFEVIOLATIONS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!itemIsSelected(form, "primaryHistoryViolationsMonth" + tempAnswerCounter + "_1", "In what month?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;   
   if (!textIsValidByID(form, "primaryHistoryViolationsYear" + tempAnswerCounter + "_1", "In what year?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValidByID(form, "primaryHistoryViolationsExplain" + tempAnswerCounter + "_1", emptyMessage + "the details?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankTFEVIOLATIONS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   var violationMonth = eval("form.primaryHistoryViolationsMonth" + tempAnswerCounter + "_1");
   violationMonth.selectedIndex = 0;
   form.elements['primaryHistoryViolationsYear' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryViolationsExplain' + tempAnswerCounter + '_1'].value = ""; 
   return;
}


function checkTFEDATES(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValidByID(form, "primaryHistoryDates" + tempAnswerCounter + "_1", "Give date(s):", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankTFEDATES(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDates' + tempAnswerCounter + '_1'].value = "";
   return;
}


function checkTFEEXPLAIN(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValidByID(form, "primaryHistoryExplain" + tempAnswerCounter + "_1", "Please explain:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankTFEEXPLAIN(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryExplain' + tempAnswerCounter + '_1'].value = "";
   return;
}


function checkPLEASEEXPLAIN(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValidByID(form, "primaryHistoryExplain" + tempAnswerCounter + "_1", "Please explain:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankPLEASEEXPLAIN(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryExplain' + tempAnswerCounter + '_1'].value = "";
   return;
}


function checkTFEDETAILS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValidByID(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please give details:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankTFEDETAILS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkLISTRELATIVES(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValid(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please provide list of relatives:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankLISTRELATIVES(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkTEXTRESPONSE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValid(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please provide value:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankTEXTRESPONSE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkBLOODPRESSURE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValid(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please provide your average blood pressure reading (systolic/diastolic).", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankBLOODPRESSURE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkCHOLESTEROL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValid(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please provide your current total cholesterol level.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankCHOLESTEROL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkCHOLRATIO(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValid(form, "primaryHistoryDetails" + tempAnswerCounter + "_1", "Please provide current total cholesterol to HDL ratio.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	return true;
}
function blankCHOLRATIO(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkSIMPLETRAVEL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
    if (!textIsValid1(form, "travelDetails" + tempAnswerCounter + "_1", "Please provide travel details:", divName))return false;
	return true;
}
function blankSIMPLETRAVEL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['travelDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkSIMPLEAIRCRAFT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
    if (!textIsValid1(form, "aviationDetails" + tempAnswerCounter + "_1", "Please provide aircraft details:", divName))return false;
	return true;
}
function blankSIMPLEAIRCRAFT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['aviationDetails' + tempAnswerCounter + '_1'].value = "";
   return;
}

function checkSIMPLEMILITARY(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
    if (!checkRadio(form, "militaryDetails" + tempAnswerCounter + "_1", "Please provide military details:", divName))return false;
	return true;
}
function blankSIMPLEMILITARY(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['militaryDetails' + tempAnswerCounter + '_1'].check = false;
   return;
}

function checkPLN1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
   if (!textIsValid(form, "primaryPerPhysician" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
   if (!textIsValid(form, "primaryPerPhysicianAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
   if (!textIsValid(form, "primaryPerPhysicianCity" + tempAnswerCounter + "_1", emptyMessage + "your doctor's city.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;

   if (!itemIsSelected(form, "primaryPerPhysicianState" + tempAnswerCounter + "_1", "Please select the doctor's state.", divName))return false;

   if (!textIsValid(form, "primaryPerPhysicianZip" + tempAnswerCounter + "_1", emptyMessage + "your doctor's zip code.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
   if (!isNumeric(form, "primaryPerPhysicianZip" + tempAnswerCounter + "_1", "Zip Code" + numberMessage, divName))return false;

   if (!textIsValid(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "1_1", emptyMessage + "the area code for doctor's phone.", divName))return false;
   if (!isNumeric(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + numberMessage, divName))return false;
   if (!textIsLongEnough(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + lengthMessage + "3 digits.", 3, divName))return false;
   if (!textIsValid(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "2_1", emptyMessage + "the doctor's phone city code.", divName))return false;
   if (!isNumeric(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + numberMessage, divName))return false;
   if (!textIsLongEnough(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + lengthMessage + "3 digits.", 3, divName))return false;
   if (!textIsValid(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "3_1", emptyMessage + "the doctor's phone number.", divName))return false;
   if (!isNumeric(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + numberMessage, divName))return false;
   if (!textIsLongEnough(form, "primaryPerPhysicianPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + lengthMessage + "4 digits.", 4, divName))return false;

   if (!isQSDateSelected(form, "primaryPerPhysicianDateLastSeen" + tempAnswerCounter, "date last seen.", divName))return false;

   if (!textIsValid(form, "primaryPerPhysicianReasonSeen" + tempAnswerCounter + "_1", emptyMessage + "your reason for visit.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;


	if (!checkYesNo1("primaryPerPhysicianListAnotherYesNo" + tempAnswerCounter + "_1", "Please check if you would like to list another physician.",divName)) return false; 

	var listAnotherPhysician = document.getElementsByName("primaryPerPhysicianListAnotherYesNo" + tempAnswerCounter + "_1");
	if (listAnotherPhysician[0].checked) {
		if (!textIsValid(form, "primaryPerPhysician2" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
		if (!textIsValid(form, "primaryPerPhysicianAddress2" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
		if (!textIsValid(form, "primaryPerPhysicianCity2" + tempAnswerCounter + "_1", emptyMessage + "your doctor's city.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;

		if (!itemIsSelected(form, "primaryPerPhysicianState2" + tempAnswerCounter + "_1", "Please select the doctor's state.", divName))return false;

		if (!textIsValid(form, "primaryPerPhysicianZip2" + tempAnswerCounter + "_1", emptyMessage + "your doctor's zip code.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
		if (!isNumeric(form, "primaryPerPhysicianZip2" + tempAnswerCounter + "_1", "Zip Code" + numberMessage, divName))return false;

		if (!textIsValid(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "1_1", emptyMessage + "the area code for doctor's phone.", divName))return false;
		if (!isNumeric(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "1_1", "The doctor's phone area code" + numberMessage, divName))return false;
		if (!textIsLongEnough(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "1_1", "The doctor's phone area code" + lengthMessage + "3 digits.", 3, divName))return false;
		if (!textIsValid(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "2_1", emptyMessage + "the doctor's phone city code.", divName))return false;
		if (!isNumeric(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "2_1", "The doctor's phone city code" + numberMessage, divName))return false;
		if (!textIsLongEnough(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "2_1", "The doctor's phone city code" + lengthMessage + "3 digits.", 3, divName))return false;
		if (!textIsValid(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "3_1", emptyMessage + "the doctor's phone number.", divName))return false;
		if (!isNumeric(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "3_1", "The doctor's phone number" + numberMessage, divName))return false;
		if (!textIsLongEnough(form, "primaryPerPhysicianPhone2" + tempAnswerCounter + "3_1", "The doctor's phone number" + lengthMessage + "4 digits.", 4, divName))return false;

		if (!isQSDateSelected(form, "primaryPerPhysicianDateLastSeen2" + tempAnswerCounter, "date last seen.", divName))return false;

		if (!textIsValid(form, "primaryPerPhysicianReasonSeen2" + tempAnswerCounter + "_1", emptyMessage + "your reason for visit.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
	}

   return true;
}
function blankPLN1DOCTOR(form, tempAnswerCounter)
{
	form.elements['primaryPerPhysician' + tempAnswerCounter + '_1'].value = "";  
	form.elements['primaryPerPhysicianAddress' + tempAnswerCounter + '_1'].value = "";  
	form.elements['primaryPerPhysicianSuite' + tempAnswerCounter + '_1'].value = ""; 
	form.elements['primaryPerPhysicianCity' + tempAnswerCounter + '_1'].value = ""; 
	form.elements['primaryPerPhysicianPhone' + tempAnswerCounter + '1_1'].value = ""; 
	form.elements['primaryPerPhysicianPhone' + tempAnswerCounter + '2_1'].value = ""; 
	form.elements['primaryPerPhysicianPhone' + tempAnswerCounter + '3_1'].value = ""; 
	form.elements['primaryPerPhysicianZip' + tempAnswerCounter + '_1'].value = ""; 
	form.elements['primaryPerPhysicianReasonSeen' + tempAnswerCounter + '_1'].value = ""; 
   
	var state = eval("form.primaryPerPhysicianState" + tempAnswerCounter + "_1");
	state.selectedIndex = 0;

	form.elements['primaryPerPhysicianDateLastSeen' + tempAnswerCounter + 'Day_1'].value = ""; 
	form.elements['primaryPerPhysicianDateLastSeen' + tempAnswerCounter + 'Year_1'].value = ""; 
	var dateLastSeen = eval("form.primaryPerPhysicianDateLastSeen" + tempAnswerCounter + "Month_1");
	dateLastSeen.selectedIndex = 0;

	var anotherPhys = eval("form.primaryPerPhysicianListAnotherYesNo" + tempAnswerCounter + "_1");
	anotherPhys[0].checked = false;
	anotherPhys[1].checked = false;

	form.elements['primaryPerPhysician2' + tempAnswerCounter + '_1'].value = "";  
	form.elements['primaryPerPhysicianAddress2' + tempAnswerCounter + '_1'].value = "";  
	form.elements['primaryPerPhysicianSuite2' + tempAnswerCounter + '_1'].value = ""; 
	form.elements['primaryPerPhysicianCity2' + tempAnswerCounter + '_1'].value = ""; 
	form.elements['primaryPerPhysicianPhone2' + tempAnswerCounter + '1_1'].value = ""; 
	form.elements['primaryPerPhysicianPhone2' + tempAnswerCounter + '2_1'].value = ""; 
	form.elements['primaryPerPhysicianPhone2' + tempAnswerCounter + '3_1'].value = ""; 
	form.elements['primaryPerPhysicianZip2' + tempAnswerCounter + '_1'].value = ""; 
	form.elements['primaryPerPhysicianReasonSeen2' + tempAnswerCounter + '_1'].value = ""; 

	var state = eval("form.primaryPerPhysicianState2" + tempAnswerCounter + "_1");
	state.selectedIndex = 0;

	form.elements['primaryPerPhysicianDateLastSeen2' + tempAnswerCounter + 'Day_1'].value = ""; 
	form.elements['primaryPerPhysicianDateLastSeen2' + tempAnswerCounter + 'Year_1'].value = ""; 
	var dateLastSeen = eval("form.primaryPerPhysicianDateLastSeen2" + tempAnswerCounter + "Month_1");
	dateLastSeen.selectedIndex = 0;
}

function checkPLN1MEDHIST(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
   if (!textIsValid(form, "primaryHistoryDiagnosis" + tempAnswerCounter + "_1", emptyMessage + "your diagnosis.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;

   if (!isQSDateSelected(form, "primaryHistoryOnsetDate" + tempAnswerCounter, "date of onset.", divName))return false;

   if (!textIsValid(form, "primaryHistoryTreatment" + tempAnswerCounter + "_1", emptyMessage + "your treatment.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;
   if (!textIsValid(form, "primaryHistoryDocName" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;

   if (!textIsValid(form, "primaryHistoryDocAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address.", tempAnswerCounter, questionNumber, subQuestionNumber, divName))return false;

   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", emptyMessage + "the area code for doctor's phone.", divName))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + numberMessage, divName))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + lengthMessage + "3 digits.", 3, divName))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", emptyMessage + "the doctor's phone city code.", divName))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + numberMessage, divName))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + lengthMessage + "3 digits.", 3, divName))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", emptyMessage + "the doctor's phone number.", divName))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + numberMessage, divName))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + lengthMessage + "4 digits.", 4, divName))return false;

   return true;
}
function blankPLN1MEDHIST(form, tempAnswerCounter)
{
	form.elements['primaryHistoryDiagnosis' + tempAnswerCounter + '_1'].value = "";  
	form.elements['primaryHistoryTreatment' + tempAnswerCounter + '_1'].value = "";  
	form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = ""; 

	form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '1_1'].value = ""; 
	form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '2_1'].value = ""; 
	form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '3_1'].value = ""; 
   
	form.elements['primaryHistoryOnsetDate' + tempAnswerCounter + 'Day_1'].value = ""; 
	form.elements['primaryHistoryOnsetDate' + tempAnswerCounter + 'Year_1'].value = ""; 
	var dateLastSeen = eval("form.primaryHistoryOnsetDate" + tempAnswerCounter + "Month_1");

	form.elements['primaryHistoryRecoveredDate' + tempAnswerCounter + 'Day_1'].value = ""; 
	form.elements['primaryHistoryRecoveredDate' + tempAnswerCounter + 'Year_1'].value = ""; 
	var dateLastSeen = eval("form.primaryHistoryRecoveredDate" + tempAnswerCounter + "Month_1");
}


function checkNW1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocName" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", emptyMessage + "the area code for doctor's phone.", 0))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + lengthMessage + "3 digits.", 3, 0))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", emptyMessage + "the doctor's phone city code.", 0))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + lengthMessage + "3 digits.", 3, 0))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", emptyMessage + "the doctor's phone number.", 0))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + lengthMessage + "4 digits.", 4, 0))return false;

   if (!isQSDateSelected(form, "primaryHistoryDocLastConsulted" + tempAnswerCounter, "date last consulted.", parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocReason" + tempAnswerCounter + "_1", emptyMessage + "your reason for visit.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocTreatment" + tempAnswerCounter + "_1", emptyMessage + "your treatment.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   return true;
}
function blankNW1DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocTreatment' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocReason' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '1_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '2_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '3_1'].value = ""; 
}

function checkNW2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryDocName" + tempAnswerCounter + "_1", emptyMessage + "your doctor's name.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocAddress" + tempAnswerCounter + "_1", emptyMessage + "your doctor's address.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocIllnessTreatment" + tempAnswerCounter + "_1", emptyMessage + "your treatment.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1", emptyMessage + "Duration of Condition/Treatment .", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", emptyMessage + "the area code for doctor's phone.", 0))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "1_1", "The doctor's phone area code" + lengthMessage + "3 digits.", 3, 0))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", emptyMessage + "the doctor's phone city code.", 0))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "2_1", "The doctor's phone city code" + lengthMessage + "3 digits.", 3, 0))return false;
   if (!textIsValid(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", emptyMessage + "the doctor's phone number.", 0))return false;
   if (!isNumeric(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocPhone" + tempAnswerCounter + "3_1", "The doctor's phone number" + lengthMessage + "4 digits.", 4, 0))return false;

   if (!itemIsSelected(form, "primaryHistoryDocMonth" + tempAnswerCounter + "_1", emptyMessage + "the onset month.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocYear" + tempAnswerCounter + "_1", emptyMessage + "the onset year.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!isNumeric(form, "primaryHistoryDocYear" + tempAnswerCounter + "_1", "The onset year" + numberMessage, 0))return false;
   if (!textIsLongEnough(form, "primaryHistoryDocYear" + tempAnswerCounter + "_1", "The onset year" + lengthMessage + "4 digits.", 4, 0))return false;
   
   return true;
}
function blankNW2DOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryDocName' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocAddress' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryDocIllnessTreatment' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocDuration' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '1_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '2_1'].value = ""; 
   form.elements['primaryHistoryDocPhone' + tempAnswerCounter + '3_1'].value = ""; 
}

function checkNWWEIGHT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryWeightYearAgo" + tempAnswerCounter + "_1", emptyMessage + "your weight 1 year ago.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryReasonForLoss" + tempAnswerCounter + "_1", emptyMessage + "your reason for weight loss.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   return true;
}
function blankNWWEIGHT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryWeightYearAgo' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryReasonForLoss' + tempAnswerCounter + '_1'].value = "";  
}

// JCV [06/10/2009] Added to support new NY requirements
function checkNW2AIRCRAFT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
	if (!checkYesNo1("aviationYesNo" + tempAnswerCounter + "_1", "Please check if you fly an aircraft.",divName)) return false; 

	var aviationField = document.getElementsByName("aviationYesNo" + tempAnswerCounter + "_1");
	if (aviationField[0].checked) {
		if (!textIsValid1(form, "aviationDetails" + tempAnswerCounter + "_1", "Please provide aircraft details:", "Aircraft"+tempAnswerCounter)) {
			showDiv(divName);
			showDiv("Aircraft"+tempAnswerCounter);
			form.elements["aviationDetails" + tempAnswerCounter + "_1"].focus();
			return false;
		}
	}
	
    return true;
}
function blankNW2AIRCRAFT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	   form.elements['aviationDetails' + tempAnswerCounter + '_1'].value = "";
}

function checkNW1DRIVERS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
	if (!checkYesNo1("primaryHistoryDriverDetail1" + tempAnswerCounter + "_1", "Please check if, in the last 5 years, you have had a DUI, DWI, Reckless Driving or revocation or suspension of your driver's license.",divName)) return false; 

	if (!textIsValid1(form, "primaryHistoryDriverDetail2" + tempAnswerCounter + "_1", "Please provide the number of motor vehicle tickets in the last 3 years.", divName)) {
		showDiv(divName);
		form.elements["primaryHistoryDriverDetail2" + tempAnswerCounter + "_1"].focus();
		return false;
	}
	
    return true;
}
function blankNW1DRIVERS(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	   form.elements['primaryHistoryDriverDetail2' + tempAnswerCounter + '_1'].value = "";
}


function checkWR1TRAVEL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv" + tempAnswerCounter;
    if (!textIsValid1(form, "primaryHistoryTravelDestination1" + tempAnswerCounter + "_1", "Please provide the destination.", divName))return false;
    if (!textIsValid1(form, "primaryHistoryTravelNumberOfTrips1" + tempAnswerCounter + "_1", "Please enter the number of trips.", divName))return false;
    if (!textIsValid1(form, "primaryHistoryTravelDurationOfTrips1" + tempAnswerCounter + "_1", "Please enter the duration of trips.", divName))return false;
	if (!textIsValid1(form, "primaryHistoryTravelPurpose1" + tempAnswerCounter + "_1", "Please enter the purpose for travel.", divName))return false;

	if (!checkYesNo1("primaryHistoryTravelAnotherYesNo" + tempAnswerCounter + "_1", "Please select whether of not you have another destination.",divName)) {
		return false;
	}
	
	var divName2 = "AnotherTravelDiv" + tempAnswerCounter;
	var historyTravelYesNo = form.elements["primaryHistoryTravelAnotherYesNo"+ tempAnswerCounter + "_1"];
	if (historyTravelYesNo[0].checked) {
	    if (!textIsValid1(form, "primaryHistoryTravelDestination2" + tempAnswerCounter + "_1", "Please provide the destination.", divName2))return false;
	    if (!textIsValid1(form, "primaryHistoryTravelNumberOfTrips2" + tempAnswerCounter + "_1", "Please enter the number of trips.", divName2))return false;
	    if (!textIsValid1(form, "primaryHistoryTravelDurationOfTrips2" + tempAnswerCounter + "_1", "Please enter the duration of trips.", divName2))return false;
		if (!textIsValid1(form, "primaryHistoryTravelPurpose2" + tempAnswerCounter + "_1", "Please enter the purpose for travel.", divName2))return false;
		
	}
	
	if (!checkYesNo1("primaryHistoryTravelPlansYesNo" + tempAnswerCounter + "_1", 
			"Please select whether or not you plan to travel in the next year.", "primaryHistoryTravelPlansDiv" + tempAnswerCounter)) {
		return false;
	}
	var tempCheckBox =form.elements['primaryHistoryTravelPlansYesNo' + tempAnswerCounter + '_1']; 
	if (tempCheckBox[0].checked) {
	    if (!textIsValid1(form, "primaryHistoryTravelPlansExplain" + tempAnswerCounter + "_1", "Please provide an explanation.", "primaryHistoryTravelPlansDiv" + tempAnswerCounter))return false;
	}
	
	return true;
}
function blankWR1TRAVEL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	              
   form.elements['primaryHistoryTravelDestination1' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelPurpose1' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelDurationOfTrips1' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelNumberOfTrips1' + tempAnswerCounter + '_1'].value = "";
   
   form.elements['primaryHistoryTravelDestination2' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelPurpose2' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelDurationOfTrips2' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelNumberOfTrips2' + tempAnswerCounter + '_1'].value = "";

   form.elements['primaryHistoryTravelPlansExplain' + tempAnswerCounter + '_1'].value = "";

   return;
}


function checkTFETRAVEL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
    if (!textIsValidByID(form, "primaryHistoryTravelDestination" + tempAnswerCounter + "_1", "Destination:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
    if (!itemIsSelected(form, "primaryHistoryTravelMonth" + tempAnswerCounter + "_1", "In what month?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;   
    if (!textIsValidByID(form, "primaryHistoryTravelYear" + tempAnswerCounter + "_1", "In what year?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	if (!textIsValidByID(form, "primaryHistoryTravelPurpose" + tempAnswerCounter + "_1", "Purpose of travel:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
    if (!textIsValidByID(form, "primaryHistoryTravelStayLength" + tempAnswerCounter + "_1", "Length of stay:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	if (!textIsValidByID(form, "primaryHistoryTravelOften" + tempAnswerCounter + "_1", "How often:", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	
	return true;
}
function blankTFETRAVEL(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	              
   form.elements['primaryHistoryTravelDestination' + tempAnswerCounter + '_1'].value = "";
   var travelMonth = eval("form.primaryHistoryTravelMonth" + tempAnswerCounter + "_1");
   travelMonth.selectedIndex = 0;
   form.elements['primaryHistoryTravelYear' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelPurpose' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelStayLength' + tempAnswerCounter + '_1'].value = "";
   form.elements['primaryHistoryTravelOften' + tempAnswerCounter + '_1'].value = "";


   return;
}

function checkMEDICATION4(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "medication" + tempAnswerCounter + "_1", emptyMessage + "the type of medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "medicationUse" + tempAnswerCounter + "_1", emptyMessage + "the reason for medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "medicationDosage" + tempAnswerCounter + "_1", "What is the dosage of the medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "medicationFrequency" + tempAnswerCounter + "_1", "How often do you take this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (form.medicationYesNo2_1[0].checked) {
	   if (!textIsValid(form, "medication2" + tempAnswerCounter + "_1", emptyMessage + "the type of medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	   if (!textIsValid(form, "medicationUse2" + tempAnswerCounter + "_1", emptyMessage + "the reason for medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	   if (!textIsValid(form, "medicationDosage2" + tempAnswerCounter + "_1", "What is the dosage of the medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	   if (!textIsValid(form, "medicationFrequency2" + tempAnswerCounter + "_1", "How often do you take this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }
   
   if (form.medicationYesNo3_1[0].checked) {
	   if (!textIsValid(form, "medication3" + tempAnswerCounter + "_1", emptyMessage + "the type of medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	   if (!textIsValid(form, "medicationUse3" + tempAnswerCounter + "_1", emptyMessage + "the reason for medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	   if (!textIsValid(form, "medicationDosage3" + tempAnswerCounter + "_1", "What is the dosage of the medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
	   if (!textIsValid(form, "medicationFrequency3" + tempAnswerCounter + "_1", "How often do you take this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }
   
   return true;
}

function blankMEDICATION4(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['medication' + tempAnswerCounter + '_1'].value = "";
  
   form.elements['medicationUse' + tempAnswerCounter + '_1'].value = "";
  
   form.elements['medicationDosage' + tempAnswerCounter + '_1'].value = "";
   
   form.elements['medicationFrequency' + tempAnswerCounter + '_1'].value = "";
}

function checkMEDICATION3(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryMedication" + tempAnswerCounter + "_1", emptyMessage + "the type of medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!textIsValid(form, "primaryHistoryMedicationReason" + tempAnswerCounter + "_1", emptyMessage + "the reason for medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   if (!itemIsSelected(form, "primaryHistoryMedicationMonth" + tempAnswerCounter + "_1", "In what month did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   
   if (!textIsValid(form, "primaryHistoryMedicationYear" + tempAnswerCounter + "_1", "In what year did you begin taking this medication?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   return true;
}

function blankMEDICATION3(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryMedication' + tempAnswerCounter + '_1'].value = "";
  
   form.elements['primaryHistoryMedicationReason' + tempAnswerCounter + '_1'].value = "";
  
   var medMonth = eval("form.primaryHistoryMedicationMonth" + tempAnswerCounter + "_1");
   medMonth.selectedIndex = 0;
   form.elements['primaryHistoryMedicationYear' + tempAnswerCounter + '_1'].value = "";
}


function checkTOBACCO(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryTobaccoDate" + tempAnswerCounter + "_1", emptyMessage + "your tobacco date?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoType" + tempAnswerCounter + "_1", emptyMessage + "your type of tabacco?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoFrequency" + tempAnswerCounter + "_1", emptyMessage + "your tobacco frequency?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
   return true;
}
function blankTOBACCO(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryTobaccoDate' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryTobaccoType' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryTobaccoFrequency' + tempAnswerCounter + '_1'].value = "";  
}

function checkTOBACCO2(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv"+tempAnswerCounter;
	if (!checkYesNo1("tobaccoLast12Months_1", "Please check if you have used tobacco in the last 12 months.",divName)) return false; 

    if (  
    		form.useCigarettes_1.checked == 1  || 
			form.usePipe_1.checked == 1  || 
			form.useCigars_1.checked == 1  || 
			form.useChewingTobacco_1.checked == 1  || 
			form.useSnuff_1.checked == 1  || 
			form.useOtherTobacco_1.checked == 1  ||
			form.useNicotine_1.checked == 1 
		  )
	{
		// return true;
	}
	else
	{
			showDiv(divName);
		
			form.useCigarettes_1.focus();
			alert("Please check below each of these options (If more than one, check each appropriate box):");
			return false;
	}
	
    if (elementExists(form, "tobaccoAmountFrequency_1")) {
    	if (!textIsValid1(form, "tobaccoAmountFrequency_1", emptyMessage + "Tobacco amount and frequency.",divName)) return false;
    }
    
    if (elementExists(form, "tobaccoLastUsedDateMonth_1")) {
		if (!isQSDateSelected(form, "tobaccoLastUsedDate", emptyMessage + "Tobacco Last Used Date", false,false,false, divName))return false;
    }

	return true;
}
function blankTOBACCO2(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	form.tobaccoLast12Months_1.checked = false;
	form.useCigarettes_1.checked= false;
	form.usePipe_1.checked= false;
	form.useCigars_1.checked= false;
	form.useChewingTobacco_1.checked= false;
	form.useSnuff_1.checked= false;
	form.useOtherTobacco_1.checked= false;
	form.useNicotine_1.checked= false;
	
    if (elementExists(form, "tobaccoAmountFrequency_1")) {
    	form.tobaccoAmountFrequency_1.value = "";
    }
}

function checkTOBACCO3(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv"+tempAnswerCounter;
	if (!checkYesNo1("tobaccoLast12Months_1", "Please check if you have used tobacco in the last 12 months.",divName)) return false; 

    if (  
    		form.useCigarettes_1.checked == 1  || 
			form.usePipe_1.checked == 1  || 
			form.useCigars_1.checked == 1  || 
			form.useChewingTobacco_1.checked == 1  || 
			form.useSnuff_1.checked == 1  || 
			form.useOtherTobacco_1.checked == 1  ||
			form.useNicotine_1.checked == 1 
		  )
	{
		// return true;
	}
	else
	{
			showDiv(divName);
		
			form.useCigarettes_1.focus();
			alert("Please check below each of these options (If more than one, check each appropriate box):");
			return false;
	}
	
    if (elementExists(form, "tobaccoQuantity_1")) {
    	if (!textIsValid1(form, "tobaccoQuantity_1", emptyMessage + "Tobacco quantity.",divName)) return false;
    }
    
    if (elementExists(form, "tobaccoYears_1")) {
    	if (!textIsValid1(form, "tobaccoYears_1", emptyMessage + "Tobacco years.",divName)) return false;
    	if (!isNumeric(form, "tobaccoYears_1", "Please enter number of years using tobacco.", 0))return false;
    }
    
    if (elementExists(form, "tobaccoFrequency_1")) {
    	if (!textIsValid1(form, "tobaccoFrequency_1", emptyMessage + "Tobacco frequency.",divName)) return false;
    }
    
    if (elementExists(form, "tobaccoLastUsedDateMonth_1")) {
		if (!isQSDateSelected(form, "tobaccoLastUsedDate", emptyMessage + "Tobacco Last Used Date", false,false,false, divName))return false;
    }

	return true;
}
function blankTOBACCO3(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	form.tobaccoLast12Months_1.checked = false;
	form.useCigarettes_1.checked= false;
	form.usePipe_1.checked= false;
	form.useCigars_1.checked= false;
	form.useChewingTobacco_1.checked= false;
	form.useSnuff_1.checked= false;
	form.useOtherTobacco_1.checked= false;
	form.useNicotine_1.checked= false;
	
   	form.tobaccoQuantity_1.value = "";
   	form.tobaccoFrequency_1.value = "";
   	form.tobaccoYears_1.value = "";
}

function checkDRUGUSE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
	var divName = "YesDiv"+tempAnswerCounter;
    if (elementExists(form, "drugType_1")) {
    	if (!textIsValid1(form, "drugType_1", emptyMessage + "Drug Type(s).",divName)) return false;
    }
    
    if (elementExists(form, "drugAmount_1")) {
    	if (!textIsValid1(form, "drugAmount_1", emptyMessage + "Drug Amount(s).",divName)) return false;
    }
    
    if (elementExists(form, "drugLastUsedDateMonth_1")) {
		if (!isQSDateSelected(form, "drugLastUsedDate", emptyMessage + "Drug Last Used Date", false,false,false, divName))return false;
    }

	return true;
}
function blankDRUGUSE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   	form.drugType_1.value = "";
   	form.drugAmount_1.value = "";
}

function checkSBLINICPROD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryTobaccoType" + tempAnswerCounter + "_1", emptyMessage + "your type of tabacco?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
 
   if (!itemIsSelected(form, "primaryHistoryNicotineOtherMonth" + tempAnswerCounter + "_1", "month last used?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;   
   
   if (!textIsValid(form, "primaryHistoryNicotineOtherYear" + tempAnswerCounter + "_1", emptyMessage + "year last used?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoFrequency" + tempAnswerCounter + "_1", emptyMessage + "your tobacco frequency?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
   if (!textIsValid(form, "primaryHistoryTobaccoDuration" + tempAnswerCounter + "_1", emptyMessage + "your tobacco duration?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
   
   return true;
}
function blankSBLINICPROD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryTobaccoType' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryNicotineOtherYear' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryTobaccoFrequency' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryTobaccoDuration' + tempAnswerCounter + '_1'].value = "";  
}



function checkFLTOBACCO(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryTobaccoDate" + tempAnswerCounter + "_1", emptyMessage + "your tobacco date?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoType" + tempAnswerCounter + "_1", emptyMessage + "your type of tabacco?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoFrequency" + tempAnswerCounter + "_1", emptyMessage + "your tobacco frequency?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
 
   var past12YesNo = eval("form.primaryHistoryTobacco12Months" + tempAnswerCounter + "_1");
   if (!past12YesNo[0].checked && !past12YesNo[1].checked)
   {

      alert("Please select whether or not you have, within the past 12 months, used any form of tabacco or nicotine products.");
      past12YesNo[0].focus();
      return false;
   }
   
   return true;
}
function blankFLTOBACCO(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryTobaccoDate' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryTobaccoType' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryTobaccoFrequency' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryTobacco12Months' + tempAnswerCounter + '_1'].value = "";  

}

function checkFLSMOKE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!textIsValid(form, "primaryHistoryTobaccoDate" + tempAnswerCounter + "_1", emptyMessage + "your tobacco date?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoType" + tempAnswerCounter + "_1", emptyMessage + "your type of tabacco?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryTobaccoFrequency" + tempAnswerCounter + "_1", emptyMessage + "your tobacco frequency?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;  
 
   var past12YesNo = eval("form.primaryHistoryTobacco12Months" + tempAnswerCounter + "_1");
   if (!past12YesNo[0].checked && !past12YesNo[1].checked)
   {

      alert("Please select whether or not you have, within the past 12 months, used any form of tabacco or nicotine products.");
      past12YesNo[0].focus();
      return false;
   }
   
   return true;
}
function blankFLSMOKE(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryTobaccoDate' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryTobaccoType' + tempAnswerCounter + '_1'].value = ""; 
   form.elements['primaryHistoryTobaccoFrequency' + tempAnswerCounter + '_1'].value = "";  
   form.elements['primaryHistoryTobacco12Months' + tempAnswerCounter + '_1'].value = "";  

}




function checkRLHAZARD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if(!(form.elements['primaryHistoryBallooning_1'].checked ||form.elements['primaryHistoryScuba_1'].checked ||form.elements['primaryHistoryOther_1'].checked))
	{
	   alert('Please select one of the scuba/ballooning/other options');
	   return false;
	}
   return true;
}
function blankRLHAZARD(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryBallooning_1'].checked= "";  
   form.elements['primaryHistoryScuba_1'].checked = ""; 
   form.elements['primaryHistoryOther_1'].checked = "";  
   form.elements['primaryHistoryBallooning_1'].value= "";  
   form.elements['primaryHistoryScuba_1'].value = ""; 
   form.elements['primaryHistoryOther_1'].value = "";  
}



function checkRLMOTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!itemIsSelected(form, "primaryHistoryMotor_1", emptyMessage + "your motor?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   return true;
}
function blankRLMOTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryMotor_1'].selectedIndex = 0;   
}

function checkRLWEIGHT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   if (!itemIsSelected(form, "primaryHistoryWeight_1", emptyMessage + "your weight?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryWeightAmount_1", emptyMessage + "your weight?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!isNumeric(form, "primaryHistoryWeightAmount_1", emptyMessage + "your weight in lbs?", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;

   return true;
}
function blankRLWEIGHT(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   form.elements['primaryHistoryWeight_1'].selectedIndex = 0;   
   form.elements['primaryHistoryWeightAmount_1'].value = ""; 
}












// ------------------------------------------------
// returns false if there is anything but numeric digits
// returns true if there is nothing in the box or if
// there are numeric digits
// ------------------------------------------------
function checkNumericSimple(form, elementName, message)
{
   var temp = form.elements[elementName];
   if(temp.value.length < 1)
   {
      return true;
   }
   var tempValue = strip(temp);
   if (isNaN(tempValue))
   {
      alert(message);
      temp.focus();
      return false;
   }
   return true;
}

function incomeChanged(form, name)
{
   var field = form.elements[name];
   var tempValue = strip(field);
   if (tempValue.length > 0)
   {
      if (name == "primaryIncome_1")
      {
         // Monthly Amount entered
         form.elements['primaryAnnualIncome_1'].value = parseInt(tempValue) * 12;
      }
      else
      {
         // Annual Amount entered
         form.elements['primaryIncome_1'].value = parseInt(tempValue) / 12;
         strip(form.elements['primaryIncome_1']);
      }
   }
}
// The following check email functions are added by Huachao Li on 10-28-02.
// isEmail only checks if the string is a valid email string
function isEmail(str) {
  // is RegExp supported?
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported) return (str.indexOf(".") > 2) && (str.indexOf("@")> 0);
  var r1 = new
  RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

// checkemail = checkElementExist() + isEmail(elementvlaue) + focusElemntOnFail
function checkEmail(form, elementName, emptyMessage)
{
   if (elementExists(form, elementName)){
    var ele = form.elements[elementName];
    var value = ele.value;
    if (isEmail(value))
    {
        return true;
    }
    else
    {
        alert(emptyMessage);
        ele.focus();
        return false;
    }
   }
}

//
// JCV [09/25/2009] new function to check effectiveDate < paramedDate
function validEffectiveDateVsParamedDate(form, paramedObject, effectiveDateObject)
{
	var pDateValue = paramedObject.value;
	var pPos = pDateValue.indexOf(",");

	var eDateValue = effectiveDateObject.value;
	var ePos = eDateValue.indexOf(",");

	// format looks like this: Monday, February 23, 2009
	  
	// toss weekday
	var pSubMonthDayYear = pDateValue.substring(pPos + 2, pDateValue.length);
	var eSubMonthDayYear = eDateValue.substring(ePos + 2, eDateValue.length);
	
	var paramedDate = new Date(pSubMonthDayYear);
	var effectiveDate = new Date(eSubMonthDayYear);
  
	if (paramedDate > effectiveDate)
	{ 
		alert("Please select an Effective Date that is equal to or after your Paramed Date.");
		form.requestedEffectiveDateBasic_1.focus();
		return false;
	}
	return true;
}

function effectiveDateIsValid(form, pD, eD)
{
  var temp1 = form.elements[pD];
  var pDateValue = temp1.value;
  var pPos = pDateValue.indexOf(",");

  var temp2 = form.elements[eD];
  var eDateValue = temp2.value;
  var ePos = eDateValue.indexOf(",");

  // format looks like this: Monday, February 23, 2009
  
  // toss weekday
  var pSubMonthDayYear = pDateValue.substring(pPos + 2, pDateValue.length);
  var eSubMonthDayYear = eDateValue.substring(ePos + 2, eDateValue.length);

  // position of space
  var pPos2 = pSubMonthDayYear.indexOf(" ");
  var ePos2 = eSubMonthDayYear.indexOf(" ");

  // grab month
  var pSubMonth = pSubMonthDayYear.substring(0, pPos2);
  var eSubMonth = eSubMonthDayYear.substring(0, ePos2);

  // grab Day, Year
  var pLmdy = pSubMonthDayYear.length;
  var pSubDayYear = pSubMonthDayYear.substring(pPos2, pLmdy);

  var eLmdy = eSubMonthDayYear.length;
  var eSubDayYear = eSubMonthDayYear.substring(ePos2, eLmdy);

  // grab Day
  var pPos3 = pSubDayYear.indexOf(",");
  var pSubDay = pSubDayYear.substring(0,pPos3);

  var ePos3 = eSubDayYear.indexOf(",");
  var eSubDay = eSubDayYear.substring(0,ePos3);

  // grab Year
  var pLdy = pSubDayYear.length;
  var pSubYear = pSubDayYear.substring(pPos3 + 1, pLdy);

  var eLdy = eSubDayYear.length;
  var eSubYear = eSubDayYear.substring(ePos3 + 1, eLdy);

   // Year to int
   var iPYear = parseInt(pSubYear);
   var iEYear = parseInt(eSubYear);

// DEBUGGING
// alert("MonthDayYear = " + pSubMonthDayYear);
// alert("MonthDayYear = " + eSubMonthDayYear);
// alert("pPos2 = " + pPos2);
// alert("ePos2 = " + ePos2);
// alert("Month = " + pSubMonth);
// alert("Month = " + eSubMonth);
// alert("DayYear = " + pSubDayYear);
// alert("DayYear = " + eSubDayYear);
// alert(pSubDay);
// alert(eSubDay);
// alert(pSubYear);
// alert(eSubYear);
// alert("iPYear = " + iPYear);
// alert("iEYear = " + iEYear);


	if (iPYear > iEYear)
	{ 
		alert("Please select an Effective Date that is past your Paramed Date or equal to your Paramed Date!");
		return false;
	}

   // Day to int
   var iPDay = parseInt(pSubDay);
   var iEDay = parseInt(eSubDay);

// alert("iPDay = " + iPDay);
// alert("iEday = " + iEDay);


   // Month to int
   var iPMonth = 0;
   var iEMonth = 0;

   var pPosJan = pSubMonth.indexOf("January");
   var pPosFeb = pSubMonth.indexOf("February");
   var pPosMar = pSubMonth.indexOf("March");
   var pPosApr = pSubMonth.indexOf("April");
   var pPosMay = pSubMonth.indexOf("May");
   var pPosJun = pSubMonth.indexOf("June");
   var pPosJul = pSubMonth.indexOf("July");
   var pPosAug = pSubMonth.indexOf("August");
   var pPosSep = pSubMonth.indexOf("September");
   var pPosOct = pSubMonth.indexOf("October");
   var pPosNov = pSubMonth.indexOf("November");
   var pPosDec = pSubMonth.indexOf("December");

   var ePosJan = eSubMonth.indexOf("January");
   var ePosFeb = eSubMonth.indexOf("February");
   var ePosMar = eSubMonth.indexOf("March");
   var ePosApr = eSubMonth.indexOf("April");
   var ePosMay = eSubMonth.indexOf("May");
   var ePosJun = eSubMonth.indexOf("June");
   var ePosJul = eSubMonth.indexOf("July");
   var ePosAug = eSubMonth.indexOf("August");
   var ePosSep = eSubMonth.indexOf("September");
   var ePosOct = eSubMonth.indexOf("October");
   var ePosNov = eSubMonth.indexOf("November");
   var ePosDec = eSubMonth.indexOf("December");

   
   if (pPosJan >= 0)iPMonth = 1;
   else if(pPosFeb >= 0)iPMonth = 2;   
   else if(pPosMar >= 0)iPMonth = 3;   
   else if(pPosApr >= 0)iPMonth = 4;   
   else if(pPosMay >= 0)iPMonth = 5;   
   else if(pPosJun >= 0)iPMonth = 6;   
   else if(pPosJul >= 0)iPMonth = 7;   
   else if(pPosAug >= 0)iPMonth = 8;   
   else if(pPosSep >= 0)iPMonth = 9;   
   else if(pPosOct >= 0)iPMonth = 10;   
   else if(pPosNov >= 0)iPMonth = 11;   
   else if(pPosDec >= 0)iPMonth = 12;   

   if (ePosJan >= 0)iPMonth = 1;
   else if(ePosFeb >= 0)iEMonth = 2;   
   else if(ePosMar >= 0)iEMonth = 3;   
   else if(ePosApr >= 0)iEMonth = 4;   
   else if(ePosMay >= 0)iEMonth = 5;   
   else if(ePosJun >= 0)iEMonth = 6;   
   else if(ePosJul >= 0)iEMonth = 7;   
   else if(ePosAug >= 0)iEMonth = 8;   
   else if(ePosSep >= 0)iEMonth = 9;   
   else if(ePosOct >= 0)iEMonth = 10;   
   else if(ePosNov >= 0)iEMonth = 11;   
   else if(ePosDec >= 0)iEMonth = 12;   

// alert("iMonth = " + iPMonth);
// alert("iMonth = " + iEMonth);

	if (iPMonth > iEMonth)
	{ 
		alert("Please select a Effective Date that is past your Paramed Date or equal to your Paramed Date!");
		return false;
	}

	if (iPMonth == iEMonth)
	{ 
		if (iPDay > iEDay)
		{
			alert("Please select a Effective Date that is past your Paramed Date or equal to your Paramed Date!");
			return false;
		}
	}
	return true;

}



// This function checks the date format(mm/yy or mm/yyyy). Authored by Tao Liu
// on 9/30/02. Last Modified on 10/02/02.
function dateIsValid(form, elementName, emptyMessage, yesDivNumber, questionNumber, subQuestionNumber, parentID)
{
  var temp = form.elements[elementName];
  var dateValue = temp.value;
  var pos = dateValue.indexOf("/");
  if(pos<=0)
  {
      if(yesDivNumber > 0)
      {
         hideAll();
         if(questionNumber!=null){
            showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
            showDiv("YesDiv"+parentID);
         }
         showDiv("YesDiv" + yesDivNumber);
      }
      alert(emptyMessage);
      temp.focus();
      return false;
  }

  // Check substring before '/' whether between 1 and 12.
  var subValue1 = dateValue.substring(0,pos);
  var subValueInt1 = parseInt(subValue1,10);
  if (isNaN(subValue1) || subValueInt1 < 1 || subValueInt1 > 12 )
  {
     if(yesDivNumber > 0)
     {
        hideAll();
        if(questionNumber!=null){
           showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
           showDiv("YesDiv"+parentID);
        }
        showDiv("YesDiv" + yesDivNumber);
     }
    alert("Month must be numeric(between 1-12).");
    temp.focus();
    return false;
  }

  // check substring after '/' whether 'YY' or "YYYY" format.
  var subValue2 = dateValue.substring(pos+1, dateValue.length);
  subValue2 = subValue2.replace(" ", "");
  var subValueInt2 = parseInt(subValue2,10);
  if (isNaN(subValue2) || subValueInt2 < 0 || (subValueInt2>99 && subValueInt2<1000) || subValueInt2>9999 ||(subValue2.length != 2 &&subValue2.length != 4))
  {
    if(yesDivNumber > 0)
    {
       hideAll();
       if(questionNumber!=null){
          showDiv("subDiv_"+questionNumber+"_"+subQuestionNumber);
          showDiv("YesDiv"+parentID);
       }
       showDiv("YesDiv" + yesDivNumber);
    }
    alert("Year must be numeric(Like xx or xxxx).");
    temp.focus();
    return false;
  }
  return true;
}


function checkFULLDOCTOR(form, tempAnswerCounter, questionNumber, subQuestionNumber, parentID)
{
   // Check Doctor Info
   if (!textIsValid(form, "primaryHistoryDate" + tempAnswerCounter + "_1", emptyMessage + "a date for your doctor visit.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!checkdate(form, "primaryHistoryDate" + tempAnswerCounter + "_1",  tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocDetails" + tempAnswerCounter + "_1", emptyMessage + "the Details of your docotor visit.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocDuration" + tempAnswerCounter + "_1", emptyMessage + "the duration of your condition.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   if (!textIsValid(form, "primaryHistoryDocResult" + tempAnswerCounter + "_1", emptyMessage + "the result of your condition.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
  
   // Check Medication Info
   var option1 = eval("form.primaryHistoryMedicationPrescribedYesNo" + tempAnswerCounter + "_1[0]");
   var option2 = eval("form.primaryHistoryMedicationPrescribedYesNo" + tempAnswerCounter + "_1[1]");
   if (!option1.checked && !option2.checked)
   {
      // Force user to pick yes or no, whether or not any medication was
		// prescribed
      changeDiv("YesDiv" + tempAnswerCounter, "block");
      alert("Please select whether or not any medication was prescribed.");
      option1.focus();
      return false;
   }
   else if (option1.checked)
   {
      // Yes was checked, validate medication - open up outer div and
		// medication div
      changeDiv("YesDiv" + tempAnswerCounter, "block");
      changeDiv("prescribedDiv" + tempAnswerCounter, "block");
      
      if (!textIsValid(form, "primaryHistoryPrescriptionDrug" + tempAnswerCounter + "_1", emptyMessage + "complete name of prescription.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!textIsValid(form, "primaryHistoryPrescriptionDosage" + tempAnswerCounter + "_1", emptyMessage + "dosage for your prescription.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!textIsValid(form, "primaryHistoryPrescriptionOften" + tempAnswerCounter + "_1", emptyMessage + "how often you take your prescription.", tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!checkdate(form, "primaryHistoryPrescriptionDateStarted" + tempAnswerCounter + "_1",  tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
      if (!checkdate(form, "primaryHistoryPrescriptionDateEnded" + tempAnswerCounter + "_1",  tempAnswerCounter, questionNumber, subQuestionNumber, parentID))return false;
   }

   return true;
}

// Show the questions associated with a "yes" answer in the
// columnar questions and change the colors for easy of navigation
function showYesDiv(theName)
{
   hideAll();
   changeDiv(theName, "block");
}

// CONSTANTS
var BLANK   = 1;
var DETAILS = 2;
var DOCTOR  = 3;
var TRAVEL  = 4;
var HAZARD  = 5;
var emptyMessage = "Please fill in ";
var emptyMessageSelect = "Please select ";
var numberMessage = " must contain only numeric digits.";
var lengthMessage = " must contain ";

function changeFieldBirthStateOptions(form)
{
   if (form.primaryBirthState_1[form.primaryBirthState_1.selectedIndex].value == "Other*")
      changeDiv("birthStateDiv", "block");
   else
      changeDiv("birthStateDiv", "none");
}
function simpleSelectOptionChange(list, divName, trigger)
{
   if (list[list.selectedIndex].value == trigger)
      changeDiv(divName, "block");
   else
      changeDiv(divName, "none");
}

function checkRadio(form, name, alertMsg, divToShowName){
   var myRadio=form.elements[name]
   if(!isRadioSelected(myRadio)){
      alert(alertMsg);
      if(divToShowName!=null){
         showDiv(divToShowName);
      }
      myRadio[0].focus();
      return false;
   }
   return true;
}

function isQsPhoneValid(form, QSPhoneName, alertMsg, divToShow){
   if(divToShow!=null){
      showDiv(divToShow);
   }
   if (!isNumeric(form, QSPhoneName+"1_1", "Please enter phone area code of "+alertMsg+".", 0))return false;
   if (!isNumeric(form, QSPhoneName+"2_1", "Please enter phone prefix of "+alertMsg+".", 0))return false;
   if (!isNumeric(form, QSPhoneName+"3_1", "Please enter phone suffix of "+alertMsg+".", 0))return false;

   if(form.elements[QSPhoneName+"1_1"].value.length!=3){
      alert("Please enter three (3) digits for "+alertMsg+" phone area code.");
      form.elements[QSPhoneName+"1_1"].focus();
      return false;
   }

   if(form.elements[QSPhoneName+"2_1"].value.length!=3){
      alert("Please enter three (3) digits for "+alertMsg+" phone prefix.");
      form.elements[QSPhoneName+"2_1"].focus();
      return false;
   }
   if(form.elements[QSPhoneName+"3_1"].value.length!=4){
      alert("Please enter three (4) digits for "+alertMsg+" phone suffix.");
      form.elements[QSPhoneName+"3_1"].focus();
      return false;
   }

   return true;
}

function isQSDateSelected(form, QSDate, alertMsg, hideDay, hideMonth, hideYear, divToShow){
   if(divToShow!=null){
      showDiv(divToShow);
   }

   if(hideDay==null || !hideDay){
      var day=form.elements[QSDate+"Day_1"];
      if(day.selectedIndex<=0){
         alert("Please select a day for "+alertMsg);
         day.focus();
         return false;
      }
   }

   if(hideMonth==null || !hideMonth){
      var month=form.elements[QSDate+"Month_1"];
      if(month.selectedIndex<=0){
         alert("Please select a month for "+alertMsg);
         month.focus();
         return false;
      }
   }

   if(hideYear==null || !hideYear){
      var year=form.elements[QSDate+"Year_1"];
      if (!isNumeric(form, QSDate+"Year_1", "Please enter a year for "+alertMsg+"."))return false;
      if(year.value.length!=4){
         alert("Please enter four (4) digits year for "+alertMsg+".");
         year.focus();
         return false;
      }
   }

   return true;

}

function onlyDigit(form, elementName, alertMsg){
   var field=form.elements[elementName];
   if(field.value=="" || field.value==null){
      alert(alertMsg);
      field.focus();
      return false;
   }
   return isNumeric(form, elementName, alertMsg, 0);
}

/* General purpose jQuery plugin to clear form data in a logical way.
 * Allows for the method to be called on forms, form elements, or both.
 * See: http://www.learningjquery.com/2007/08/clearing-form-data
 * Example: $("#myDivName :input").clearForm();
 */
$.fn.clearForm = function() {
	return this.each(function() {
		var type = this.type, tag = this.tagName.toLowerCase();
		if (tag == 'form') {
			return $(':input',this).clearForm();
		}
		
		if (type == 'text' || type == 'password' || tag == 'textarea') {
			this.value = '';
		} else if (type == 'checkbox' || type == 'radio') {
			this.checked = false;
		} else if (tag == 'select') {
			this.selectedIndex = 0;		// use -1 to select no option or 0 to select first option
		}
	});
};

/* Checks a string against the rules for SSN and TIN number formats.
 * Matches the rules at http://en.wikipedia.org/wiki/Social_Security_number#Valid_SSNs 
 * to match the valid SSN rules. The first digit set will not match: 000, 666, 734 to 749, 
 * and greater than 772. It will also not match numbers with all zeros in any digit group 
 * (000-xx-####, ###-00-####, ###-xx-0000)
 * Found regex at: http://regexlib.com/Search.aspx?k=ssn
 * ALSO compares string against TIN rules.
 */
function SSNorTINIsValid1(form, elementName, emptyMessage, divId) {
   var temp = form.elements[elementName];
   var inputValue = $.trim(temp.value);		// Uses jQuery to trim the string
   if (!inputValue.match(/^((?!000)(?!666)([0-6]\d{2}|7[0-2][0-9]|73[0-3]|7[5-6][0-9]|77[0-1]))-((?!00)\d{2})-((?!0000)\d{4})$/) 
		&& !inputValue.match(/^[1-9]\d?-\d{7}$/) ) {
      if (divId != null && divId != 'none') {
          showDiv(divId);
      }
      alert(emptyMessage);
      temp.focus();
      return false;
   }
   return true;
}
