fix: Abruf sucht nach Datum statt nach "ungelesen"
Auf UNSEEN zu filtern klingt sparsam, ist aber eine Falle: Wer eine Mail in seinem Mailprogramm ansieht, bevor Certain sie geholt hat, verliert sie dauerhaft – sie ist dann fuer immer gelesen. Genau das ist passiert, als die Mails vor dem ersten Abruf schon in Gmail geoeffnet waren: Ergebnis "0 neu", ohne jeden Hinweis auf die Ursache. Gesucht wird jetzt ab dem letzten Abruf mit einem Tag Ueberlappung; dass nichts doppelt ankommt, sichert die Message-ID ab. Die Meldung nennt ausserdem, wie viele Mails ueberhaupt geprueft wurden. "0 neu" allein liess offen, ob nichts da war oder nichts passte. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -514,7 +514,7 @@
|
||||
"test": "Verbindung testen",
|
||||
"testOk": "Verbindung steht – {{n}} Ordner gefunden.",
|
||||
"fetchNow": "Jetzt abrufen",
|
||||
"fetched": "{{neu}} neu, davon {{unklar}} unklar.",
|
||||
"fetched": "{{gefunden}} Mails geprüft · {{neu}} neu · {{unklar}} unklar.",
|
||||
"lastPoll": "zuletzt abgerufen",
|
||||
"neverPolled": "noch nie abgerufen",
|
||||
"lastError": "Fehler",
|
||||
@@ -531,6 +531,7 @@
|
||||
"addSender": "Absender zuordnen",
|
||||
"edit": "Postfach bearbeiten",
|
||||
"skippedTitle": "Diese Mails wurden übergangen",
|
||||
"skippedHint": "Für sie passt keine Absender-Zuordnung. Trag einen Teil der Adresse oder des Betreffs unten ein, dann werden sie beim nächsten Abruf übernommen."
|
||||
"skippedHint": "Für sie passt keine Absender-Zuordnung. Trag einen Teil der Adresse oder des Betreffs unten ein, dann werden sie beim nächsten Abruf übernommen.",
|
||||
"fetchedNone": "Keine Mails im gewählten Ordner gefunden. Stimmt der Ordner? Beim ersten Abruf werden die letzten 14 Tage durchsucht."
|
||||
}
|
||||
}
|
||||
|
||||
@@ -514,7 +514,7 @@
|
||||
"test": "Test connection",
|
||||
"testOk": "Connection works – {{n}} folders found.",
|
||||
"fetchNow": "Fetch now",
|
||||
"fetched": "{{neu}} new, {{unklar}} unclear.",
|
||||
"fetched": "{{gefunden}} emails checked · {{neu}} new · {{unklar}} unclear.",
|
||||
"lastPoll": "last fetched",
|
||||
"neverPolled": "never fetched",
|
||||
"lastError": "Error",
|
||||
@@ -531,6 +531,7 @@
|
||||
"addSender": "Map sender",
|
||||
"edit": "Edit mailbox",
|
||||
"skippedTitle": "These emails were skipped",
|
||||
"skippedHint": "No sender mapping matched them. Enter part of the address or the subject below and they will be picked up on the next fetch."
|
||||
"skippedHint": "No sender mapping matched them. Enter part of the address or the subject below and they will be picked up on the next fetch.",
|
||||
"fetchedNone": "No emails found in the selected folder. Is the folder right? The first fetch looks at the last 14 days."
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,7 +87,10 @@ export default function Postfaecher() {
|
||||
setBusy(true);
|
||||
try {
|
||||
const r = await api.fetchMailSource(quelle.id);
|
||||
toast(t("mailbox.fetched", { neu: r.neu, unklar: r.unklar }));
|
||||
// „0 neu" allein sagt nicht, ob nichts da war oder nichts passte.
|
||||
toast(r.gefunden === 0
|
||||
? t("mailbox.fetchedNone")
|
||||
: t("mailbox.fetched", { gefunden: r.gefunden, neu: r.neu, unklar: r.unklar }));
|
||||
setUebergangen(r.ohne_zuordnung || []);
|
||||
laden();
|
||||
} catch (e) {
|
||||
|
||||
Reference in New Issue
Block a user