resetea.net/public/index.html
hacklab 467820b8b3 feat: rediseño visual completo — slider, dark theme, hero unificado
- Dark theme en index (class=page-dark): fondo #1a1714, títulos ácido, botones nav crema
- Hero-landing con gradiente animado ácido→caoba aplicado a los 7 htmls
- Slider 3 slides (crossfade CSS + JS): crowd-phones / surveillance / legal-action
- Imágenes descargadas localmente (CSP img-src 'self')
- Botón RESETEA hero: verde ácido, fuente Recion, tipografía grande centrada
- Cards de estudios con enlaces a fuente original
- CSP ampliada: img-src añade cdn.simpleicons.org para chips de redes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 23:34:41 +02:00

642 lines
32 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="es">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>RESETEA.NET · La información es poder, quitémosles poder</title>
<meta name="description"
content="Envía cartas GDPR y elimina tus datos de redes sociales, buscadores y data brokers. Sin guardar información. Enlace oficiales y textos RGPD.">
<link rel="stylesheet" href="index.css">
</head>
<body class="page-dark">
<main>
<!-- ══════════════════════════════════════════
HERO — TÍTULO + LEMA + NAV BUTTONS
════════════════════════════════════════════ -->
<section class="hero-landing">
<div class="container hero-landing-inner">
<h1 class="main-title">RESETEA</h1>
<div class="landing-nav">
<a class="landing-nav-btn" href="tipos.html">Tipos de información</a>
<a class="landing-nav-btn" href="concienciacion.html">Concienciación</a>
<a class="landing-nav-btn" href="egosurfing.html">Egosurfing</a>
<a class="landing-nav-btn landing-nav-btn--highlight" href="plantillas.html">Resetea</a>
<a class="landing-nav-btn" href="stats.html">Estadísticas</a>
<a class="landing-nav-btn" href="salud-digital.html">🧠 Salud digital</a>
</div>
</div>
</section>
<!-- ══════════════════════════════════════════
INTRO — salud digital / por qué importa
════════════════════════════════════════════ -->
<section class="intro-section">
<div class="container intro-inner">
<div class="intro-left">
<span class="intro-label">Salud digital</span>
<h2 class="intro-title">
¿Por qué<br>
<em>resetear</em><br>
tu huella digital?
</h2>
<p class="intro-desc">
Cada clic, cada like, cada segundo de scroll alimenta sistemas diseñados
para mantenerte conectado. La ciencia lo confirma: el uso excesivo de redes sociales
altera la química cerebral, fragmenta la atención y deteriora el bienestar mental.
Recuperar el control empieza por entender lo que está en juego.
</p>
<ul class="intro-bullets">
<li>
<span class="bullet-icon bullet-icon--caoba">🧠</span>
<span><strong>Dopamina secuestrada.</strong> Los algoritmos de recompensa variable activan
los mismos circuitos cerebrales que las máquinas tragaperras, generando dependencia involuntaria.</span>
</li>
<li>
<span class="bullet-icon bullet-icon--acid">⏱️</span>
<span><strong>Atención fragmentada.</strong> Los usuarios de TikTok e Instagram cambian de
tarea cada 47&nbsp;segundos. La capacidad de concentración sostenida se deteriora con el uso crónico.</span>
</li>
<li>
<span class="bullet-icon bullet-icon--sage">🕵️</span>
<span><strong>Perfil sin consentimiento.</strong> Tu comportamiento en línea construye un perfil
vendido a miles de data brokers para influir en tus decisiones de consumo, políticas y vitales.</span>
</li>
<li>
<span class="bullet-icon bullet-icon--caoba">🔒</span>
<span><strong>Derecho al olvido.</strong> La ley europea te da el poder de exigir que
borren tus datos. Solo hace falta saber cómo ejercerlo.</span>
</li>
<li>
<span class="bullet-icon bullet-icon--blue">🌙</span>
<span><strong>Sueño interrumpido.</strong> El uso nocturno de pantallas suprime la melatonina
y activa el FOMO, reduciendo la calidad del sueño entre un 20&nbsp;y un 40&nbsp;%.</span>
</li>
<li>
<span class="bullet-icon bullet-icon--acid">😰</span>
<span><strong>Ansiedad social amplificada.</strong> Limitar redes a 30&nbsp;minutos/día
redujo significativamente la soledad y la depresión en 3&nbsp;semanas frente al grupo control.</span>
</li>
</ul>
<div class="intro-ctas">
<a class="intro-btn intro-btn--primary" href="salud-digital.html">
Leer el artículo científico →
</a>
<a class="intro-btn intro-btn--ghost" href="concienciacion.html">
Conoce tus derechos GDPR
</a>
</div>
</div>
<div class="intro-right">
<div class="intro-stat-card">
<div class="stat-row">
<span class="stat-icon">📱</span>
<div>
<div class="stat-val">6h 37m</div>
<div class="stat-desc">tiempo medio diario frente a pantallas en adultos españoles</div>
<div class="stat-source">Informe Digital 2024 · DataReportal</div>
</div>
</div>
<a class="study-card-link" style="margin-top:0.7rem;" href="https://datareportal.com/reports/digital-2024-global-overview-report" target="_blank" rel="noopener">Ver informe →</a>
</div>
<div class="intro-stat-card">
<div class="stat-row">
<span class="stat-icon">🧪</span>
<div>
<div class="stat-val">+61&nbsp;%</div>
<div class="stat-desc">más riesgo de depresión en adolescentes con uso diario intensivo de redes sociales</div>
<div class="stat-source">Twenge et al. (2018) · JAMA Pediatrics</div>
</div>
</div>
<a class="study-card-link" style="margin-top:0.7rem;" href="https://jamanetwork.com/journals/jamapediatrics/fullarticle/2737309" target="_blank" rel="noopener">Ver estudio →</a>
</div>
<div class="intro-stat-card">
<div class="stat-row">
<span class="stat-icon">🧠</span>
<div>
<div class="stat-val">40+</div>
<div class="stat-desc">estudios neurológicos documentan reducción de materia gris en el córtex prefrontal de usuarios intensivos</div>
<div class="stat-source">Revisión sistemática · PMC 2024</div>
</div>
</div>
</div>
<div class="intro-stat-card">
<div class="stat-row">
<span class="stat-icon">🛡️</span>
<div>
<div class="stat-val">30 días</div>
<div class="stat-desc">plazo legal máximo que tienen las plataformas para ejecutar tu solicitud de borrado GDPR</div>
<div class="stat-source">Art. 12 RGPD</div>
</div>
</div>
</div>
<div class="intro-stat-card">
<div class="stat-row">
<span class="stat-icon"></span>
<div>
<div class="stat-val">23 min</div>
<div class="stat-desc">tiempo medio para recuperar la concentración plena tras una interrupción digital. Cada notificación reinicia el reloj</div>
<div class="stat-source">Gloria Mark, UC Irvine · CHI 2008</div>
</div>
</div>
</div>
<div class="intro-stat-card">
<div class="stat-row">
<span class="stat-icon">🕵️</span>
<div>
<div class="stat-val">87M</div>
<div class="stat-desc">perfiles cosechados sin consentimiento por Cambridge Analytica para manipulación política</div>
<div class="stat-source">Testimonio Zuckerberg · Senado EE.UU. 2018</div>
</div>
</div>
</div>
</div>
<div class="intro-cta-hero">
<a class="btn-resetea-hero" href="#panel">RESETEA</a>
<span class="btn-resetea-sub">Ejerce tu derecho al olvido — gratis, sin abogado, en minutos</span>
</div>
</div>
</section>
<!-- ══════════════════════════════════════════
PHOTO SLIDER — imagen editorial
════════════════════════════════════════════ -->
<div class="photo-slider" id="photo-slider">
<div class="photo-slide photo-slide--1 active">
<div class="photo-slide-inner">
<span class="photo-slide-label">Tu atención, tu tiempo</span>
<h2 class="photo-slide-headline">4 horas al día en pantallas.<br>¿Cuántas decides tú?</h2>
<p class="photo-slide-sub">Recuperar el control no es dejar la tecnología. Es decidir conscientemente quién tiene acceso a ti.</p>
</div>
</div>
<div class="photo-slide photo-slide--2">
<div class="photo-slide-inner">
<span class="photo-slide-label">Vigilancia constante</span>
<h2 class="photo-slide-headline">Te observan aunque<br>no estés mirando.</h2>
<p class="photo-slide-sub">Cámaras, sensores, algoritmos. Tu rastro digital viaja solo las 24 horas. Tienes derecho a saber quién lo tiene y a recuperarlo.</p>
</div>
</div>
<div class="photo-slide photo-slide--3">
<div class="photo-slide-inner">
<span class="photo-slide-label">Tu derecho, tu poder</span>
<h2 class="photo-slide-headline">30 días. El plazo legal<br>para borrar tus datos.</h2>
<p class="photo-slide-sub">El RGPD te da herramientas concretas y exigibles. Ejercerlas es gratis, no requiere abogado y empieza aquí.</p>
</div>
</div>
<div class="slider-dots" role="tablist" aria-label="Diapositivas">
<button class="slider-dot active" aria-label="Diapositiva 1" data-slide="0"></button>
<button class="slider-dot" aria-label="Diapositiva 2" data-slide="1"></button>
<button class="slider-dot" aria-label="Diapositiva 3" data-slide="2"></button>
</div>
</div>
<!-- ══════════════════════════════════════════
ESTUDIOS — Lo que dice la ciencia
════════════════════════════════════════════ -->
<section class="studies-section">
<div class="container">
<div class="studies-header">
<span class="studies-eyebrow">Evidencia científica</span>
<h2 class="studies-title">Lo que dice la ciencia</h2>
<p class="studies-subtitle">Más de 40 estudios académicos publicados en revistas especializadas documentan el impacto neurológico y psicológico del uso intensivo de redes sociales.</p>
</div>
<div class="studies-grid">
<div class="study-card study-card--brain">
<div class="study-card-icon">🧠</div>
<div class="study-card-stat">40+</div>
<h3 class="study-card-title">Cambios estructurales</h3>
<p class="study-card-text">Estudios neurológicos documentan reducción de materia gris en el córtex prefrontal de usuarios intensivos — la zona responsable del autocontrol y la toma de decisiones.</p>
<span class="study-card-source">Revisión sistemática · PMC 2024</span>
<a class="study-card-link" href="https://pmc.ncbi.nlm.nih.gov/articles/PMC10912019/" target="_blank" rel="noopener">Ver estudio →</a>
</div>
<div class="study-card study-card--attention">
<div class="study-card-icon">⏱️</div>
<div class="study-card-stat">47 seg</div>
<h3 class="study-card-title">Atención fragmentada</h3>
<p class="study-card-text">Los usuarios de TikTok e Instagram cambian de tarea cada 47 segundos. La capacidad de concentración sostenida se deteriora con el uso crónico de feeds infinitos.</p>
<span class="study-card-source">Gloria Mark · UC Irvine · CHI 2008</span>
<a class="study-card-link" href="https://dl.acm.org/doi/10.1145/1357054.1357072" target="_blank" rel="noopener">Ver estudio →</a>
</div>
<div class="study-card study-card--sleep">
<div class="study-card-icon">🌙</div>
<div class="study-card-stat">40%</div>
<h3 class="study-card-title">Sueño interrumpido</h3>
<p class="study-card-text">El uso nocturno de pantallas suprime la melatonina y activa el FOMO, reduciendo la calidad del sueño entre un 20 y un 40% según el tipo de dispositivo y hora de uso.</p>
<span class="study-card-source">Hysing et al. (2015) · BMJ Open</span>
<a class="study-card-link" href="https://bmjopen.bmj.com/content/5/2/e006748" target="_blank" rel="noopener">Ver estudio →</a>
</div>
<div class="study-card study-card--data">
<div class="study-card-icon">🕵️</div>
<div class="study-card-stat">5.000+</div>
<h3 class="study-card-title">Datos como mercancía</h3>
<p class="study-card-text">Más de 5.000 data brokers comercian con tu perfil conductual. Los datos de comportamiento en redes se venden en tiempo real a anunciantes, aseguradoras y gobiernos.</p>
<span class="study-card-source">FTC Data Broker Report · 2014</span>
<a class="study-card-link" href="https://www.ftc.gov/reports/data-brokers" target="_blank" rel="noopener">Ver informe →</a>
</div>
</div>
<!-- Banner editorial — dopamina / adicción -->
<div class="studies-banner">
<div class="studies-banner-photo">
<div class="studies-banner-photo-inner">
<div class="sbp-label">El circuito de la adicción</div>
<div class="sbp-stat">Dopamina</div>
<div class="sbp-desc">Los likes activan los mismos circuitos cerebrales que las máquinas tragaperras</div>
</div>
</div>
<div class="studies-banner-text">
<h3>El diseño deliberado de la adicción</h3>
<p>Las plataformas de redes sociales no son neutrales. Sus equipos de ingeniería trabajan activamente para maximizar el <em>engagement</em> mediante patrones de recompensa variable — el mismo mecanismo que hace adictivo el juego de azar.</p>
<p>El ex presidente de Facebook Sean Parker admitió en 2017 que la plataforma fue diseñada explícitamente para "consumir tanto de tu tiempo y atención consciente como sea posible" explotando <em>"una vulnerabilidad en la psicología humana"</em>.</p>
<a class="intro-btn intro-btn--ghost" href="salud-digital.html">Ver todos los estudios →</a>
</div>
</div>
</div>
</section>
<!-- ══════════════════════════════════════════
FORMULARIO PRINCIPAL — EMAIL + REDES
════════════════════════════════════════════ -->
<section class="erase-form-section" id="panel">
<div class="container">
<div class="erase-form-wrap">
<div class="form-two-col">
<!-- ── Columna izquierda: email ── -->
<div class="form-col-email">
<div class="form-step-badge">1</div>
<h2 class="form-col-title">Tu correo electrónico</h2>
<p class="form-col-sub">Solo lo usamos para enviarte la carta GDPR. No lo guardamos ni lo compartimos.</p>
<input type="email" id="gdpr-email" class="email-input"
placeholder="tu@correo.com" autocomplete="email">
<ul class="form-privacy-list">
<li>🔒 Sin cookies ni tracking</li>
<li>🗑️ No almacenamos tu correo</li>
<li>✉️ Carta enviada al DPO directamente</li>
</ul>
</div>
<!-- ── Columna derecha: redes ── -->
<div class="form-col-networks">
<div class="form-col-networks-header">
<div class="form-step-badge">2</div>
<h2 class="form-col-title">Elige las redes</h2>
<button class="btn-select-all" id="btn-select-all" type="button">Seleccionar todas</button>
</div>
<p class="networks-group-label">Envío automático de carta GDPR</p>
<div class="networks-grid" id="networks-grid">
<button class="net-chip" data-provider="instagram" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/instagram/1a1714" alt=""><span class="chip-label">Instagram</span></button>
<button class="net-chip" data-provider="facebook" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/facebook/1a1714" alt=""><span class="chip-label">Facebook</span></button>
<button class="net-chip" data-provider="twitter_x" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/x/1a1714" alt=""><span class="chip-label">X / Twitter</span></button>
<button class="net-chip" data-provider="linkedin" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/linkedin/1a1714" alt=""><span class="chip-label">LinkedIn</span></button>
<button class="net-chip" data-provider="tiktok" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/tiktok/1a1714" alt=""><span class="chip-label">TikTok</span></button>
<button class="net-chip" data-provider="snapchat" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/snapchat/1a1714" alt=""><span class="chip-label">Snapchat</span></button>
<button class="net-chip" data-provider="discord" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/discord/1a1714" alt=""><span class="chip-label">Discord</span></button>
<button class="net-chip" data-provider="reddit" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/reddit/1a1714" alt=""><span class="chip-label">Reddit</span></button>
<button class="net-chip" data-provider="microsoft" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/microsoft/1a1714" alt=""><span class="chip-label">Microsoft</span></button>
<button class="net-chip" data-provider="apple" data-type="api"><img class="chip-icon" src="https://cdn.simpleicons.org/apple/1a1714" alt=""><span class="chip-label">Apple</span></button>
<button class="net-chip" data-provider="google" data-type="form"
data-form-url="https://support.google.com/policies/contact/sar_data_protection"><img class="chip-icon" src="https://cdn.simpleicons.org/google/1a1714" alt=""><span class="chip-label">Google</span></button>
<button class="net-chip" data-provider="amazon" data-type="form"
data-form-url="https://www.amazon.es/hz/contact-us/privacy-disclosure/"><img class="chip-icon" src="https://cdn.simpleicons.org/amazon/1a1714" alt=""><span class="chip-label">Amazon</span></button>
</div>
<p class="networks-group-label networks-group-label--manual">Acceso directo — clic abre el enlace oficial</p>
<p class="networks-manual-note">Estas plataformas no permiten solicitud automática. Clic en el botón abre su página oficial directamente.</p>
<div class="networks-grid networks-grid--manual">
<button class="net-chip net-chip--manual" data-provider="whatsapp"
data-link="https://faq.whatsapp.com/1306557496340600"><img class="chip-icon" src="https://cdn.simpleicons.org/whatsapp/1a1714" alt=""><span class="chip-label">WhatsApp</span> <span class="chip-arrow"></span></button>
<button class="net-chip net-chip--manual" data-provider="telegram"
data-link="https://my.telegram.org/auth"><img class="chip-icon" src="https://cdn.simpleicons.org/telegram/1a1714" alt=""><span class="chip-label">Telegram</span> <span class="chip-arrow"></span></button>
<button class="net-chip net-chip--manual" data-provider="spotify"
data-link="https://support.spotify.com/es/article/close-account/"><img class="chip-icon" src="https://cdn.simpleicons.org/spotify/1a1714" alt=""><span class="chip-label">Spotify</span> <span class="chip-arrow"></span></button>
<button class="net-chip net-chip--manual" data-provider="youtube"
data-link="https://support.google.com/youtube/answer/55759"><img class="chip-icon" src="https://cdn.simpleicons.org/youtube/1a1714" alt=""><span class="chip-label">YouTube</span> <span class="chip-arrow"></span></button>
<button class="net-chip net-chip--manual" data-provider="netflix"
data-link="https://help.netflix.com/es/node/100624"><img class="chip-icon" src="https://cdn.simpleicons.org/netflix/1a1714" alt=""><span class="chip-label">Netflix</span> <span class="chip-arrow"></span></button>
<button class="net-chip net-chip--manual" data-provider="twitch"
data-link="https://www.twitch.tv/user/delete-account"><img class="chip-icon" src="https://cdn.simpleicons.org/twitch/1a1714" alt=""><span class="chip-label">Twitch</span> <span class="chip-arrow"></span></button>
<button class="net-chip net-chip--manual" data-provider="pinterest"
data-link="https://help.pinterest.com/es/article/deactivate-or-close-your-account"><img class="chip-icon" src="https://cdn.simpleicons.org/pinterest/1a1714" alt=""><span class="chip-label">Pinterest</span> <span class="chip-arrow"></span></button>
</div>
<div class="form-counter" id="form-counter">0 redes seleccionadas</div>
</div>
</div>
<!-- ── Fila de envío ── -->
<div class="form-send-row">
<button class="btn primary btn--send-main" id="gdpr-send" disabled>
Enviar solicitudes GDPR
</button>
<p class="form-note">
No guardamos tu correo. Las cartas se envían directamente a los DPOs de cada plataforma.<br>
Las redes de "acceso directo" abren su página oficial al instante, sin necesidad de enviar nada.
</p>
</div>
<div id="gdpr-results" class="results-wrap" hidden></div>
</div>
</div>
</section>
<!-- ══════════════════════════════════════════
CÓMO FUNCIONA
════════════════════════════════════════════ -->
<section id="como" class="info">
<div class="container">
<h2>Cómo funciona</h2>
<p>
RESETEA.NET centraliza los <strong>enlaces oficiales</strong> y envía
<strong>cartas GDPR</strong> directamente a los DPOs de cada plataforma.
Tus datos nunca salen de tu dispositivo hacia nuestros servidores.
</p>
<div class="grid" style="margin-top:1.5rem;">
<div class="group">
<h3>Paso 1 — Descarga tus datos</h3>
<p style="font-size:0.85rem;color:var(--muted);">
Antes de borrar nada, usa el enlace "Descarga datos" de cada plataforma.
Activa el <strong>derecho a la portabilidad (Art. 20 RGPD)</strong>.
</p>
</div>
<div class="group">
<h3>Paso 2 — Envía la carta GDPR</h3>
<p style="font-size:0.85rem;color:var(--muted);">
Introduce tu correo, selecciona las redes y enviamos la carta por ti.
Las plataformas tienen <strong>30 días</strong> para ejecutar el borrado.
</p>
</div>
<div class="group">
<h3>Paso 3 — Elimina la cuenta</h3>
<p style="font-size:0.85rem;color:var(--muted);">
Usa el enlace oficial de eliminación. Muchas tienen un periodo de gracia
de 730 días. Después el borrado es definitivo.
</p>
</div>
</div>
</div>
</section>
<!-- ══════════════════════════════════════════
PLANTILLAS
════════════════════════════════════════════ -->
<section id="plantillas" class="info alt">
<div class="container">
<h2>Plantillas legales</h2>
<p>
Cartas pre-redactadas para el <strong>derecho de supresión (Art. 17)</strong>,
<strong>acceso (Art. 15)</strong>, <strong>portabilidad (Art. 20)</strong>
y <strong>oposición al perfilado (Art. 21)</strong>.
</p>
<p style="margin-top:1rem;">
El generador funciona íntegramente en tu navegador: tus datos nunca salen de tu dispositivo.
</p>
<div class="hero-actions" style="margin-top:1.5rem;">
<a class="btn primary" href="plantillas.html">Abrir generador de cartas</a>
<a class="btn ghost" href="concienciacion.html">Entender mis derechos</a>
</div>
</div>
</section>
<!-- ══════════════════════════════════════════
LEGAL
════════════════════════════════════════════ -->
<section id="legal" class="info">
<div class="container">
<h2>Aviso legal</h2>
<p>
Esta herramienta no ofrece asesoramiento legal. Los enlaces y plantillas son orientativos.
El éxito de las solicitudes depende de cada plataforma y de la legislación aplicable.
</p>
</div>
</section>
<!-- ══════════════════════════════════════════
CITAS — sección al pie
════════════════════════════════════════════ -->
<section class="quotes-footer-section">
<div class="container">
<p class="quotes-footer-label">Voces que importan</p>
<div class="quotes-footer-carousel" id="quote-carousel">
<blockquote class="hero-quote active">
<span class="q-mark">"</span>Matamos gente basándonos en metadatos.<span class="q-mark">"</span>
<cite>— Gen. Michael Hayden, ex-director de la NSA</cite>
</blockquote>
<blockquote class="hero-quote">
<span class="q-mark">"</span>Decir que la privacidad no te importa porque no tienes nada que ocultar es como decir que la libertad de expresión no importa porque no tienes nada que decir.<span class="q-mark">"</span>
<cite>— Edward Snowden</cite>
</blockquote>
<blockquote class="hero-quote">
<span class="q-mark">"</span>El que controla los datos del presente controla el pasado. El que controla el pasado controla el futuro.<span class="q-mark">"</span>
<cite>— Inspirado en George Orwell, <em>1984</em></cite>
</blockquote>
<blockquote class="hero-quote">
<span class="q-mark">"</span>No somos los clientes de estas empresas. Somos el producto.<span class="q-mark">"</span>
<cite>— Richard Serra &amp; Carlota Fay Schoolman, 1973</cite>
</blockquote>
<blockquote class="hero-quote">
<span class="q-mark">"</span>La vigilancia es el modelo de negocio de internet.<span class="q-mark">"</span>
<cite>— Bruce Schneier, criptógrafo y especialista en seguridad</cite>
</blockquote>
</div>
</div>
</section>
</main>
<footer class="footer">
<div class="container">
<p>RESETEA.NET · Software estático · Sin tracking · Sin cookies · Sin almacenamiento de datos</p>
</div>
</footer>
<script>
'use strict';
/* ── Photo slider ────────────────────────────── */
(function () {
const slider = document.getElementById('photo-slider');
if (!slider) return;
const slides = slider.querySelectorAll('.photo-slide');
const dots = slider.querySelectorAll('.slider-dot');
let current = 0;
let timer;
function goTo(n) {
slides[current].classList.remove('active');
dots[current].classList.remove('active');
current = (n + slides.length) % slides.length;
slides[current].classList.add('active');
dots[current].classList.add('active');
}
function start() { timer = setInterval(function() { goTo(current + 1); }, 5500); }
function stop() { clearInterval(timer); }
dots.forEach(function(dot) {
dot.addEventListener('click', function() {
stop(); goTo(+this.dataset.slide); start();
});
});
start();
})();
/* ── Chips de redes ─────────────────────────── */
/* Solo chips seleccionables (auto + form) — los manuales tienen acción directa */
const chips = document.querySelectorAll('.net-chip:not(.net-chip--manual)');
const manualChips = document.querySelectorAll('.net-chip--manual');
const sendBtn = document.getElementById('gdpr-send');
const emailIn = document.getElementById('gdpr-email');
const results = document.getElementById('gdpr-results');
const counter = document.getElementById('form-counter');
const selectAllBtn = document.getElementById('btn-select-all');
/* Chips seleccionables: toggle + actualiza botón */
chips.forEach(chip => {
chip.addEventListener('click', () => {
chip.classList.toggle('selected');
syncBtn();
});
});
/* Chips manuales: acción directa, abren el enlace oficial sin selección */
manualChips.forEach(chip => {
chip.addEventListener('click', () => {
window.open(chip.dataset.link, '_blank', 'noopener noreferrer');
chip.classList.add('chip--opened');
setTimeout(() => chip.classList.remove('chip--opened'), 1200);
});
});
emailIn.addEventListener('input', syncBtn);
selectAllBtn.addEventListener('click', () => {
const allSelected = [...chips].every(c => c.classList.contains('selected'));
chips.forEach(c => c.classList.toggle('selected', !allSelected));
selectAllBtn.textContent = allSelected ? 'Seleccionar todas' : 'Deseleccionar todas';
syncBtn();
});
function validEmail(v) { return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(v); }
function syncBtn() {
const selected = [...chips].filter(c => c.classList.contains('selected'));
const count = selected.length;
counter.textContent = count === 0 ? '0 redes seleccionadas'
: count === 1 ? '1 red seleccionada'
: count + ' redes seleccionadas';
const allSel = count === chips.length;
selectAllBtn.textContent = allSel ? 'Deseleccionar todas' : 'Seleccionar todas';
const ok = validEmail(emailIn.value) && count > 0;
sendBtn.disabled = !ok;
sendBtn.textContent = ok
? `Enviar cartas GDPR (${count})`
: 'Enviar cartas GDPR';
}
/* ── Envío ──────────────────────────────────── */
sendBtn.addEventListener('click', async () => {
const email = emailIn.value.trim();
const selected = [...chips].filter(c => c.classList.contains('selected'));
sendBtn.disabled = true;
sendBtn.textContent = 'Enviando…';
results.hidden = false;
results.innerHTML = '';
for (const chip of selected) {
const provider = chip.dataset.provider;
const type = chip.dataset.type;
const name = chip.querySelector('.chip-label')?.textContent.trim() || chip.textContent.trim();
if (type === 'form') {
window.open(chip.dataset.formUrl, '_blank', 'noopener noreferrer');
addResult(name, 'form', 'Formulario oficial abierto — rellénalo para completar la solicitud.');
continue;
}
/* type === 'api' */
try {
const res = await fetch('/api/erase', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ provider, email })
});
const data = await res.json();
if (data.status === 'ok') {
addResult(name, 'ok', `Carta GDPR enviada correctamente. Ref: <code>${data.reference}</code>`);
} else if (data.status === 'use_form') {
window.open(data.formUrl, '_blank', 'noopener noreferrer');
addResult(name, 'form', 'Este proveedor requiere formulario oficial (abierto en nueva pestaña).');
} else {
addResult(name, 'error', data.error || 'Error desconocido.');
}
} catch {
addResult(name, 'error', 'Error de red. Inténtalo de nuevo o usa el formulario oficial.');
}
}
sendBtn.textContent = 'Solicitudes enviadas ✓';
setTimeout(() => { syncBtn(); }, 4000);
});
function addResult(name, type, msg) {
const div = document.createElement('div');
div.className = `result-item result-${type}`;
div.innerHTML = `<strong>${name}</strong> — ${msg}`;
results.appendChild(div);
}
/* ── Carrusel de citas — rota cada 6 s ── */
(function () {
const quotes = document.querySelectorAll('.hero-quote');
if (!quotes.length) return;
let current = 0;
setInterval(() => {
quotes[current].classList.remove('active');
current = (current + 1) % quotes.length;
quotes[current].classList.add('active');
}, 6000);
})();
</script>
</body>
</html>