Mostrar los tags: AT

Mostrando del 31 al 40 de 399 coincidencias
Se ha buscado por el tag: AT
sin imagen de perfil

BOOTSTRAP DATA-TABLE DINAMICA FETCH


JavaScript

Publicado el 10 de Enero del 2023 por Jefferson (11 códigos)
2.619 visualizaciones desde el 10 de Enero del 2023

Suelo trabajar con Bootstrap y ya no queria usar JQuery para manejar la libreria DataTable.

Se que existen muchas librerias DataTable con Vanilla Javascript, Vue, React, etc..

Pero queria tener algo sencillo, de solo configurar 3-4 variables y armar mi datatable dinamica.

Pues bien como suelo usar Bootstrap me ahorre de hacer el css y solo me hice el js.

Lo publico por si alguien desea usarlo y/o se animan para crear un nucleo solido con funciones mas complejas.

Repito cualquier error por favor háganlo saber (que debo tener), ya que lo hice al paso y aun no lo uso en producción.



img3
sin imagen de perfil

Generar password seguro


JavaScript

Publicado el 2 de Enero del 2023 por Jefferson (11 códigos)
866 visualizaciones desde el 2 de Enero del 2023

SCRIPT PARA GENERAR UN PASSWORD SEGURO




Incluye tres niveles
1) Debil
2) Fuerte
3) Muy fuerte

Todas las password generadas incluyen al menos
1 Numero
1 Mayuscula
1 Minuscula
1 Caracter especial
8 lenght


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link
      href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
      rel="stylesheet"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
    <title>Generar Pass</title>
  </head>
 
  <body>
    <section class="container mt-3">
      <h1 class="text-center">
        Genera tu password
        <h5 class="text-center">
          Incluimos Mayusculas, Minusculas, Numeros y Caracteres especiales
        </h5>
      </h1>
      <hr />
      <div class="row justify-content-around mt-3">
        <div class="col-4">
          <h4 class="text-center my-2 mb-4">Escoje cual contraseña</h4>
          <div class="form-check form-check-inline">
            <input
              class="form-check-input"
              type="radio"
              name="sel"
              id="i1"
              value="1"
              role="button"
            />
            <label class="form-check-label" for="i1" role="button">Debil</label>
          </div>
          <div class="vr"></div>
          <div class="form-check form-check-inline ms-2">
            <input
              class="form-check-input"
              type="radio"
              name="sel"
              id="i2"
              value="2"
              role="button"
            />
            <label class="form-check-label" for="i2" role="button"
              >Fuerte</label
            >
          </div>
          <div class="vr"></div>
          <div class="form-check form-check-inline ms-2">
            <input
              class="form-check-input"
              type="radio"
              name="sel"
              id="i3"
              value="3"
              role="button"
            />
            <label class="form-check-label" for="i3" role="button"
              >Muy Fuerte</label
            >
          </div>
          <div class="row justify-content-center mt-4">
            <button class="btn btn-primary">Generar</button>
          </div>
        </div>
        <div class="vr bg-light border-end border-secondary"></div>
        <div id="div_res" class="col-4 d-none">
          <h2 id="dev" class="text-center border rounded p-3 shadow"></h2>
          <div class="row mt-3">
            <div class="col-4">
              <span id="cop" class="btn btn-outline-dark">copy</span>
            </div>
            <div class="col-4">
              <a
                href="https://ciberprotector.com/comprobador-de-contrase%C3%B1as/"
                target="_blank"
                >Ciberprotector</a
              >
            </div>
            <div class="col-4">
              <a
                href="https://delinea.com/resources/password-strength-checker"
                target="_blank"
                >Delinea</a
              >
            </div>
          </div>
        </div>
      </div>
    </section>
 
    <script>
      document
        .querySelector(".btn-primary")
        .addEventListener("click", function () {
          let a;
          div_res.classList.add("d-none");
          dev.classList.remove(
            "bg-danger",
            "bg-secondary",
            "bg-warning",
            "text-light",
            "text-warning",
            "text-success"
          );
          document.querySelectorAll('[name="sel"]').forEach(function (e) {
            if (e.checked) a = e.value;
          });
          if (a != undefined) {
            1 == a
              ? dev.classList.add("bg-danger", "text-light")
              : 2 == a
              ? dev.classList.add("bg-secondary", "text-warning")
              : dev.classList.add("bg-warning", "text-success");
            div_res.classList.remove("d-none");
            dev.innerText = generar_pass(a);
          }
        });
      const copyContent = async () => {
        let text = document.getElementById("dev").innerText;
        try {
          await navigator.clipboard.writeText(text);
          console.log("Content copied to clipboard");
        } catch (err) {
          console.error("Failed to copy: ", err);
        }
      };
      cop.addEventListener("click", copyContent);
 
 
      /* CODIGO GENERAR PASS */
      const generar_pass = (t) => {
          let e;
          if (1 == t)
            for (let a = 0; (e = aleatorio(8)), check_pass(e) != t; a++);
          else if (2 == t)
            for (let a = 0; (e = aleatorio(12)), check_pass(e) != t; a++);
          else for (let a = 0; (e = aleatorio(14)), check_pass(e) != t; a++);
          return e;
        },
        aleatorio = (t) => {
          let e,
            a =
              "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789^!$%&|[](){}:;.*+-#@<>~";
          const r = () => (
            (e = (() => {
              let e = "";
              for (var r = 0, l = a.length; r < t; ++r)
                e += a.charAt(Math.floor(Math.random() * l));
              return e;
            })()),
            !!(
              e.match(/\W|_/g) &&
              e.match(/(\d+)/g) &&
              e.match(/[a-z]/g) &&
              e.match(/[A-Z]/g)
            ) && e
          );
          for (let t = 0; !r(); t++);
          return e;
        },
        check_pass = (t) => {
          let e,
            a = [
              t.match(/\W|_/g).length,
              t.match(/(\d+)/g).length,
              t.match(/[a-z]/g).length,
              t.match(/[A-Z]/g).length,
            ];
          for (let t = 0; t < a.length; t++) {
            let r = a[t];
            if (((e = ""), 1 == r)) {
              e = 1;
              break;
            }
            if (2 == r) {
              e = 2;
              break;
            }
            e = 3;
          }
          return e;
        };
    </script>
  </body>
</html>
sin imagen de perfil

Inicio Sesion Robusto Implementando doble factor


PHP

Publicado el 29 de Diciembre del 2022 por Jefferson (11 códigos)
3.509 visualizaciones desde el 29 de Diciembre del 2022

Implementa un sistema mas robusto para el inicio de sesión



in


1) Registro de usuario verificando el email. Encriptando la url de tal forma que sea ilegible por algún pirata.

2) Al registrase le enviaremos al correo la imagen QR para que pueda ser escaneada por su smartphone / teléfono inteligente y agregar a la app de AUTENTIFICACION DOBLE FACTOR que el usuario escoja de la tienda STORE.

3) Libertad para que el usuario cree su propia pregunta de seguridad y la respuesta. Solo el usuario podrá formular su pregunta secreta escudriñando en sus recuerdos y que solo él sepa la respuesta.

4) Recuperación del password por olvido en el mismo sistema, dado que al escribir el email le devolvemos la pregunta de seguridad.

5) Recuperación por si acaso cambia su smartphone / teléfono inteligente y pierde la app móvil de AUTENTIFICACIÓN DOBLE FACTOR, enviándole a su correo la nueva imagen QR para el nuevo registro.

6) El usuario admin cuya password es admin, tendrá libertad de permitir o rechazar al usuario recién registrado.

7) El sistema funciona con cualquier app de AUTENTIFICACIÓN DOBLE FACTOR disponibles en la STORE. (No lo probé con Iphone).


allsmall
Imágen de perfil

ARGUMENTOS.


C/Visual C

estrellaestrellaestrellaestrellaestrella(1)
Publicado el 18 de Diciembre del 2022 por Hilario (145 códigos)
579 visualizaciones desde el 18 de Diciembre del 2022
*
****************************************
Extinctus ambitur ídem...
--------------------------------------
Hilario Iglesias Martínez.
---------------------------------------
argumento.c
------------------------------------------
Un pequeño y sencillo ejemplo del tratamiento
de entrada de argumentos a través de main().
Como podemos mediante esta función introducir
-en este caso, cantidades númericas-, para
hacer una comparativa de valores.
Imprimiento los resultados mediante consola Linux.
-----------------------------------------------
Compilacion del programa:
gcc -Wall -Werror -o argumento argumento.c
*****
Ejecución:
./argumento
Imágen de perfil

ESTRUCTURAS Y FUNCIONES


C/Visual C

estrellaestrellaestrellaestrellaestrella(2)
Publicado el 12 de Noviembre del 2022 por Hilario (145 códigos)
811 visualizaciones desde el 12 de Noviembre del 2022
*********************************************
Amare et sapere vix deo conceditur.
*********************************************
Hilario Iglesias Martínez.
-----------------------------------------------
Se plantean 3 sencillos ejercicios basados en ANSI-C.

Se trata del manejo de funciones y estructuras, tomadas estas

como argumentos de la función, pasando a la misma una estructura

de datos de forma directa, a través de un puntero, o por elementos

independientes que componen la estructura.

Estos ejercicios son para jugar con ellos, y aprender su manejo en otras

modalidades de paso a función.
--------------------------------------------------------
Los ejerciciosfueronrealizados, en una plataforma
LINUX Ubuntu 20.04.4 LTS.
Bajo el standard ANSI-C,

-------------------------------------------------------------

Imágen de perfil

Algoritmo de busqueda binaria


Java

Publicado el 24 de Octubre del 2022 por Rafael Angel (15 códigos)
1.378 visualizaciones desde el 24 de Octubre del 2022
Este algoritmo permite buscar en un vector en forma binaria.
Por ejemplo {1,2,3,4,5,6,7,8,9,10}, y quiero buscar el valor 4 entonces el algoritmo dibide la cantidad de items del vector en 2.
Luego verifica si el valor buscado es mayor o igual al primer item de la segunda mitad, de no ser asi entonces el valor debe estar en la primera mitad.

Ademas, viene una version personalizada del algoritmo.

Cualquier ayuda.
Numero de celular en Costa Rica:
506 83942235
Imágen de perfil

MATRIZ BIDIMENSIONAL


C/Visual C

Publicado el 20 de Octubre del 2022 por Hilario (145 códigos)
655 visualizaciones desde el 20 de Octubre del 2022
**************************************************
Amicus certus in re incerta cernitur.
**************************************************
Hilario Iglesias Martínez.
*************************************************
/*
Medias_de_Agua.c
*/

***************************************************
Este programa fue realizado en una plataforma
LINUX Ubuntu 20.04.4 LTS.
Bajo el standard ANSI-C,
**********************************************
Este sencillo programa, explica esquématicamente
el funcionamiento de una pequeña base de datos,
aplicando para el desarrollo de la mismo una matriz
de dos dimensiones(Matriz bidimensional).

Los datos se introducen a través de la consola de
linux, y luego vuelca como resultado
las medias de las mismas.

Secillo. Hecho para jugar con el,
modificando parámetros o corrigiendo errores.

************************************************************
COMPILACIÓN:
gcc -Wall -Werror -o Medias_de_Agua Medias_de_Agua.c
*********************************************************
EJECUCIÓN:
./Medias_de_Agua
*****************************************************************
Imágen de perfil

Calculadore inline


JavaScript

Publicado el 18 de Septiembre del 2022 por Oscar (8 códigos)
1.317 visualizaciones desde el 18 de Septiembre del 2022
Este codigo en javascript permite sacar una cuenta con los operadores basicos, poniendo todos ellos en la misma cadena, siempre dejando un espacio como restricción. Este código esta basado en una kata de codewars que resolvi y que paso una test enorme de bastantisimos operadores