var newIndex = 0;

function fJS_FormataMoeda(fld, milSep, decSep, e) {
   var sep = 0;
   var key = '';
   var i = j = 0;
   var len = len2 = 0;
   var strCheck = '0123456789';
   var aux = aux2 = '';
   var whichCode = (window.Event) ? e.which : e.keyCode;

   if (whichCode == 13) return true;  // Enter
   key = String.fromCharCode(whichCode);  // Get key value from key code
   if (strCheck.indexOf(key) == -1) return false;  // Not a valid key
   len = fld.value.length;
   for(i = 0; i < len; i++)
      if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
      aux = '';
      for(; i < len; i++)
         if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
         aux += key;
         len = aux.length;
         if (len == 0) fld.value = '';
         if (len == 1) fld.value = '0'+ decSep + '0' + aux;
         if (len == 2) fld.value = '0'+ decSep + aux;
         if (len > 2) {
         aux2 = '';
         for (j = 0, i = len - 3; i >= 0; i--) {
            if (j == 3) {
               aux2 += milSep;
               j = 0;
            }
         aux2 += aux.charAt(i);
         j++;
   }

   fld.value = '';
   len2 = aux2.length;

   for (i = len2 - 1; i >= 0; i--)
      fld.value += aux2.charAt(i);
      fld.value += decSep + aux.substr(len - 2, len);
   }
   return false;
}

<!-- ##### FORMATA DATAS ##### -->
<!-- Original:  Richard Gorremans (RichardG@spiritwolfx.com) -->
<!-- Web Site:  http://www.spiritwolfx.com -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
// Check browser version
var isNav4 = false, isNav5 = false, isIE4 = false
var strSeperator = "/";

// If you are using any Java validation on the back side you will want to use the / because
// Java date validations do not recognize the dash as a valid date separator.

var vDateType = 3; // Global value for type of date format
//                1 = mm/dd/yyyy
//                2 = yyyy/dd/mm  (Unable to do date check at this time)
//                3 = dd/mm/yyyy
var vYearType = 4; //Set to 2 or 4 for number of digits in the year for Netscape
var vYearLength = 2; // Set to 4 if you want to force the user to enter 4 digits for the year before validating.
var err = 0; // Set the error code to a default of zero

if(navigator.appName == "Netscape") {
  if (navigator.appVersion < "5") {
    isNav4 = true;
    isNav5 = false;
  }
  else
    if (navigator.appVersion > "4") {
      isNav4 = false;
      isNav5 = true;
    }
}

else {
  isIE4 = true;
}


function fJS_FormataData(vDateName, vDateValue, e, dateCheck, dateType) {
  vDateType = dateType;

  // vDateName = object name
  // vDateValue = value in the field being checked
  // e = event
  // dateCheck
  // True  = Verify that the vDateValue is a valid date
  // False = Format values being entered into vDateValue only
  // vDateType

  // 1 = mm/dd/yyyy
  // 2 = yyyy/mm/dd
  // 3 = dd/mm/yyyy
  //Enter a tilde sign for the first number and you can check the variable information.

	if (vDateValue == "~") {
    alert("AppVersion = "+navigator.appVersion+" \nNav. 4 Version = "+isNav4+" \nNav. 5 Version = "+isNav5+" \nIE Version = "+isIE4+" \nYear Type = "+vYearType+" \nDate Type = "+vDateType+" \nSeparator = "+strSeperator);
    vDateName.value = "";
    vDateName.focus();
    return true;
  }

  var whichCode = (window.Event) ? e.which : e.keyCode;
  // Check to see if a seperator is already present.
  // bypass the date if a seperator is present and the length greater than 8
  if (vDateValue.length > 8 && isNav4) {
    if ((vDateValue.indexOf("-") >= 1) || (vDateValue.indexOf("/") >= 1))
      return true;
  }

  //Eliminate all the ASCII codes that are not valid
  var alphaCheck = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/-";
  if (alphaCheck.indexOf(vDateValue) >= 1) {
    if (isNav4) {
      vDateName.value = "";
      vDateName.focus();
      vDateName.select();
      return false;
    }
    else {
      vDateName.value = vDateName.value.substr(0, (vDateValue.length-1));
      return false;
   }
  }

  if (whichCode == 8) //Ignore the Netscape value for backspace. IE has no value
    return false;
  else {
    //Create numeric string values for 0123456789/
    //The codes provided include both keyboard and keypad values

    var strCheck = '13,47,48,49,50,51,52,53,54,55,56,57,58,59,95,96,97,98,99,100,101,102,103,104,105';
    if (strCheck.indexOf(whichCode) != -1) {
      if (isNav4) {
        if (((vDateValue.length < 6 && dateCheck) || (vDateValue.length == 7 && dateCheck)) && (vDateValue.length >=1)) {
          alert("Data Iválida!");
          vDateName.value = "";
          vDateName.focus();
          vDateName.select();
          return false;
        }
        if (vDateValue.length == 6 && dateCheck) {
          var mDay = vDateName.value.substr(2,2);
          var mMonth = vDateName.value.substr(0,2);
          var mYear = vDateName.value.substr(4,4)

          //Turn a two digit year into a 4 digit year
          if (mYear.length == 2 && vYearType == 4) {
            var mToday = new Date();

            //If the year is greater than 30 years from now use 19, otherwise use 20
            var checkYear = mToday.getFullYear() + 30;
            var mCheckYear = '20' + mYear;
            if (mCheckYear >= checkYear)
              mYear = '19' + mYear;
            else
              mYear = '20' + mYear;
          }

          var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
          if (!dateValid(vDateValueCheck)) {
            alert("Data Inválida!");
            vDateName.value = "";
            vDateName.focus();
            vDateName.select();
            return false;
          }
          return true;
        }

        else {
          // Reformat the date for validation and set date type to a 1
          if (vDateValue.length >= 8  && dateCheck) {
            if (vDateType == 1) { // mmddyyyy
              var mDay = vDateName.value.substr(2,2);
              var mMonth = vDateName.value.substr(0,2);
              var mYear = vDateName.value.substr(4,4)
              vDateName.value = mMonth+strSeperator+mDay+strSeperator+mYear;
            }
            if (vDateType == 2) { // yyyymmdd
              var mYear = vDateName.value.substr(0,4)
              var mMonth = vDateName.value.substr(4,2);
              var mDay = vDateName.value.substr(6,2);
              vDateName.value = mYear+strSeperator+mMonth+strSeperator+mDay;
            }
            if (vDateType == 3) { // ddmmyyyy
              var mMonth = vDateName.value.substr(2,2);
              var mDay = vDateName.value.substr(0,2);
              var mYear = vDateName.value.substr(4,4)
              vDateName.value = mDay+strSeperator+mMonth+strSeperator+mYear;
            }

            //Create a temporary variable for storing the DateType and change
            //the DateType to a 1 for validation.
            var vDateTypeTemp = vDateType;
            vDateType = 1;
            var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
            if (!dateValid(vDateValueCheck)) {
              alert("Data Inválida!");
              vDateType = vDateTypeTemp;
              vDateName.value = "";
              vDateName.focus();
              vDateName.select();
              return false;
            }

            vDateType = vDateTypeTemp;
            return true;
          }
          else {
            if (((vDateValue.length < 8 && dateCheck) || (vDateValue.length == 9 && dateCheck)) && (vDateValue.length >=1)) {
              alert("Data Inválida!");
              vDateName.value = "";
              vDateName.focus();
              vDateName.select();
              return false;
            }
          }
        }
      }
    else {
      // Non isNav Check
      if (((vDateValue.length < 8 && dateCheck) || (vDateValue.length == 9 && dateCheck)) && (vDateValue.length >=1)) {
        alert("Data Inválida!");
        vDateName.value = "";
        vDateName.focus();
        return true;
      }

      // Reformat date to format that can be validated. mm/dd/yyyy
      if (vDateValue.length >= 8 && dateCheck) {
      // Additional date formats can be entered here and parsed out to
      // a valid date format that the validation routine will recognize.
        if (vDateType == 1) { // mm/dd/yyyy
          var mMonth = vDateName.value.substr(0,2);
          var mDay = vDateName.value.substr(3,2);
          var mYear = vDateName.value.substr(6,4)
        }
        if (vDateType == 2) { // yyyy/mm/dd
          var mYear = vDateName.value.substr(0,4)
          var mMonth = vDateName.value.substr(5,2);
          var mDay = vDateName.value.substr(8,2);
        }
        if (vDateType == 3) { // dd/mm/yyyy
          var mDay = vDateName.value.substr(0,2);
          var mMonth = vDateName.value.substr(3,2);
          var mYear = vDateName.value.substr(6,4)
        }
        if (vYearLength == 4) {
          if (mYear.length < 4) {
            alert("Data Inválida!");
            vDateName.value = "";
            vDateName.focus();
            return true;
          }
        }

        // Create temp. variable for storing the current vDateType
        var vDateTypeTemp = vDateType;

        // Change vDateType to a 1 for standard date format for validation
        // Type will be changed back when validation is completed.
        vDateType = 1;

        // Store reformatted date to new variable for validation.
        var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;

        if (mYear.length == 2 && vYearType == 4 && dateCheck) {
          //Turn a two digit year into a 4 digit year
          var mToday = new Date();

          //If the year is greater than 30 years from now use 19, otherwise use 20
          var checkYear = mToday.getFullYear() + 30;
          var mCheckYear = '20' + mYear;
          if (mCheckYear >= checkYear)
            mYear = '19' + mYear;
          else
            mYear = '20' + mYear;
          vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
          // Store the new value back to the field.  This function will
          // not work with date type of 2 since the year is entered first.
          if (vDateTypeTemp == 1) // mm/dd/yyyy
            vDateName.value = mMonth+strSeperator+mDay+strSeperator+mYear;
          if (vDateTypeTemp == 3) // dd/mm/yyyy
            vDateName.value = mDay+strSeperator+mMonth+strSeperator+mYear;
        }

        if (!dateValid(vDateValueCheck)) {
          alert("Data Inválida!");
          vDateType = vDateTypeTemp;
          vDateName.value = "";
          vDateName.focus();
          return true;
        }

        vDateType = vDateTypeTemp;
        return true;
      }
      else {
        if (vDateType == 1) {
          if (vDateValue.length == 2) {
            vDateName.value = vDateValue+strSeperator;
          }
          if (vDateValue.length == 5) {
            vDateName.value = vDateValue+strSeperator;
           }
        }
        if (vDateType == 2) {
          if (vDateValue.length == 4) {
            vDateName.value = vDateValue+strSeperator;
          }
          if (vDateValue.length == 7) {
            vDateName.value = vDateValue+strSeperator;
          }
        }
        if (vDateType == 3) {
          if (vDateValue.length == 2) {
            vDateName.value = vDateValue+strSeperator;
          }
          if (vDateValue.length == 5) {
            vDateName.value = vDateValue+strSeperator;
          }
        }
        return true;
      }
    }

    if (vDateValue.length == 10&& dateCheck) {
      if (!dateValid(vDateName)) {
        // Un-comment the next line of code for debugging the dateValid() function error messages
        //alert(err);
        alert("Data Inválida!");
        vDateName.focus();
        vDateName.select();
      }
    }
    return false;
    }
    else {
      // If the value is not in the string return the string minus the last
      // key entered.
      if (isNav4) {
        vDateName.value = "";
        vDateName.focus();
        vDateName.select();
        return false;
      }
      else {
        vDateName.value = vDateName.value.substr(0, (vDateValue.length-1));
        return false;
      }
    }
  }
}


function dateValid(objName) {
  var strDate;
  var strDateArray;
  var strDay;
  var strMonth;
  var strYear;
  var intday;
  var intMonth;
  var intYear;
  var booFound = false;
  var datefield = objName;
  var strSeparatorArray = new Array("-"," ","/",".");
  var intElementNr;

  // var err = 0;
  var strMonthArray = new Array(12);

  strMonthArray[0] = "Jan";
  strMonthArray[1] = "Feb";
  strMonthArray[2] = "Mar";
  strMonthArray[3] = "Apr";
  strMonthArray[4] = "May";
  strMonthArray[5] = "Jun";
  strMonthArray[6] = "Jul";
  strMonthArray[7] = "Aug";
  strMonthArray[8] = "Sep";
  strMonthArray[9] = "Oct";
  strMonthArray[10] = "Nov";
  strMonthArray[11] = "Dec";

  //strDate = datefield.value;
  strDate = objName;
  if (strDate.length < 1) {
    return true;
  }

  for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
    if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
      strDateArray = strDate.split(strSeparatorArray[intElementNr]);
      if (strDateArray.length != 3) {
        err = 1;
        return false;
      }
      else {
        strDay = strDateArray[0];
        strMonth = strDateArray[1];
        strYear = strDateArray[2];
      }
      booFound = true;
    }
  }

  if (booFound == false) {
    if (strDate.length>5) {
      strDay = strDate.substr(0, 2);
      strMonth = strDate.substr(2, 2);
      strYear = strDate.substr(4);
   }
  }

  //Adjustment for short years entered
  if (strYear.length == 2) {
    strYear = '20' + strYear;
  }

  strTemp = strDay;
  strDay = strMonth;
  strMonth = strTemp;
  intday = parseInt(strDay, 10);
  if (isNaN(intday)) {
    err = 2;
    return false;
  }

  intMonth = parseInt(strMonth, 10);

  if (isNaN(intMonth)) {
    for (i = 0;i<12;i++) {
      if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
        intMonth = i+1;
        strMonth = strMonthArray[i];
        i = 12;
      }
    }
    if (isNaN(intMonth)) {
      err = 3;
      return false;
    }
  }

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

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

  if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
    err = 6;
    return false;
  }

  if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
    err = 7;
    return false;
  }

  if (intMonth == 2) {
    if (intday < 1) {
      err = 8;
      return false;
    }
    if (LeapYear(intYear) == true) {
      if (intday > 29) {
        err = 9;
        return false;
      }
    }
  else {
    if (intday > 28) {
    err = 10;
    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;
}
//  ### FORMATA DATAS -- End -->

function fJS_ConverteValorMoeda(num, iTipo) {
	if (iTipo==1) {
		if(isNaN(num))
			num = "0";

		sign 	= (num == (num = Math.abs(num)));
		num 	= Math.floor(num*100+0.50000000001);
		cents = num%100;
		num 	= Math.floor(num/100).toString();
		if(cents<10)
			cents = "0" + cents;

		for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
			num = num.substring(0,num.length-(4*i+3))+'.'+num.substring(num.length-(4*i+3));

		return (((sign)?'':'-') + num + ',' + cents);
	}
	else {
		for (i=0; i<=num.length; i++) { //Retira todos os pontos da string para o cálculo correto
			num = num.replace('.', '');
		}
		num = num.replace(',','.');
		num = parseFloat(num);
		num ? num : num = 0;

		return num;
	}
}

function checkAddCampos(sSeguradora) {
	if (sSeguradora == "LEASEPLAN ARRENDAMENTO MERCANTIL S.A.") {
		AddCampo("div_Leaseplan_VeicSin");
		AddCampo("div_Leaseplan_DtSin");
	} else {
		clearCampos("div_Leaseplan_VeicSin");
		clearCampos("div_Leaseplan_DtSin");
	}
}

function checkAddOptions(oSeguradora, sSelectAdd) {
	sSeguradora = oSeguradora[oSeguradora.selectedIndex].value;
	oSelect = document.getElementById(sSelectAdd);
	
	sCampoTotalFleet = 'Desativação';
	sCampoTransbank = 'Primeira Vistoria';
	sCampoRebbok1 = 'Primeira Vistoria';
	sCampoRebbok2 = 'Complemento';
	sCampoReinspecao = 'Reinspeção';
	
	if (sSeguradora == "TOTAL FLEET S/A") {
		//if (newIndex != 0) RemoveOpcao(sSelectAdd);
		RemoveTodasOpcoes(oSelect);
		AddOpcao(oSelect, sCampoTotalFleet);
	} else if (sSeguradora == "TRANSBANK SEGURANÇA E TRANSPORTE DE VALORES LTDA") {
		//if (newIndex != 0) RemoveOpcao(sSelectAdd);
		RemoveTodasOpcoes(oSelect);
		AddOpcao(oSelect, sCampoTransbank);
	} else if (sSeguradora == "APPA - ASSOCIAÇÃO PAULISTA DE PROPRIETARIOS DE AUTOMOVEIS") {
		//if (newIndex != 0) RemoveOpcao(sSelectAdd);
		RemoveTodasOpcoes(oSelect);
		AddOpcao(oSelect, sCampoReinspecao);
		AddOpcao(oSelect, sCampoRebbok2);
	} else if (sSeguradora == "REBBOK CLUBE DE ASSISTENCIA EMERGENCIAL") {
		//if (newIndex != 0) RemoveOpcao(sSelectAdd);
		RemoveTodasOpcoes(oSelect);
		AddOpcao(oSelect, sCampoRebbok1);
		AddOpcao(oSelect, sCampoRebbok2);
	} else if (sSeguradora == "RODOSAT BRASIL – ASSOCIAÇÃO DE VEÍCULOS AUTOMOTORES") {
		//if (newIndex != 0) RemoveOpcao(sSelectAdd);
		RemoveTodasOpcoes(oSelect);
		AddOpcao(oSelect, sCampoRebbok1);
		AddOpcao(oSelect, sCampoRebbok2);
	} else {
		if (TestaRemove(oSelect,3)) {
			RemoveTodasOpcoes(oSelect);
			AddOpcoesPadrao(oSelect);
		}
		/*if (newIndex != 0) {
			RemoveOpcao(sSelectAdd);
			RemoveOpcao(sSelectAdd);
			newIndex = 0;
		}*/
	}
	
	TrocaTipoVist(oSelect);
}

function TestaRemove(oSelect, iNroItens) {
	return (oSelect.options.length != iNroItens);
}

function AddOpcoesPadrao(oSelect) {
	AddOpcao(oSelect, 'Qualidade');
	AddOpcao(oSelect, 'Complemento');
}

function RemoveTodasOpcoes(oSelect) {
	if (oSelect != undefined) {
		opt = oSelect.options[0];
		oSelect.options.length = 0;		
		newIndex = opt.index+1;
		oSelect.add(opt, newIndex);
	}
}

function RemoveOpcao(oSelect) {
	if (oSelect != undefined) {
		oSelect.remove(newIndex);
	}
}

function clearCampos(sDiv) {
	oDiv = document.getElementById(sDiv);
	oDivDesc = document.getElementById(sDiv+'Desc');
	
	oDiv.style.visibility = 'hidden';
	oDivDesc.style.visibility = 'hidden';
	/*oDiv.innerHTML = '';
	oDivDesc.innerHTML = '';*/
}

function AddOpcao(oSelect, sOptDesc) {
	var opt = document.createElement("OPTION");
	
	opt.value = opt.label = opt.text = sOptDesc;
	opt.className = oSelect.options[0].className;
	
	newIndex = oSelect.options.length + 1;
	
	oSelect.add(opt, newIndex);
}

function AddCampo(sDiv, sNomeCampo, sTipoCampo, sTituloCampo) {
	oDiv = document.getElementById(sDiv);
	oDivDesc = document.getElementById(sDiv+'Desc');
	
	oDiv.style.visibility = 'visible';
	oDivDesc.style.visibility = 'visible';
	
	/*oDivDesc.innerHTML = '<font face=verdana size=2>' + sTituloCampo +':</font>';
	
	elemText = document.createElement("input");
	elemText.setAttribute("type", sTipoCampo);
	elemText.setAttribute("name", sNomeCampo);
	elemText.setAttribute("title", sTituloCampo);
	
	oDiv.appendChild(elemText);*/
	
}

function TrocaTipoVist(oTipoVist) {
	var conteudo = document.getElementById("divTipoVistoria");
	var mainTable = document.getElementById("mainTable");
	txtComplementos = "Funilaria;Mecânica;Funilaria e Mecânica;Diferença de Preço de Peça;Diferença de Franquia";
	
	if (oTipoVist[oTipoVist.selectedIndex].text == 'Qualidade') {
		conteudo.innerHTML = '';
		//conteudo.style.visibility = 'hidden';
		alert('* Vistoria de Qualidade, somente deve ser solicitada com o veículo pronto, sendo obrigatória apresentação de sucata e notas fiscais de compra das peças!');
	} else if (oTipoVist[oTipoVist.selectedIndex].text == 'Complemento') {
		//conteudo.style.visibility = 'visible';
		
		elemSel = document.createElement("SELECT");
		elemSel.setAttribute("title","Tipo de Complemento");
		elemSel.setAttribute('id' ,'selComplemento');
		var vecComplementos = txtComplementos.split(";");
		
		elemOpt = document.createElement("OPTION");
		elemOpt.setAttribute("value",0);
		elemOpt.setAttribute("class","oSelectSelecione");
		elemOpt.appendChild(document.createTextNode("»» Selecione"));
		elemSel.appendChild(elemOpt);

		for(i = 0; i < vecComplementos.length; i++){
			elemOpt = document.createElement("OPTION");
			//elemOpt.setAttribute("value",i+1);
			elemOpt.setAttribute("value",vecComplementos[i]);
			elemOpt.setAttribute("class","oSelectSelecione");
			elemOpt.appendChild(document.createTextNode(vecComplementos[i]));
			elemSel.appendChild(elemOpt);
		}
		
		conteudo.appendChild(elemSel);

		conteudo.innerHTML += "&nbsp;&nbsp;&nbsp;";
		conteudo.innerHTML += "<font face=verdana size=2>Estimativa: &nbsp;</font>";

		elemText = document.createElement("input");
		elemText.setAttribute("type", "text");
		elemText.setAttribute("name","txtEstimativa");
		elemText.setAttribute("title","Estimativa");
		//elemText.setAttribute("onKeyPress","return(fJS_FormataMoeda(this,'.',',',event))");
		//elemText.setAttribute("onKeyPress","alert('aaa');");
		
		conteudo.appendChild(elemText);
		
		var teste = oTipoVist.form;
		var sMensagem = '';

		//o IE nao pega o nome do combobox se colocado dinamicamente... entao precisa forcar a pegar
		for ( var n = 0; n < teste.elements.length; n++ ) {
			if (teste.elements[n].id != '')
				teste.elements[n].name = teste.elements[n].id;
		}
		//conteudo.style.visibility = 'visible';
	} else {
		conteudo.innerHTML = '';
		//conteudo.style.visibility = 'hidden';
	}
}

function ValidarEmail(oEmail) {
	email = oEmail.value;
	
	bReturn = true;
	
	if (email != null) {
		if (email.split('@').length == 2) {
			usuario = email.substr(0, email.indexOf('@'));
			
			if (usuario.length) {
				dominio = email.substr(email.indexOf('@')+1, email.length - email.indexOf('@'));
				if (dominio.indexOf('.') != -1) {
					//dominio deve ser algumacoisa.algumacoisa.algumacoisa.assimpordiante
					aPartesDominio = dominio.split('.');
									
					for (var n=0; n < aPartesDominio.length; n++) {
						if (!aPartesDominio[n].length) {
							bReturn = false;
							break;
						}
					}
				} else bReturn = false;
			} else bReturn = false;
		} else bReturn = false;
	}
	
	if (!bReturn) {
		alert('E-Mail inválido!');
		oEmail.focus();
		return (true);
	}
}

function Validar(theCPF) 
{ 
  if (theCPF.value == "") 
  { 
    //alert("Campo inválido. É necessário informar o CPF ou CNPJ"); 
    //theCPF.focus(); 
    return (false); 
  } 
  if (((theCPF.value.length == 11) && (theCPF.value == 11111111111) || (theCPF.value == 22222222222) || (theCPF.value == 33333333333) || (theCPF.value == 44444444444) || (theCPF.value == 55555555555) || (theCPF.value == 66666666666) || (theCPF.value == 77777777777) || (theCPF.value == 88888888888) || (theCPF.value == 99999999999) || (theCPF.value == 00000000000))) 
  { 
    alert("CPF/CNPJ inválido."); 
    theCPF.focus(); 
    return (false); 
  } 


  if (!((theCPF.value.length == 11) || (theCPF.value.length == 14))) 
  { 
    alert("CPF/CNPJ inválido."); 
    theCPF.focus(); 
    return (false); 
  } 

  var checkOK = "0123456789"; 
  var checkStr = theCPF.value; 
  var allValid = true; 
  var allNum = ""; 
  for (i = 0;  i < checkStr.length;  i++) 
  { 
    ch = checkStr.charAt(i); 
    for (j = 0;  j < checkOK.length;  j++) 
      if (ch == checkOK.charAt(j)) 
        break; 
    if (j == checkOK.length) 
    { 
      allValid = false; 
      break; 
    } 
    allNum += ch; 
  } 
  if (!allValid) 
  { 
    alert("Favor preencher somente com dígitos o campo CPF/CNPJ."); 
    theCPF.focus(); 
    return (false); 
  } 

  var chkVal = allNum; 
  var prsVal = parseFloat(allNum); 
  if (chkVal != "" && !(prsVal > "0")) 
  { 
    alert("CPF zerado !"); 
    theCPF.focus(); 
    return (false); 
  } 

if (theCPF.value.length == 11) 
{ 
  var tot = 0; 

  for (i = 2;  i <= 10;  i++) 
    tot += i * parseInt(checkStr.charAt(10 - i)); 

  if ((tot * 10 % 11 % 10) != parseInt(checkStr.charAt(9))) 
  { 
    alert("CPF/CNPJ inválido."); 
    theCPF.focus(); 
    return (false); 
  } 
  
  tot = 0; 
  
  for (i = 2;  i <= 11;  i++) 
    tot += i * parseInt(checkStr.charAt(11 - i)); 

  if ((tot * 10 % 11 % 10) != parseInt(checkStr.charAt(10))) 
  { 
    alert("CPF/CNPJ inválido."); 
    theCPF.focus(); 
    return (false); 
  } 
} 
else 
{ 
  var tot  = 0; 
  var peso = 2; 
  
  for (i = 0;  i <= 11;  i++) 
  { 
    tot += peso * parseInt(checkStr.charAt(11 - i)); 
    peso++; 
    if (peso == 10) 
    { 
        peso = 2; 
    } 
  } 

  if ((tot * 10 % 11 % 10) != parseInt(checkStr.charAt(12))) 
  { 
    alert("CPF/CNPJ inválido."); 
    theCPF.focus(); 
    return (false); 
  } 
  
  tot  = 0; 
  peso = 2; 
  
  for (i = 0;  i <= 12;  i++) 
  { 
    tot += peso * parseInt(checkStr.charAt(12 - i)); 
    peso++; 
    if (peso == 10) 
    { 
        peso = 2; 
    } 
  } 

  if ((tot * 10 % 11 % 10) != parseInt(checkStr.charAt(13))) 
  { 
    alert("CPF/CNPJ inválido."); 
    theCPF.focus(); 
    return (false); 
  } 
} 
  return(true); 
} 

function fConfereCampos(oForm) {
	bOk = true;
	
	sLeaseplan = 'LEASEPLAN ARRENDAMENTO MERCANTIL S.A.';
	
	sCampo1 = 'txtDataSinistro';
	sCampo2 = 'txtPlacaVeicSin';
	
	sCampo3 = 'selTipoComplemento';
	sCampo4 = 'txtEstimativa';
	
	sMensagem = 'Os campos abaixo são de preenchimento obrigatorio:\n';
	
	for ( var i = 0; i < oForm.elements.length; i++ ) {
		if (document.getElementById('selSeguradora').value != sLeaseplan) {
			if ((oForm.elements[i].name != sCampo1) && (oForm.elements[i].name != sCampo2)) {
				if(oForm.elements[i].type == 'text') {
					if (oForm.elements[i].value == '') {
						sMensagem += '      » ' + oForm.elements[i].title + '\n';
						bOk = false;
					}
				} else if (oForm.elements[i].type == 'select-one') {
					if (oForm.elements[i].name == 'selTipoVistoria') {
						if (document.getElementById('selTipoVistoria').selectedIndex != 1) {
							if ((oForm.elements[i].name != sCampo3) && (oForm.elements[i].name != sCampo4)) {
								if (oForm.elements[i][oForm.elements[i].selectedIndex].value == 0) {
									sMensagem += '      » ' + oForm.elements[i].title + '\n';
									bOk = false;
								}

							}
						}
					}
				}
			}
		} else {
			if(oForm.elements[i].type == 'text') {
				if (oForm.elements[i].value == '') {
					sMensagem += '      » ' + oForm.elements[i].title + '\n';
					bOk = false;
				}
			} else if (oForm.elements[i].type == 'select-one') {
				if (oForm.elements[i].name == 'selTipoVistoria') {
					if (document.getElementById('selTipoVistoria').selectedIndex != 1) {
						if ((oForm.elements[i].name != sCampo3) && (oForm.elements[i].name != sCampo4)) {
							if (oForm.elements[i][oForm.elements[i].selectedIndex].value == 0) {
								sMensagem += '      » ' + oForm.elements[i].title + '\n';
								bOk = false;
							}

						}
					}
				}
			}
		}
	}
	
	if (!bOk) alert(sMensagem);
	else oForm.submit();
	
	return bOk;
}

function fMonitoraTeclas(e) {
	var isNN = (navigator.appName.indexOf('Netscape') != -1);
	var tecla = (isNN) ? e.which : window.event.keyCode;
}

document.all ? document.onkeydown = fMonitoraTeclas : window.captureEvents(Event.KEYDOWN);
document.onkeydown = fMonitoraTeclas;
