diff --git a/messages/de.json b/messages/de.json index 9bd37c3..19494a2 100644 --- a/messages/de.json +++ b/messages/de.json @@ -488,7 +488,7 @@ "typeStoryComment": "hat deine Story kommentiert.", "typeStoryReaction": "hat deiner Story eine Pfote gegeben.", "typeUnknown": "hat eine neue Mitteilung für dich.", - "typePetDeceased": "ist leider verstorben. In Erinnerung 🕯️" + "typePetDeceased": "ist über die Regenbogenbrücke gegangen. In liebevoller Erinnerung 🤍" }, "PhotoPostForm": { "captionPlaceholder": "Bildunterschrift schreiben…", @@ -863,21 +863,21 @@ }, "InMemory": { "label": "In Erinnerung", - "tooltip": "In Erinnerung – dieses Tier ist über die Regenbogenbrücke gegangen", - "banner": "In Erinnerung an {name} · {date}", + "tooltip": "In liebevoller Erinnerung", + "banner": "In liebevoller Erinnerung an {name} · {date}", "settingsHeading": "Gedenkmodus", - "settingsHint": "Wenn dein Tier verstorben ist, kannst du sein Profil als Erinnerung erhalten. Es bekommt das Abzeichen „In Erinnerung“, Beiträge bleiben sichtbar und du kannst weiter Erinnerungen teilen. Geburtstags-Mitteilungen, Impf-Erinnerungen und Vorschläge enden.", - "activeHint": "{name} ist im Gedenkmodus. Du kannst das Datum korrigieren oder den Modus beenden.", - "dateLabel": "Verstorben am", - "activate": "Gedenkmodus aktivieren", + "settingsHint": "Wenn dein Tier über die Regenbogenbrücke gegangen ist, kannst du sein Profil als liebevolle Erinnerung bewahren. Alle Beiträge bleiben erhalten, und du kannst weiterhin Erinnerungen teilen. Geburtstags- und Impf-Erinnerungen pausieren dann, damit dich nichts unvermittelt trifft.", + "activeHint": "Das Profil von {name} wird als Erinnerung bewahrt. Du kannst das Datum jederzeit anpassen oder den Gedenkmodus wieder beenden.", + "dateLabel": "Tag des Abschieds", + "activate": "Profil als Erinnerung bewahren", "saveDate": "Datum speichern", "remove": "Gedenkmodus beenden", - "confirmTitle": "{name} in Erinnerung halten?", - "confirmDescription": "Das Profil bekommt das Abzeichen „In Erinnerung“. Wer deinem Tier folgt, erhält einmalig eine stille Mitteilung (ohne Push). Du kannst das jederzeit zurücknehmen.", - "confirm": "Ja, aktivieren", - "cancel": "Abbrechen", - "saved": "Gedenkmodus gespeichert", - "removed": "Gedenkmodus beendet", - "saveFailed": "Konnte nicht gespeichert werden" + "confirmTitle": "Das Profil von {name} als Erinnerung bewahren?", + "confirmDescription": "Es tut uns sehr leid. Das Profil von {name} bekommt eine Erinnerungsschleife, und alles, was ihr geteilt habt, bleibt erhalten. Wer {name} folgt, erfährt es einmal ganz in Ruhe über die Mitteilungen – ohne Push. Du kannst das jederzeit rückgängig machen.", + "confirm": "Ja, bewahren", + "cancel": "Noch nicht", + "saved": "Das Profil wird nun als Erinnerung bewahrt.", + "removed": "Gedenkmodus beendet.", + "saveFailed": "Das hat leider nicht geklappt. Bitte versuch es noch einmal." } } diff --git a/messages/en.json b/messages/en.json index d3f0118..3e6ebf4 100644 --- a/messages/en.json +++ b/messages/en.json @@ -488,7 +488,7 @@ "typeStoryComment": "commented on your story.", "typeStoryReaction": "gave your story a paw.", "typeUnknown": "has a new notification for you.", - "typePetDeceased": "has sadly passed away. In memory 🕯️" + "typePetDeceased": "has crossed the rainbow bridge. In loving memory 🤍" }, "PhotoPostForm": { "captionPlaceholder": "Write a caption…", @@ -863,21 +863,21 @@ }, "InMemory": { "label": "In memory", - "tooltip": "In memory – this pet has crossed the rainbow bridge", - "banner": "In memory of {name} · {date}", + "tooltip": "In loving memory", + "banner": "In loving memory of {name} · {date}", "settingsHeading": "Memorial mode", - "settingsHint": "If your pet has passed away, you can keep their profile as a memorial. It gets the “In memory” badge, posts stay visible and you can keep sharing memories. Birthday notifications, vaccine reminders and suggestions stop.", - "activeHint": "{name} is in memorial mode. You can correct the date or end the mode.", - "dateLabel": "Passed away on", - "activate": "Turn on memorial mode", + "settingsHint": "If your pet has crossed the rainbow bridge, you can keep their profile as a loving memorial. All posts stay, and you can keep sharing memories. Birthday and vaccine reminders pause so nothing catches you off guard.", + "activeHint": "{name}'s profile is kept as a memorial. You can adjust the date or end memorial mode at any time.", + "dateLabel": "Day of farewell", + "activate": "Keep profile as a memorial", "saveDate": "Save date", "remove": "End memorial mode", - "confirmTitle": "Keep {name} in memory?", - "confirmDescription": "The profile gets the “In memory” badge. Everyone following your pet receives a single quiet notification (no push). You can undo this at any time.", - "confirm": "Yes, turn on", - "cancel": "Cancel", - "saved": "Memorial mode saved", - "removed": "Memorial mode ended", - "saveFailed": "Could not be saved" + "confirmTitle": "Keep {name}'s profile as a memorial?", + "confirmDescription": "We're so sorry. {name}'s profile gets a memorial ribbon, and everything you've shared stays. Those who follow {name} will be told once, quietly in their notifications – no push. You can undo this at any time.", + "confirm": "Yes, keep it", + "cancel": "Not yet", + "saved": "The profile is now kept as a memorial.", + "removed": "Memorial mode ended.", + "saveFailed": "That didn't work, sorry. Please try again." } } diff --git a/mobile/src/components/pet/MemorialSettings.tsx b/mobile/src/components/pet/MemorialSettings.tsx index 4ffae16..49b910a 100644 --- a/mobile/src/components/pet/MemorialSettings.tsx +++ b/mobile/src/components/pet/MemorialSettings.tsx @@ -62,7 +62,7 @@ export function MemorialSettings({ petId, petName, deceasedAt }: Props) { function activate() { const iso = validIso(); if (!iso) return; - Alert.alert(t("inMemory.confirmTitle", { name: petName }), t("inMemory.confirmDescription"), [ + Alert.alert(t("inMemory.confirmTitle", { name: petName }), t("inMemory.confirmDescription", { name: petName }), [ { text: t("inMemory.cancel"), style: "cancel" }, { text: t("inMemory.confirm"), onPress: () => mutation.mutate({ petId, deceasedAt: iso }) }, ]); diff --git a/mobile/src/i18n/locales/de.json b/mobile/src/i18n/locales/de.json index 93d8877..60123ba 100644 --- a/mobile/src/i18n/locales/de.json +++ b/mobile/src/i18n/locales/de.json @@ -215,7 +215,7 @@ "storyComment": "hat deine Story kommentiert.", "storyReaction": "hat deiner Story eine Pfote gegeben.", "unknown": "Neue Mitteilung.", - "petDeceased": "ist leider verstorben. In Erinnerung 🕯️" + "petDeceased": "ist über die Regenbogenbrücke gegangen. In liebevoller Erinnerung 🤍" }, "pets": { "empty": "Noch keine Tiere angelegt.", @@ -489,22 +489,22 @@ }, "inMemory": { "label": "In Erinnerung", - "tooltip": "In Erinnerung – dieses Tier ist über die Regenbogenbrücke gegangen", - "banner": "In Erinnerung an {{name}} · {{date}}", + "tooltip": "In liebevoller Erinnerung", + "banner": "In liebevoller Erinnerung an {{name}} · {{date}}", "settingsHeading": "Gedenkmodus", - "settingsHint": "Wenn dein Tier verstorben ist, kannst du sein Profil als Erinnerung erhalten. Es bekommt das Abzeichen „In Erinnerung“, Beiträge bleiben sichtbar und du kannst weiter Erinnerungen teilen. Geburtstags-Mitteilungen, Impf-Erinnerungen und Vorschläge enden.", - "activeHint": "{{name}} ist im Gedenkmodus. Du kannst das Datum korrigieren oder den Modus beenden.", - "dateLabel": "Verstorben am", - "activate": "Gedenkmodus aktivieren", + "settingsHint": "Wenn dein Tier über die Regenbogenbrücke gegangen ist, kannst du sein Profil als liebevolle Erinnerung bewahren. Alle Beiträge bleiben erhalten, und du kannst weiterhin Erinnerungen teilen. Geburtstags- und Impf-Erinnerungen pausieren dann, damit dich nichts unvermittelt trifft.", + "activeHint": "Das Profil von {{name}} wird als Erinnerung bewahrt. Du kannst das Datum jederzeit anpassen oder den Gedenkmodus wieder beenden.", + "dateLabel": "Tag des Abschieds", + "activate": "Profil als Erinnerung bewahren", "saveDate": "Datum speichern", "remove": "Gedenkmodus beenden", - "confirmTitle": "{{name}} in Erinnerung halten?", - "confirmDescription": "Das Profil bekommt das Abzeichen „In Erinnerung“. Wer deinem Tier folgt, erhält einmalig eine stille Mitteilung (ohne Push). Du kannst das jederzeit zurücknehmen.", - "confirm": "Ja, aktivieren", - "cancel": "Abbrechen", - "saved": "Gedenkmodus gespeichert", - "removed": "Gedenkmodus beendet", - "saveFailed": "Konnte nicht gespeichert werden", - "invalidDate": "Bitte ein gültiges Datum eingeben, das nicht in der Zukunft liegt." + "confirmTitle": "Das Profil von {{name}} als Erinnerung bewahren?", + "confirmDescription": "Es tut uns sehr leid. Das Profil von {{name}} bekommt eine Erinnerungsschleife, und alles, was ihr geteilt habt, bleibt erhalten. Wer {{name}} folgt, erfährt es einmal ganz in Ruhe über die Mitteilungen – ohne Push. Du kannst das jederzeit rückgängig machen.", + "confirm": "Ja, bewahren", + "cancel": "Noch nicht", + "saved": "Das Profil wird nun als Erinnerung bewahrt.", + "removed": "Gedenkmodus beendet.", + "saveFailed": "Das hat leider nicht geklappt. Bitte versuch es noch einmal.", + "invalidDate": "Bitte gib ein gültiges Datum ein, das nicht in der Zukunft liegt." } } diff --git a/mobile/src/i18n/locales/en.json b/mobile/src/i18n/locales/en.json index 13bc4fc..7ce778b 100644 --- a/mobile/src/i18n/locales/en.json +++ b/mobile/src/i18n/locales/en.json @@ -215,7 +215,7 @@ "storyComment": "commented on your story.", "storyReaction": "gave your story a paw.", "unknown": "New notification.", - "petDeceased": "has sadly passed away. In memory 🕯️" + "petDeceased": "has crossed the rainbow bridge. In loving memory 🤍" }, "pets": { "empty": "No pets added yet.", @@ -489,22 +489,22 @@ }, "inMemory": { "label": "In memory", - "tooltip": "In memory – this pet has crossed the rainbow bridge", - "banner": "In memory of {{name}} · {{date}}", + "tooltip": "In loving memory", + "banner": "In loving memory of {{name}} · {{date}}", "settingsHeading": "Memorial mode", - "settingsHint": "If your pet has passed away, you can keep their profile as a memorial. It gets the “In memory” badge, posts stay visible and you can keep sharing memories. Birthday notifications, vaccine reminders and suggestions stop.", - "activeHint": "{{name}} is in memorial mode. You can correct the date or end the mode.", - "dateLabel": "Passed away on", - "activate": "Turn on memorial mode", + "settingsHint": "If your pet has crossed the rainbow bridge, you can keep their profile as a loving memorial. All posts stay, and you can keep sharing memories. Birthday and vaccine reminders pause so nothing catches you off guard.", + "activeHint": "{{name}}'s profile is kept as a memorial. You can adjust the date or end memorial mode at any time.", + "dateLabel": "Day of farewell", + "activate": "Keep profile as a memorial", "saveDate": "Save date", "remove": "End memorial mode", - "confirmTitle": "Keep {{name}} in memory?", - "confirmDescription": "The profile gets the “In memory” badge. Everyone following your pet receives a single quiet notification (no push). You can undo this at any time.", - "confirm": "Yes, turn on", - "cancel": "Cancel", - "saved": "Memorial mode saved", - "removed": "Memorial mode ended", - "saveFailed": "Could not be saved", + "confirmTitle": "Keep {{name}}'s profile as a memorial?", + "confirmDescription": "We're so sorry. {{name}}'s profile gets a memorial ribbon, and everything you've shared stays. Those who follow {{name}} will be told once, quietly in their notifications – no push. You can undo this at any time.", + "confirm": "Yes, keep it", + "cancel": "Not yet", + "saved": "The profile is now kept as a memorial.", + "removed": "Memorial mode ended.", + "saveFailed": "That didn't work, sorry. Please try again.", "invalidDate": "Please enter a valid date that is not in the future." } } diff --git a/src/components/pet/MemorialSettings.tsx b/src/components/pet/MemorialSettings.tsx index 68163f3..d973d50 100644 --- a/src/components/pet/MemorialSettings.tsx +++ b/src/components/pet/MemorialSettings.tsx @@ -110,7 +110,7 @@ export function MemorialSettings({ petId, petName, deceasedAt }: Props) { {t("confirmTitle", { name: petName })} - {t("confirmDescription")} + {t("confirmDescription", { name: petName })} setConfirmOpen(false)} />}> diff --git a/src/lib/notify.ts b/src/lib/notify.ts index bc9a718..ba190c8 100644 --- a/src/lib/notify.ts +++ b/src/lib/notify.ts @@ -53,7 +53,7 @@ const PUSH_COPY: Record< VACCINE_DUE: { title: "Impfung bald fällig", genericBody: "Eine Impfung wird bald fällig.", actorBody: () => "Eine Impfung wird bald fällig." }, STORY_MENTION: { title: "In einer Story markiert", genericBody: "Du wurdest in einer Story markiert.", actorBody: (a) => `${a} hat dich in einer Story markiert.` }, STORY_COMMENT: { title: "Neuer Story-Kommentar", genericBody: "Jemand hat deine Story kommentiert.", actorBody: (a) => `${a} hat deine Story kommentiert.` }, - PET_DECEASED: { title: "In Erinnerung", genericBody: "Ein Tier, dem du folgst, ist verstorben.", actorBody: (a) => `${a} ist leider verstorben.` }, + PET_DECEASED: { title: "In liebevoller Erinnerung", genericBody: "Ein Tier, dem du folgst, ist über die Regenbogenbrücke gegangen.", actorBody: (a) => `${a} ist über die Regenbogenbrücke gegangen.` }, STORY_REACTION: { title: "Neue Pfote", genericBody: "Jemand hat deiner Story eine Pfote gegeben.", actorBody: (a) => `${a} hat deiner Story eine Pfote gegeben.` }, };