diff --git a/src/lib/views/Settings.svelte b/src/lib/views/Settings.svelte index b34e4d4..6763b2d 100644 --- a/src/lib/views/Settings.svelte +++ b/src/lib/views/Settings.svelte @@ -1125,46 +1125,54 @@ {:else if section === "calendar"}
-

Calendar & Outlook .pst

+

{t("settings.calendar.title")}

- Import events and attendees from a local Outlook .pst backup — read-only, nothing - is written back to the file. Nothing leaves this device. + {t("settings.calendar.intro_1")} .pst + {t("settings.calendar.intro_2")}

-

- A long-lived mailbox can hold years of recurring/holiday entries — narrowing the range - keeps the imported calendar to what's actually relevant. Applies to both this Import - button and automatic re-import on launch. -

+

{t("settings.calendar.range_hint")}

{#if calendar.importProgress} {calendar.importProgress.processed}/{calendar.importProgress.total} events{t("settings.calendar.import_progress", { + processed: calendar.importProgress.processed, + total: calendar.importProgress.total, + })} {/if}
@@ -1174,31 +1182,24 @@ checked={settings.settings.pst_auto_sync} onchange={onToggleAutoSync} /> - Re-import this file automatically on launch + {t("settings.calendar.auto_reimport")} -

- Runs once at startup, not on a timer — re-import is safe to repeat (existing events are - matched and updated, not duplicated). -

+

{t("settings.calendar.auto_reimport_hint")}

{#if calendar.importError}

- Import failed: {calendar.importError} — the file itself is untouched; check the path and try - again. + {t("settings.calendar.import_failed", { error: calendar.importError })}

{/if} -

Clean up

-

- Events already attached to a recorded meeting are always kept, no matter which option - below is picked. -

+

{t("settings.calendar.cleanup_title")}

+

{t("settings.calendar.cleanup_hint")}

{#if cleanupResult}

- Deleted {cleanupResult.deleted}{cleanupResult.protected - ? `, kept ${cleanupResult.protected} (linked to a meeting)` - : ""}. + {t("settings.calendar.cleanup_result", { + deleted: cleanupResult.deleted, + extra: cleanupResult.protected + ? t("settings.calendar.cleanup_kept", { n: cleanupResult.protected }) + : "", + })}

{/if} {#if cleanupError} -

Clean up failed: {cleanupError}

+

{t("settings.calendar.cleanup_failed", { error: cleanupError })}

{/if} -

Imported events

+

{t("settings.calendar.imported_events")}

{#if calendar.events.length === 0} -

No events imported yet.

+

{t("settings.calendar.no_events")}

{:else}

- {filteredEvents.length} of {calendar.events.length} events + {t("settings.calendar.events_count", { + shown: filteredEvents.length, + total: calendar.events.length, + })}