salomonsky commited on
Commit
c58be44
·
verified ·
1 Parent(s): 78c1736

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +23 -16
index.html CHANGED
@@ -456,32 +456,39 @@
456
  ? browserLocalPersistence
457
  : browserSessionPersistence;
458
  await setPersistence(auth, persistence);
 
 
 
 
 
 
 
 
459
 
460
  await signInWithPopup(auth, provider);
461
  } catch (error) {
462
- console.warn("Popup de Google falló, intentando redirect si aplica:", error?.code, error?.message);
463
- const provider = new GoogleAuthProvider();
464
- provider.setCustomParameters({ prompt: 'select_account' });
465
-
466
- // Códigos típicos: auth/popup-blocked, auth/popup-closed-by-user, auth/cancelled-popup-request
467
- const popupIssues = new Set(['auth/popup-blocked', 'auth/popup-closed-by-user', 'auth/cancelled-popup-request']);
468
- try {
469
- if (popupIssues.has(error?.code)) {
470
  if (loginMessage) {
471
  loginMessage.innerText = 'Redirigiendo a Google...';
472
  loginMessage.classList.remove('text-red-500');
473
  }
 
 
474
  await signInWithRedirect(auth, provider);
475
  return;
 
 
 
 
 
 
 
 
 
476
  }
477
- } catch (redirectErr) {
478
- console.error("Error en signInWithRedirect:", redirectErr);
479
- }
480
-
481
- console.error("Error con Google Sign-In:", error);
482
- if (loginMessage) {
483
- loginMessage.innerText = `Error con Google: ${error.message}`;
484
- loginMessage.classList.add('text-red-500');
485
  }
486
  } finally {
487
  // Rehabilitar si seguimos en la misma página (si hubo redirect, no se ejecutará esto)
 
456
  ? browserLocalPersistence
457
  : browserSessionPersistence;
458
  await setPersistence(auth, persistence);
459
+ // En Hugging Face (Static) forzamos redirect para evitar bloqueos/doble popup
460
+ if (isHFStatic) {
461
+ if (loginMessage) {
462
+ loginMessage.innerText = 'Redirigiendo a Google...';
463
+ }
464
+ await signInWithRedirect(auth, provider);
465
+ return;
466
+ }
467
 
468
  await signInWithPopup(auth, provider);
469
  } catch (error) {
470
+ console.warn("Google Sign-In con popup falló:", error?.code, error?.message);
471
+ // Solo si el problema es popup bloqueado, hacemos redirect (evita doble popup)
472
+ if (error?.code === 'auth/popup-blocked') {
473
+ try {
 
 
 
 
474
  if (loginMessage) {
475
  loginMessage.innerText = 'Redirigiendo a Google...';
476
  loginMessage.classList.remove('text-red-500');
477
  }
478
+ const provider = new GoogleAuthProvider();
479
+ provider.setCustomParameters({ prompt: 'select_account' });
480
  await signInWithRedirect(auth, provider);
481
  return;
482
+ } catch (redirectErr) {
483
+ console.error("Error en signInWithRedirect:", redirectErr);
484
+ }
485
+ } else if (error?.code !== 'auth/popup-closed-by-user') {
486
+ // Si el usuario cerró el popup, no mostrar error intrusivo
487
+ console.error("Error con Google Sign-In:", error);
488
+ if (loginMessage) {
489
+ loginMessage.innerText = `Error con Google: ${error.message}`;
490
+ loginMessage.classList.add('text-red-500');
491
  }
 
 
 
 
 
 
 
 
492
  }
493
  } finally {
494
  // Rehabilitar si seguimos en la misma página (si hubo redirect, no se ejecutará esto)