{"id":12,"date":"2026-09-07T16:36:49","date_gmt":"2026-09-07T16:36:49","guid":{"rendered":"https:\/\/antesdehacerclick.es\/?page_id=12"},"modified":"2026-09-07T16:36:49","modified_gmt":"2026-09-07T16:36:49","slug":"test-gemini","status":"publish","type":"page","link":"https:\/\/antesdehacerclick.es\/index.php\/test-gemini\/","title":{"rendered":"test-gemini"},"content":{"rendered":"    <div id=\"vc-verificador\" style=\"max-width:600px; margin:0 auto; font-family:inherit;\">\r\n\r\n        <div style=\"display:flex; gap:8px; margin-bottom:16px;\">\r\n            <button type=\"button\" class=\"vc-tab vc-tab-activa\" data-tipo=\"mensaje\">\ud83d\udcf1 Un SMS o correo<\/button>\r\n            <button type=\"button\" class=\"vc-tab\" data-tipo=\"enlace\">\ud83c\udf10 Una web<\/button>\r\n        <\/div>\r\n\r\n        <p id=\"vc-ayuda-mensaje\" class=\"vc-ayuda\">\r\n            Pega aqu\u00ed el texto completo del SMS, WhatsApp o correo. Si puedes, a\u00f1ade qui\u00e9n lo env\u00eda.\r\n        <\/p>\r\n        <p id=\"vc-ayuda-enlace\" class=\"vc-ayuda\" style=\"display:none;\">\r\n            Pega \u00fanicamente la direcci\u00f3n web completa, empezando por http:\/\/ o https:\/\/.\r\n            La comprobaci\u00f3n es pasiva: no cargamos la p\u00e1gina ni ejecutamos su c\u00f3digo.\r\n        <\/p>\r\n\r\n        <div id=\"vc-campo-remitente\" style=\"margin-bottom:10px;\">\r\n            <label style=\"display:block; font-weight:bold; margin-bottom:4px;\">\r\n                \u00bfQui\u00e9n te lo env\u00eda? <span style=\"font-weight:normal; color:#888;\">(Opcional)<\/span>\r\n            <\/label>\r\n            <input type=\"text\" id=\"vc-remitente\" placeholder=\"Ej.: +34 600 000 000, Correos, avisos@dominio.com\"\r\n                   style=\"width:100%; padding:8px; box-sizing:border-box;\">\r\n        <\/div>\r\n\r\n        <div id=\"vc-campo-contexto\" style=\"margin-bottom:10px; display:none;\">\r\n            <label style=\"display:block; font-weight:bold; margin-bottom:4px;\">\r\n                \u00bfD\u00f3nde apareci\u00f3 y qu\u00e9 promet\u00eda? <span style=\"font-weight:normal; color:#888;\">(Opcional)<\/span>\r\n            <\/label>\r\n            <textarea id=\"vc-contexto\" rows=\"2\" placeholder=\"Ej.: lleg\u00f3 por SMS y dec\u00eda que deb\u00eda pagar 1,99\u20ac por un paquete\"\r\n                      style=\"width:100%; padding:8px; box-sizing:border-box;\"><\/textarea>\r\n        <\/div>\r\n\r\n        <label style=\"display:block; font-weight:bold; margin-bottom:4px;\">Contenido que quieres comprobar<\/label>\r\n        <p style=\"font-size:0.85em; color:#888; margin:0 0 6px 0;\">\r\n            \u26a0\ufe0f No incluyas contrase\u00f1as, c\u00f3digos de verificaci\u00f3n ni n\u00fameros de tarjeta completos.\r\n        <\/p>\r\n        <textarea id=\"vc-contenido\" rows=\"6\" maxlength=\"12000\"\r\n                  placeholder=\"Pega aqu\u00ed el mensaje o correo completo, tal como lo recibiste\"\r\n                  style=\"width:100%; padding:8px; box-sizing:border-box;\"><\/textarea>\r\n        <div style=\"text-align:right; font-size:0.8em; color:#888;\"><span id=\"vc-contador\">0<\/span>\/12.000<\/div>\r\n\r\n        <label style=\"display:flex; align-items:flex-start; gap:8px; margin-top:14px; font-size:0.9em; cursor:pointer;\">\r\n            <input type=\"checkbox\" id=\"vc-consentimiento\" style=\"margin-top:3px;\">\r\n            <span>He ocultado contrase\u00f1as, c\u00f3digos, DNI, tarjetas y datos bancarios. Acepto el tratamiento necesario para recibir el an\u00e1lisis.<\/span>\r\n        <\/label>\r\n\r\n        <button type=\"button\" id=\"vc-enviar\" disabled style=\"margin-top:12px; padding:10px 20px; cursor:not-allowed; opacity:0.5;\">\r\n            \ud83d\udd0e Comprobar\r\n        <\/button>\r\n\r\n        <div id=\"vc-resultado\" style=\"margin-top:20px;\"><\/div>\r\n    <\/div>\r\n\r\n    <style>\r\n        .vc-tab { padding:8px 14px; border:1px solid #ccc; background:#f7f7f7; cursor:pointer; border-radius:4px; }\r\n        .vc-tab-activa { background:#333; color:#fff; border-color:#333; }\r\n        .vc-resultado-caja { padding:16px; border-radius:6px; margin-top:10px; }\r\n        .vc-riesgo-alto { background:#fdecea; border-left:4px solid #d93025; }\r\n        .vc-riesgo-medio { background:#fef7e0; border-left:4px solid #f9ab00; }\r\n        .vc-riesgo-bajo { background:#e6f4ea; border-left:4px solid #34a853; }\r\n    <\/style>\r\n\r\n    <script>\r\n    (function () {\r\n        const tabs = document.querySelectorAll('#vc-verificador .vc-tab');\r\n        let tipoActual = 'mensaje';\r\n\r\n        tabs.forEach(tab => {\r\n            tab.addEventListener('click', () => {\r\n                tabs.forEach(t => t.classList.remove('vc-tab-activa'));\r\n                tab.classList.add('vc-tab-activa');\r\n                tipoActual = tab.dataset.tipo;\r\n\r\n                document.getElementById('vc-ayuda-mensaje').style.display = tipoActual === 'mensaje' ? 'block' : 'none';\r\n                document.getElementById('vc-ayuda-enlace').style.display = tipoActual === 'enlace' ? 'block' : 'none';\r\n                document.getElementById('vc-campo-remitente').style.display = tipoActual === 'mensaje' ? 'block' : 'none';\r\n                document.getElementById('vc-campo-contexto').style.display = tipoActual === 'enlace' ? 'block' : 'none';\r\n\r\n                const contenido = document.getElementById('vc-contenido');\r\n                contenido.placeholder = tipoActual === 'mensaje'\r\n                    ? 'Pega aqu\u00ed el mensaje o correo completo, tal como lo recibiste'\r\n                    : 'Pega \u00fanicamente el enlace completo, empezando por http:\/\/ o https:\/\/';\r\n            });\r\n        });\r\n\r\n        const contenidoEl = document.getElementById('vc-contenido');\r\n        contenidoEl.addEventListener('input', () => {\r\n            document.getElementById('vc-contador').textContent = contenidoEl.value.length;\r\n        });\r\n\r\n        const checkboxConsentimiento = document.getElementById('vc-consentimiento');\r\n        const botonEnviar = document.getElementById('vc-enviar');\r\n        checkboxConsentimiento.addEventListener('change', () => {\r\n            botonEnviar.disabled = !checkboxConsentimiento.checked;\r\n            botonEnviar.style.opacity = checkboxConsentimiento.checked ? '1' : '0.5';\r\n            botonEnviar.style.cursor = checkboxConsentimiento.checked ? 'pointer' : 'not-allowed';\r\n        });\r\n\r\n        document.getElementById('vc-enviar').addEventListener('click', async () => {\r\n            const boton = document.getElementById('vc-enviar');\r\n            const resultadoEl = document.getElementById('vc-resultado');\r\n            const contenido = contenidoEl.value.trim();\r\n\r\n            if (!contenido) {\r\n                resultadoEl.innerHTML = '<p style=\"color:#d93025;\">Por favor, pega el contenido que quieres comprobar.<\/p>';\r\n                return;\r\n            }\r\n\r\n            if (!checkboxConsentimiento.checked) {\r\n                resultadoEl.innerHTML = '<p style=\"color:#d93025;\">Debes confirmar que has ocultado los datos sensibles.<\/p>';\r\n                return;\r\n            }\r\n\r\n            boton.disabled = true;\r\n            boton.textContent = 'Comprobando...';\r\n            resultadoEl.innerHTML = '';\r\n\r\n            try {\r\n                const respuesta = await fetch('https:\/\/antesdehacerclick.es\/index.php\/wp-json\/verificador\/v1\/check', {\r\n                    method: 'POST',\r\n                    headers: { 'Content-Type': 'application\/json' },\r\n                    body: JSON.stringify({\r\n                        tipo: tipoActual,\r\n                        contenido: contenido,\r\n                        remitente: document.getElementById('vc-remitente').value.trim(),\r\n                        contexto: document.getElementById('vc-contexto').value.trim(),\r\n                        consentimiento: checkboxConsentimiento.checked,\r\n                    })\r\n                });\r\n\r\n                const datos = await respuesta.json();\r\n\r\n                if (!respuesta.ok) {\r\n                    resultadoEl.innerHTML = `<p style=\"color:#d93025;\">${datos.error || 'Ha ocurrido un error.'}<\/p>`;\r\n                    return;\r\n                }\r\n\r\n                const clasesRiesgo = { alto: 'vc-riesgo-alto', medio: 'vc-riesgo-medio', bajo: 'vc-riesgo-bajo' };\r\n                const emojisRiesgo = { alto: '\ud83d\udd34', medio: '\ud83d\udfe1', bajo: '\ud83d\udfe2' };\r\n                const clase = clasesRiesgo[datos.riesgo] || 'vc-riesgo-medio';\r\n                const emoji = emojisRiesgo[datos.riesgo] || '\u26aa';\r\n\r\n                const listaSenales = (datos.senales || []).map(s => `<li>${s}<\/li>`).join('');\r\n                const listaLimitaciones = (datos.no_podemos_asegurar || []).map(s => `<li>${s}<\/li>`).join('');\r\n                const bloqueLimitaciones = listaLimitaciones\r\n                    ? `<div style=\"margin-top:14px; padding-top:12px; border-top:1px solid rgba(0,0,0,0.08);\">\r\n                           <p style=\"margin:0 0 6px 0; color:#555;\"><strong>Qu\u00e9 no podemos asegurar:<\/strong><\/p>\r\n                           <ul style=\"margin:0; color:#555;\">${listaLimitaciones}<\/ul>\r\n                       <\/div>`\r\n                    : '';\r\n\r\n                resultadoEl.innerHTML = `\r\n                    <div class=\"vc-resultado-caja ${clase}\">\r\n                        <p style=\"font-weight:bold; margin:0 0 8px 0;\">${emoji} Riesgo ${datos.riesgo}<\/p>\r\n                        <p style=\"margin:0 0 6px 0;\"><strong>Se\u00f1ales encontradas:<\/strong><\/p>\r\n                        <ul style=\"margin:0 0 10px 0;\">${listaSenales}<\/ul>\r\n                        <p style=\"margin:0;\"><strong>Qu\u00e9 har\u00edamos nosotros:<\/strong> ${datos.recomendacion}<\/p>\r\n                        ${bloqueLimitaciones}\r\n                    <\/div>\r\n                `;\r\n            } catch (error) {\r\n                resultadoEl.innerHTML = '<p style=\"color:#d93025;\">No se ha podido completar la comprobaci\u00f3n. Int\u00e9ntalo de nuevo.<\/p>';\r\n            } finally {\r\n                boton.disabled = false;\r\n                boton.textContent = '\ud83d\udd0e Comprobar';\r\n            }\r\n        });\r\n    })();\r\n    <\/script>\r\n    \n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_oxygen_hide_in_design_set":false,"_oxygen_tags":"","footnotes":""},"class_list":["post-12","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/pages\/12","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/comments?post=12"}],"version-history":[{"count":1,"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/pages\/12\/revisions"}],"predecessor-version":[{"id":14,"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/pages\/12\/revisions\/14"}],"wp:attachment":[{"href":"https:\/\/antesdehacerclick.es\/index.php\/wp-json\/wp\/v2\/media?parent=12"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}