Spaces:
Running
Running
Update index.html
Browse files- index.html +15 -19
index.html
CHANGED
|
@@ -589,11 +589,15 @@
|
|
| 589 |
usernameMessage.classList.add('text-red-500');
|
| 590 |
return;
|
| 591 |
}
|
| 592 |
-
|
|
|
|
|
|
|
| 593 |
loginOverlay.style.opacity = '0';
|
| 594 |
setTimeout(() => { loginOverlay.style.display = 'none'; }, 500);
|
| 595 |
initScene();
|
| 596 |
loadAllMaps();
|
|
|
|
|
|
|
| 597 |
});
|
| 598 |
|
| 599 |
// auth state changes
|
|
@@ -693,7 +697,10 @@
|
|
| 693 |
userProfileCache[uid] = userProfile;
|
| 694 |
console.log("Perfil de usuario guardado:", userProfile);
|
| 695 |
} catch (error) {
|
| 696 |
-
|
|
|
|
|
|
|
|
|
|
| 697 |
}
|
| 698 |
}
|
| 699 |
|
|
@@ -782,23 +789,11 @@
|
|
| 782 |
const level2Slider = document.getElementById('level2Slider');
|
| 783 |
const level3Slider = document.getElementById('level3Slider');
|
| 784 |
|
|
|
|
|
|
|
| 785 |
if (isAnonymous) {
|
| 786 |
-
|
| 787 |
-
|
| 788 |
-
<svg class="w-5 h-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
| 789 |
-
<path stroke-linecap="round" stroke-linejoin="round" d="M16.5 10.5V6.75a4.5 4.5 0 10-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 002.25-2.25v-6.75a2.25 2.25 0 00-2.25-2.25H6.75a2.25 2.25 0 00-2.25 2.25v6.75a2.25 2.25 0 002.25 2.25z" />
|
| 790 |
-
</svg>
|
| 791 |
-
<span>Solo Lectura</span>`;
|
| 792 |
-
visualizeButton.classList.add('bg-gray-500', 'hover:bg-gray-500', 'cursor-not-allowed');
|
| 793 |
-
visualizeButton.classList.remove('bg-green-600', 'hover:bg-green-700');
|
| 794 |
-
|
| 795 |
-
topicInput.disabled = true;
|
| 796 |
-
topicInput.placeholder = 'Inicia sesión para sembrar';
|
| 797 |
-
level1Slider.disabled = true;
|
| 798 |
-
level2Slider.disabled = true;
|
| 799 |
-
level3Slider.disabled = true;
|
| 800 |
-
} else {
|
| 801 |
-
visualizeButton.addEventListener('click', handleAnalysisAndVisualization);
|
| 802 |
}
|
| 803 |
|
| 804 |
document.getElementById('level1Slider').addEventListener('input', (e) => {
|
|
@@ -1068,7 +1063,8 @@
|
|
| 1068 |
visualizeRoot(rootTopic, mapOrigin);
|
| 1069 |
visualizeHashtags(parsedData.lista_palabras, mapOrigin, 1, null);
|
| 1070 |
|
| 1071 |
-
|
|
|
|
| 1072 |
await saveMapToFirestore(rootTopic, "3", mapOrigin, parsedData);
|
| 1073 |
}
|
| 1074 |
} else {
|
|
|
|
| 589 |
usernameMessage.classList.add('text-red-500');
|
| 590 |
return;
|
| 591 |
}
|
| 592 |
+
// Establecer perfil local inmediatamente para no bloquear por red
|
| 593 |
+
userProfile = { username };
|
| 594 |
+
userProfileCache[userId] = userProfile;
|
| 595 |
loginOverlay.style.opacity = '0';
|
| 596 |
setTimeout(() => { loginOverlay.style.display = 'none'; }, 500);
|
| 597 |
initScene();
|
| 598 |
loadAllMaps();
|
| 599 |
+
// Guardar en Firestore en segundo plano (si falla, seguimos)
|
| 600 |
+
try { await saveUserProfile(userId, username); } catch (e) { console.warn('No se pudo guardar el perfil en Firestore (continuamos localmente):', e); }
|
| 601 |
});
|
| 602 |
|
| 603 |
// auth state changes
|
|
|
|
| 697 |
userProfileCache[uid] = userProfile;
|
| 698 |
console.log("Perfil de usuario guardado:", userProfile);
|
| 699 |
} catch (error) {
|
| 700 |
+
// No bloquear el uso por errores de red/offline; mantener perfil local
|
| 701 |
+
userProfile = { username: username };
|
| 702 |
+
userProfileCache[uid] = userProfile;
|
| 703 |
+
console.warn("Error al guardar perfil (continuamos con perfil local):", error);
|
| 704 |
}
|
| 705 |
}
|
| 706 |
|
|
|
|
| 789 |
const level2Slider = document.getElementById('level2Slider');
|
| 790 |
const level3Slider = document.getElementById('level3Slider');
|
| 791 |
|
| 792 |
+
// Permitir sembrar también en modo anónimo (no se guardará en la nube)
|
| 793 |
+
visualizeButton.addEventListener('click', handleAnalysisAndVisualization);
|
| 794 |
if (isAnonymous) {
|
| 795 |
+
console.log('Modo anónimo: podrás visualizar neuronas, pero no se guardarán en Firestore.');
|
| 796 |
+
topicInput.placeholder = 'Ingresa un tema para sembrar (modo anónimo)';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 797 |
}
|
| 798 |
|
| 799 |
document.getElementById('level1Slider').addEventListener('input', (e) => {
|
|
|
|
| 1063 |
visualizeRoot(rootTopic, mapOrigin);
|
| 1064 |
visualizeHashtags(parsedData.lista_palabras, mapOrigin, 1, null);
|
| 1065 |
|
| 1066 |
+
// Guardar solo si hay sesión no anónima
|
| 1067 |
+
if (db && userId && !isAnonymous) {
|
| 1068 |
await saveMapToFirestore(rootTopic, "3", mapOrigin, parsedData);
|
| 1069 |
}
|
| 1070 |
} else {
|