Ganadores:
Suplentes:
document.getElementById('fileInput').addEventListener('change', handleFileSelect);
function handleFileSelect(event) {
const file = event.target.files[0];
if (file) {
const reader = new FileReader();
reader.onload = function(e) {
const content = e.target.result;
const emails = processCSV(content);
displayEmails(emails);
document.getElementById('processButton').style.display = 'block';
};
reader.readAsText(file);
}
}
function processCSV(data) {
const lines = data.split('\n');
const header = lines[0].split(',');
const emailIndex = header.indexOf('Email');
if (emailIndex === -1) {
alert("La columna 'Email' no se encuentra en el archivo CSV. Verifica el nombre de la columna.");
throw new Error("La columna 'Email' no se encuentra en el archivo CSV.");
}
const emails = lines.slice(1).map(line => {
const columns = line.split(',');
return columns[emailIndex];
}).filter(email => email); // Elimina entradas vacías
return emails.map(email => ocultarEmail(email));
}
function ocultarEmail(email) {
const [nombre, dominio] = email.split('@');
const mitad = Math.floor(nombre.length / 2);
return nombre.slice(0, mitad) + '*'.repeat(nombre.length - mitad) + '@' + dominio;
}
function displayEmails(emails) {
const emailsList = document.getElementById('emailsList');
emailsList.innerHTML = '';
emails.forEach(email => {
const li = document.createElement('li');
li.textContent = email;
emailsList.appendChild(li);
});
}
function processFile() {
const emails = Array.from(document.querySelectorAll('#emailsList li')).map(li => li.textContent);
drawWinners(emails);
}
function drawWinners(emails) {
const shuffledEmails = emails.sort(() => Math.random() - 0.5);
const winners = shuffledEmails.slice(0, 2);
const substitutes = shuffledEmails.slice(2, 6);
displayResults(winners, substitutes);
}
function displayResults(winners, substitutes) {
const resultSection = document.getElementById('result');
const winnersList = document.getElementById('winnersList');
const substitutesList = document.getElementById('substitutesList');
winnersList.innerHTML = '';
substitutesList.innerHTML = '';
winners.forEach(email => {
const li = document.createElement('li');
li.textContent = email;
winnersList.appendChild(li);
});
substitutes.forEach(email => {
const li = document.createElement('li');
li.textContent = email;
substitutesList.appendChild(li);
});
resultSection.classList.remove('hidden');
}