function validate_SignUpForm(frm) {

  var value = '';

  var errFlag = new Array();

  _qfMsg = '';

	value = frm.elements['first_name'].value;

  if (value == '' && !errFlag['first_name']) {

    errFlag['first_name'] = true;

    _qfMsg = _qfMsg + '\n - First Name is required.';

  }



  value = frm.elements['first_name'].value;

  var regex = /^[a-zA-Z\s\.]+$/;

  if (value != '' && !regex.test(value) && !errFlag['first_name']) {

    errFlag['first_name'] = true;

    _qfMsg = _qfMsg + '\n - First Name can contain letters only.';

  }



  value = frm.elements['first_name'].value;

  if (value != '' && value.length > 255 && !errFlag['first_name']) {

    errFlag['first_name'] = true;

    _qfMsg = _qfMsg + '\n - The item Name: can have no more than 255 characters.';

  }

	value = frm.elements['last_name'].value;

  if (value == '' && !errFlag['last_name']) {

    errFlag['last_name'] = true;

    _qfMsg = _qfMsg + '\n - Last Name is required.';

  }



  value = frm.elements['last_name'].value;

  var regex = /^[a-zA-Z\s\.]+$/;

  if (value != '' && !regex.test(value) && !errFlag['last_name']) {

    errFlag['last_name'] = true;

    _qfMsg = _qfMsg + '\n - Last Name can contain letters only.';

  }



  value = frm.elements['last_name'].value;

  if (value != '' && value.length > 255 && !errFlag['last_name']) {

    errFlag['last_name'] = true;

    _qfMsg = _qfMsg + '\n - The Last Name: can have no more than 255 characters.';

  }



  value = frm.elements['eMail'].value;

  if (value == '' && !errFlag['eMail']) {

    errFlag['eMail'] = true;

    _qfMsg = _qfMsg + '\n - Email is required.';

  }



  value = frm.elements['eMail'].value;

  var regex = /^((\"[^\"\f\n\r\t\v\b]+\")|([\w\!\#\$\%\&'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&'\*\+\-\~\/\^\`\|\{\}]+)*))@((\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9\-])+\.)+[A-Za-z\-]+))$/;

  if (value != '' && !regex.test(value) && !errFlag['EmailAddress']) {

    errFlag['eMail'] = true;

    _qfMsg = _qfMsg + '\n - Enter valid email.';

  }



  value = frm.elements['eMail'].value;

  if (value != '' && value.length > 255 && !errFlag['eMail']) {

    errFlag['eMail'] = true;

    _qfMsg = _qfMsg + '\n - The item Email: can have no more than 255 characters.';

  }



  var regexThreeNumbers = /^[0-9]{3}$/;

  var regexFourNumbers = /^[0-9]{4}$/;

  if( !regexThreeNumbers.test(frm.elements['home_phone1'].value) || !regexThreeNumbers.test(frm.elements['home_phone2'].value) || !regexFourNumbers.test(frm.elements['home_phone3'].value))

  {

    errFlag['HomePhone'] = true;

    _qfMsg = _qfMsg + '\n - Phone number is Invalid.';

  }

  

  var ZipRegex=/^\d{5}?$/;

  value = frm.elements['unsecured_debt'].value;

  if (value == '' && !errFlag['unsecured_debt']) {

    errFlag['unsecured_debt'] = true;

    _qfMsg = _qfMsg + '\n - Enter Debt please. Under $10.000, or $10.000 - $49.999, or more than $50,000';

  }



  if (value != '' && value.length > 10 && !errFlag['unsecured_debt']) {

    errFlag['unsecured_debt'] = true;

    _qfMsg = _qfMsg + '\n - The item Debt: can have no more than 10 characters.';

  }



  if ((value == 123456 ||!ZipRegex.test(value)) && !errFlag['unsecured_debt']) {

    errFlag['unsecured_debt'] = true;

    _qfMsg = _qfMsg + '\n - Debt is not valid.';

  }

  

  



  value = frm.elements['state'].value;

  if (value == '' && !errFlag['state']) {

    errFlag['state'] = true;

    _qfMsg = _qfMsg + '\n - state is required.';

  }



  if (_qfMsg != '') {

    _qfMsg = 'Invalid information entered.' + _qfMsg;

    _qfMsg = _qfMsg + '\nPlease correct these fields.';

    alert(_qfMsg);

    return false;

  }

  return true;

}

var isNN = (navigator.appName.indexOf("Netscape")!=-1);      



function enableAutoTabPhoneNumberBlock(FormName) {

   eval( 'var frm = document.'+FormName);

	oldObject=frm.home_phone1;

	changeInputType(oldObject,'text','home_phone1');

	oldObject=frm.home_phone2;

    changeInputType(oldObject,'text','home_phone2');

	oldObject=frm.home_phone3;

	changeInputType(oldObject,'text','home_phone3');

	oldObject=frm.HomePhone;

	changeInputType(oldObject,'hidden','HomePhone');

	

	/*frm.home_phone1.type='text';

	frm.home_phone2.type='text';

	frm.home_phone.type='text';

	frm.HomePhone.type='hidden';

 	*/

 }

function changeInputType(oldObject, oType,Objid) {

  var newObject = document.createElement('input');

  newObject.type = oType;

  if(oldObject.onkeyup) newObject.onkeyup = oldObject.onkeyup;

  if(oldObject.size) newObject.size = oldObject.size;

  if(oldObject.maxlength) newObject.maxlength = oldObject.maxlength;

  if(oldObject.value) newObject.value = oldObject.value;

  if(oldObject.name) newObject.name = oldObject.name;

  if(oldObject.id) newObject.id = oldObject.id;

  newObject.id=Objid;

  newObject.name=Objid;

  if(oldObject.className) newObject.className = oldObject.className;

  oldObject.parentNode.replaceChild(newObject,oldObject);

  return newObject;

}

function disableAutoTabPhoneNumberBlock(FormName) {

  eval( 'var frm = document.'+FormName); 

  frm.HomePhone.type = 'text';

  frm.HomePhone.value = frm.home_phone1.value +'-'+frm.home_phone2.value +'-'+frm.home_phone3.value ;

  if(frm.HomePhone.value== '--')

  frm.HomePhone.value= '';

  

  frm.home_phone1.value = frm.home_phone2.value = frm.home_phone3.value = '';

  frm.home_phone1.type = 'hidden';

  frm.home_phone2.type = 'hidden';

  frm.home_phone3.type = 'hidden';

  document.getElementById(FormName+'-freeform').style.display = 'none';

  } 

function autoTab(input,len, e) 

{

	

  var keyCode = (isNN) ? e.which : e.keyCode; 

 

  var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];

  if(input.value.length >= len && !containsElement(filter,keyCode)) 

  	{

    input.value = input.value.slice(0, len);

    input.form[(getIndex(input)+1) % input.form.length].focus();

  	}



  function containsElement(arr, ele) {

    var found = false, index = 0;

    while(!found && index < arr.length)

    if(arr[index] == ele)

    found = true;

    else

    index++;

    return found;

  }



  function getIndex(input) {

    var index = -1, i = 0, found = false;

    while (i < input.form.length && index == -1)

    if (input.form[i] == input)index = i;

    else i++;

    return index;

  }

  return true;

}

