Mi cuenta

@if (auth.me()) {

{{ auth.me()!.email }} · {{ auth.me()!.role }}

}
@if (successFlash()) {

{{ successFlash() }}

} @if (error()) {

{{ error() }}

}

Métodos de inicio de sesión

@if (!hasLocal()) { } @else { }
@if (loading()) {

Cargando…

} @else if (credentials().length === 0) {

No hay credenciales registradas.

} @else { }
@if (formOpen()) {

@if (hasLocal()) { Cambiar contraseña } @else { Establecer contraseña local }

@if (hasLocal()) { } @if (formError()) {

{{ formError() }}

}

Mínimo 8 caracteres con al menos una letra y un número.

}

Notificaciones por email

Activa cada tipo de aviso de forma independiente. Si desactivas el primero, no recibirás ningún email.

@if (preferencesError()) {

{{ preferencesError() }}

} @if (preferences(); as prefs) { } @else {

Cargando preferencias…

}

Vista previa del resumen diario

Envía el digest de hoy a tu email — sólo a ti, nadie más recibe nada. @if (digestFlash()) { · {{ digestFlash() }} }

Widgets del panel

Activa o desactiva cada widget del panel y reordénalos con las flechas. Los cambios se aplican al instante.

@if (widgetsError()) {

{{ widgetsError() }}

} @if (widgets(); as list) { } @else {

Cargando widgets…

}
@if (isAdmin()) {

Claves de API para integraciones

Genera una clave por cada cliente externo (scripts, atajos del iPhone…). Solo dan acceso a /api/integrations/*, no al resto de la app. La clave en claro se muestra una única vez al crearla — cópiala y pégala en el cliente antes de cerrar el panel.

@if (apiKeysError()) {

{{ apiKeysError() }}

} @if (newKeyPlaintext(); as token) {

Esta es tu nueva clave. Cópiala ahora — no podrás volver a verla.

{{ token }}
@if (newKeyCopyFlash()) { {{ newKeyCopyFlash() }} }
}
@if (apiKeys().length === 0) {

Todavía no tienes claves. Crea una para empezar a integrar.

} @else { }

Ubicación de la familia

Latitud y longitud (decimales) y etiqueta visible. Activan el widget de meteo en el panel. Déjalas vacías para desactivarlo.

@if (locationFlash()) {

{{ locationFlash() }}

} @if (locationError()) {

{{ locationError() }}

}
}

Idioma de la interfaz

Cambia el idioma de FamilyNido. Al guardar, recargamos la página para servir el bundle correcto.

@if (languageError()) {

{{ languageError() }}

}

Sesión