script.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. const validatecpf = (cpf) => {
  2. if (cpf.length != 11) return false;
  3. let numbers = cpf.substring(0, 9)
  4. let entry = cpf.substring(9)
  5. let sum = 0;
  6. for (let i = 10; i > 1; i--) {
  7. sum += numbers.charAt(10 - i) * i;
  8. }
  9. var result = (sum % 11) < 2 ? 0 : 11 - (sum % 11);
  10. if (result != entry.charAt(0)) {
  11. return false;
  12. }
  13. sum = 0;
  14. numbers = cpf.substring(0, 10);
  15. for (let k = 11; k > 1; k--) {
  16. sum += numbers.charAt(11 - k) * k;
  17. }
  18. result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
  19. return result != entry.charAt(1) ? false : true
  20. }
  21. function validate() {
  22. const cpf = document.getElementById("cpf").value.replace(/[^a-z0-9 ]/g, "")
  23. const validInputs = document.querySelectorAll(".required")
  24. let inputIsValid = validatecpf(cpf)
  25. const cpfIsValid = validatecpf(cpf)
  26. for (i = 0; i < validInputs.length; i++) {
  27. if (validInputs[i].value === "") validInputs[i].style["border"] = "1px solid red"
  28. }
  29. for (i = 0; i < validInputs.length; i++) {
  30. if (validInputs[i].value === "") inputIsValid = false;
  31. else {
  32. inputIsValid = true
  33. validInputs[1].style["border"] = "none"
  34. document.querySelector("span").style["display"] = "none"
  35. validInputs[i].style["border"] = "none"
  36. }
  37. }
  38. if (!inputIsValid || !cpfIsValid) {
  39. window.alert("Opss! Aconteceu um erro no seu cadastro, verifique se você preencheu todos espaços necessários")
  40. cpfIsValid ? (
  41. validInputs[1].style["border"] = "none",
  42. document.querySelector("span").style["display"] = "none"
  43. ) : (
  44. validInputs[1].style["border"] = "1px solid red",
  45. document.querySelector("span").style["display"] = "inline"
  46. );
  47. return false
  48. }
  49. else if (cpfIsValid && inputIsValid) window.alert("Parabéns!! você foi cadastrado com sucesso")
  50. return true
  51. }
  52. function clearCepInputs() {
  53. document.getElementById('endereco').value = ("");
  54. document.getElementById('bairro').value = ("");
  55. document.getElementById('cidade').value = ("");
  56. document.getElementById('estado').value = ("");
  57. }
  58. function retrievingCepInputs(cepInputs) {
  59. if ('erro' in cepInputs) {
  60. clearCepInputs();
  61. alert("CEP não encontrado.");
  62. }
  63. else {
  64. document.getElementById('endereco').value = (cepInputs.logradouro);
  65. document.getElementById('bairro').value = (cepInputs.bairro);
  66. document.getElementById('cidade').value = (cepInputs.localidade);
  67. document.getElementById('estado').value = (cepInputs.uf);
  68. }
  69. }
  70. function searchCep(valor) {
  71. const cep = valor.replace(/\D/g, '');
  72. if (cep === "") clearCepInputs();
  73. else {
  74. const validateCep = /^[0-9]{8}$/;
  75. if (validateCep.test(cep)) {
  76. let script = document.createElement('script');
  77. script.src = 'https://viacep.com.br/ws/' + cep + '/json/?callback=retrievingCepInputs';
  78. document.body.appendChild(script);
  79. } else {
  80. clearCepInputs();
  81. alert("Formato de CEP inválido.");
  82. }
  83. }
  84. };
  85. function cpfMask() {
  86. let i = document.getElementById("cpf").value.length;
  87. if (i === 3 || i === 7)
  88. document.getElementById("cpf").value = document.getElementById("cpf").value + ".";
  89. else if (i === 11)
  90. document.getElementById("cpf").value = document.getElementById("cpf").value + "-";
  91. else if (i===14) i = 0
  92. }
  93. function phoneMask() {
  94. let i = document.getElementById('celular').value.length;
  95. switch (i) {
  96. case 0:
  97. document.getElementById('celular').value = '('
  98. break
  99. case 3:
  100. document.getElementById('celular').value += ')'
  101. break
  102. case 5:
  103. document.getElementById('celular').value += ' ';
  104. break
  105. case 10:
  106. document.getElementById('celular').value += '-'
  107. break
  108. case 15:
  109. i = 0
  110. break
  111. }
  112. }