Commit ec0ccc2217031585bb4c253d0f2e6b2cb0840c97

Authored by ailsoncgt
1 parent 44f65db0

Mask to cpf field #55

core/static/js/base/amadeus.js 0 → 100644
... ... @@ -0,0 +1,129 @@
  1 +function campoNumerico(campo, evento){
  2 + var codTecla;
  3 + var tamanho;
  4 +
  5 + if( document.all ) {// Internet Explorer
  6 + codTecla = evento.keyCode;
  7 + } else if( document.layers ) { // Nestcape
  8 + codTecla = evento.which;
  9 + }
  10 + else if( evento) { // Firefox
  11 + codTecla = evento.which;
  12 + }
  13 + if( (codTecla > 47 && codTecla < 58) || codTecla==8 || codTecla == 0){
  14 + return true;
  15 + } else {
  16 + evento.returnValue = false;
  17 + return false;
  18 + }
  19 +}
  20 +
  21 +function formatarCpf(campo, evento){
  22 + var codTecla;
  23 + var tamanho;
  24 + if( document.all ) { // Internet Explorer
  25 + codTecla = evento.keyCode;
  26 + } else if( document.layers ) { // Nestcape
  27 + codTecla = evento.which;
  28 + }
  29 + else if( evento ) { // Firefox
  30 + codTecla = evento.which;
  31 + }
  32 + tamanho = campo.value.length;
  33 + if( (codTecla > 47 && codTecla < 58) || codTecla== 8 || codTecla == 0){
  34 + if(tamanho < 14 ){
  35 + if( tamanho == 3 && codTecla != 8 && codTecla != 0){
  36 + campo.value = campo.value + ".";
  37 + }else if( tamanho == 7 && codTecla != 8 && codTecla != 0){
  38 + campo.value = campo.value + ".";
  39 + }else if( tamanho == 11 && codTecla != 8 && codTecla != 0){
  40 + campo.value = campo.value + "-";
  41 + }
  42 + }else{
  43 + evento.returnValue = false;
  44 + }
  45 + return true;
  46 + } else {
  47 + return false;
  48 + }
  49 + return false;
  50 +}
  51 +
  52 +function validarCpfSemAlert(campo,nome,idElementoMensagemErro){
  53 + //alert("teste");
  54 + cpf = campo.value;
  55 +
  56 + cpf = cpf.replace(".","");
  57 + cpf = cpf.replace("-","");
  58 + cpf = cpf.replace(".","");
  59 + retorno = true;
  60 +
  61 + if(trim(cpf).length > 0){
  62 + //alert("teste2");
  63 + cpfstr= '';
  64 + temp = cpf + '';
  65 +
  66 + cpfstr = temp.substring(0,3);
  67 + cpfstr = cpfstr + temp.substring(3,6);
  68 + cpfstr = cpfstr + temp.substring(6,9);
  69 + cpfstr = cpfstr + temp.substring(9,11);
  70 +
  71 +
  72 +
  73 + retorno = false;
  74 + if(cpf != null){
  75 + //alert("teste3");
  76 + soma = 0;
  77 + digito1 = 0;
  78 + digito2 = 0;
  79 + for(i = 0; i < 9; i = i + 1) {
  80 + soma = soma + ((parseInt(cpf.substring(i,i+1)))*(11-(i+1)));
  81 + }
  82 + soma = soma % 11;
  83 + if (soma == 0 || soma == 1) {
  84 + digito1 = 0;
  85 + } else {
  86 + digito1 = 11 - soma;
  87 + }
  88 + soma = 0;
  89 +
  90 + for(i = 0; i < 9; i = i + 1) {
  91 + soma = soma + ((parseInt(cpf.substring(i,i+1)))*(12-(i+1)));
  92 + }
  93 + soma = soma + (digito1*2);
  94 + soma = soma % 11;
  95 + if (soma == 0 || soma == 1) {
  96 + digito2 = 0;
  97 + }
  98 + else{
  99 + digito2 = 11 - soma;
  100 + }
  101 + digito = digito1 +''+ digito2;
  102 +
  103 +
  104 + //alert(cpfstr.substring(9,11));
  105 + if(digito == (cpfstr.substring(9,11))){
  106 + retorno = true;
  107 + } else{
  108 + //alert("teste4");
  109 + retorno = false;
  110 +
  111 + }
  112 + } else {
  113 + retorno = false;
  114 + }
  115 + }else{
  116 + retorno = false;
  117 + }
  118 + //alert(retorno);
  119 + if(retorno == false){
  120 + //alert('E-mail informado invalido! Por favor, especifique um E-mail válido para o campo \"' + nome + '\".');
  121 + document.getElementById(idElementoMensagemErro).style.display = '';
  122 + campo.focus();
  123 + return false;
  124 + }else{
  125 + document.getElementById(idElementoMensagemErro).style.display = 'none';
  126 + return true;
  127 + }
  128 + return retorno;
  129 +}
0 130 \ No newline at end of file
... ...
users/templates/users/create.html
... ... @@ -14,6 +14,7 @@
14 14  
15 15  
16 16 {% block content %}
  17 + <script src="{% static 'js/base/amadeus.js' %}"></script>
17 18 {% if messages %}
18 19 {% for message in messages %}
19 20 <div class="alert alert-success alert-dismissible" role="alert">
... ... @@ -33,30 +34,33 @@
33 34 {% for field in form %}
34 35 <div class="form-group{% if form.has_error %} has-error {% endif %} is-fileinput">
35 36 {% if field.auto_id == 'id_birth_date' %}
36   - <label for="{{ field.auto_id }}">{{ field.label }}</label>
  37 + <label for="{{ field.auto_id }}">{{ field.label }}</label>
37 38 <input type="date" class="form-control"name="{{field.name}}" value="{% if field.value.year %}{{field.value|date:'Y-m-d'}}{% else %}{{field.value}}{% endif %}">
38 39 {% elif field.auto_id == 'id_image' %}
39   - <label for="{{ field.auto_id }}">{{ field.label }}</label>
  40 + <label for="{{ field.auto_id }}">{{ field.label }}</label>
40 41 {% render_field field class='form-control' %}
41 42 <div class="input-group">
42   - <input type="text" readonly="" class="form-control" placeholder="{% trans 'Choose your photo...' %}">
43   - <span class="input-group-btn input-group-sm">
44   - <button type="button" class="btn btn-fab btn-fab-mini">
45   - <i class="material-icons">attach_file</i>
46   - </button>
47   - </span>
48   - </div>
49   - {% elif field.auto_id == 'id_is_staff' or field.auto_id == 'id_is_active' %}
50   - <div class="checkbox">
51   - <label>
52   - <input type="checkbox" name="checkbox"><span class="checkbox-material"><span class="check"></span></span> {{field.label}}
53   - </label>
54   - </div>
  43 + <input type="text" readonly="" class="form-control" placeholder="{% trans 'Choose your photo...' %}">
  44 + <span class="input-group-btn input-group-sm">
  45 + <button type="button" class="btn btn-fab btn-fab-mini">
  46 + <i class="material-icons">attach_file</i>
  47 + </button>
  48 + </span>
  49 + </div>
  50 + {% elif field.auto_id == 'id_is_staff' or field.auto_id == 'id_is_active' %}
  51 + <div class="checkbox">
  52 + <label>
  53 + <input type="checkbox" name="checkbox"><span class="checkbox-material"><span class="check"></span></span> {{field.label}}
  54 + </label>
  55 + </div>
  56 + {% elif field.auto_id == 'id_cpf' %}
  57 + <label for="{{ field.auto_id }}">{{ field.label }}</label>
  58 + {% render_field field class='form-control' onkeypress='campoNumerico(this,event); formatarCpf(this,event);' %}
55 59 {% else %}
56   - <label for="{{ field.auto_id }}">{{ field.label }}</label>
  60 + <label for="{{ field.auto_id }}">{{ field.label }}</label>
57 61 {% render_field field class='form-control' %}
58 62 {% endif %}
59   - <span id="helpBlock" class="help-block">{{ field.help_text }}</span>
  63 + <span id="helpBlock" class="help-block">{{ field.help_text }}</span>
60 64 {% if field.errors.length > 0 %}
61 65 <div class="alert alert-danger alert-dismissible" role="alert">
62 66 <button type="button" class="close" data-dismiss="alert" aria-label="Close">
... ... @@ -85,3 +89,7 @@
85 89 </br>
86 90 </br>
87 91 {% endblock %}
  92 +
  93 +{% block javascript %}
  94 +
  95 +{% endblock %}
... ...