-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
123 lines (109 loc) · 3.28 KB
/
script.js
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
const textArea = document.querySelector(".text-area");
const mensaje = document.querySelector(".mensaje");
const modal = document.getElementById("modal");
const spamMessage = document.getElementById("spamMessage");
mensaje.readOnly = true; // Bloquear escritura en el campo de texto
/*La letra "e" es convertida para "enter"
La letra "i" es convertida para "imes"
La letra "a" es convertida para "ai"
La letra "o" es convertida para "ober"
La letra "u" es convertida para "ufat"*/
function verificarTexto(texto) {
if (/[A-ZÁÉÍÓÚáéíóú]/.test(texto)) {
alert("No se permiten letras mayúsculas ni acentos");
return false;
}
return true;
}
function btnEncriptar() {
const textoEncriptado = encriptar(textArea.value);
if (verificarTexto(textArea.value)) {
mensaje.value = textoEncriptado;
textArea.value = "";
mensaje.style.backgroundImage = "none";
}
}
function btnDesencriptar() {
const textoEncriptado = desencriptar(textArea.value);
if (verificarTexto(textArea.value)) {
mensaje.value = textoEncriptado;
textArea.value = "";
mensaje.style.backgroundImage = "none";
}
}
function encriptar(stringEncriptado) {
let codigoMatriz = [
["e", "enter"],
["i", "imes"],
["a", "ai"],
["o", "ober"],
["u", "ufat"]
];
stringEncriptado = stringEncriptado.toLowerCase();
if (stringEncriptado.trim() === "") {
alert("No hay texto a encriptar");
return stringEncriptado;
}
for (let i = 0; i < codigoMatriz.length; i++) {
if (stringEncriptado.includes(codigoMatriz[i][0])) {
stringEncriptado = stringEncriptado.replaceAll(
codigoMatriz[i][0],
codigoMatriz[i][1]
);
}
}
return stringEncriptado;
}
function desencriptar(stringDesencriptado) {
let codigoMatriz = [
["e", "enter"],
["i", "imes"],
["a", "ai"],
["o", "ober"],
["u", "ufat"]
];
stringDesencriptado = stringDesencriptado.toLowerCase();
if (stringDesencriptado.trim() === "") {
alert("No hay texto a desencriptar");
return stringDesencriptado;
}
for (let i = 0; i < codigoMatriz.length; i++) {
if (stringDesencriptado.includes(codigoMatriz[i][1])) {
stringDesencriptado = stringDesencriptado.replaceAll(
codigoMatriz[i][1],
codigoMatriz[i][0]
);
}
}
return stringDesencriptado;
}
function btnCopiar() {
if (mensaje.value.trim() === "") {
// No hay texto para copiar
alert("No se ha encontrado texto para copiar");
return;
}
// Copiar el texto al portapapeles utilizando la API Clipboard
if (navigator.clipboard && navigator.clipboard.writeText) {
navigator.clipboard
.writeText(mensaje.value)
.then(() => {
showSpam();
})
.catch((error) => {
console.error("Error al copiar el texto al portapapeles:", error);
});
} else {
// Utilizar una estrategia alternativa si la API Clipboard no está disponible
alert("La función de copiar al portapapeles no es compatible en este navegador");
}
}
function showSpam() {
spamMessage.textContent = "¡Texto copiado al portapapeles!";
modal.style.display = "block";
modal.classList.add("show-spam");
setTimeout(() => {
modal.style.display = "none";
modal.classList.remove("show-spam");
}, 2000); // Ocultar el mensaje después de 2 segundos
}