+
-
-
-
-
-
-
-
-
-
-
-
-
-
- {/if}
-
- {#if showRemovePasswordForm}
-
- {/if}
- {:else}
-
{$_('security.noPassword')}
-
- {#if !showSetPasswordForm}
-
- {:else}
-
- {/if}
- {/if}
- {/if}
-
-
- {#if ssoProviders.length > 0}
-
- {$_('oauth.sso.linkedAccounts')}
- {#if linkedAccountsLoading}
- {$_('common.loading')}
- {:else}
- {#if linkedAccounts.length > 0}
-
- {:else}
- {$_('oauth.sso.noLinkedAccounts')}
- {/if}
-
-
-
{$_('oauth.sso.linkNewAccount')}
-
- {/if}
-
- {/if}
-
- {#if hasMfa}
-
- {$_('security.appCompatibility')}
- {$_('security.legacyLoginDescription')}
- {#if !legacyLoginLoading}
-
-
- {$_('security.legacyLogin')}
-
- {#if allowLegacyLogin}
- {$_('security.legacyLoginOn')}
- {:else}
- {$_('security.legacyLoginOff')}
- {/if}
-
-
-
-
- {#if totpEnabled && allowLegacyLogin}
-
- {$_('security.legacyLoginWarning')}
-
- {/if}
-
-
-
{$_('security.legacyAppsTitle')}
-
{$_('security.legacyAppsDescription')}
-
- {/if}
-
+ {/each}
+
{/if}
-
-
- {$_('security.trustedDevices')}
- {$_('security.trustedDevicesDescription')}
-
- {#if trustedDevicesLoading}
- {$_('common.loading')}
- {:else if trustedDevices.length === 0}
- {$_('trustedDevices.noDevices')}
- {$_('trustedDevices.noDevicesHint')}
- {:else}
-
- {#each trustedDevices as device}
-
-
-
-
- {#if device.userAgent}
- {parseUserAgent(device.userAgent)}
- {/if}
- {#if device.trustedAt}
- {$_('trustedDevices.trustedSince')} {formatDate(device.trustedAt)}
- {/if}
- {$_('trustedDevices.lastSeen')} {formatDate(device.lastSeenAt)}
- {#if device.trustedUntil}
- {@const daysRemaining = getDaysRemaining(device.trustedUntil)}
-
- {#if daysRemaining <= 0}
- {$_('trustedDevices.expired')}
- {:else if daysRemaining === 1}
- {$_('trustedDevices.tomorrow')}
- {:else}
- {$_('trustedDevices.inDays', { values: { days: daysRemaining } })}
- {/if}
-
- {/if}
-
-
-
handleRevokeDevice(device.id)}>
- {$_('trustedDevices.revoke')}
-
-
- {/each}
-
- {/if}
-
- {/if}
+