Jeder Scan hätte jede Tonspur noch einmal gelesen

Gemerkt wurde nur, was gefunden wurde. Eine Staffel ohne Abspann — es
gibt genug davon — sah damit bei jedem Scan aus wie eine, in der noch
niemand nachgesehen hat, und wurde wieder abgetastet: jede Tonspur jeder
Folge noch einmal von der Platte, für immer, ohne Ertrag. Bei
sechstausend Folgen ist das kein Schönheitsfehler.

Jetzt steht auch „gesucht und nichts gefunden" in der Datenbank, je
Staffel und Art. Ausgelöst wird ein zweiter Lauf von der Folgenzahl:
kommt eine Folge dazu, gibt es etwas Neues zu vergleichen, sonst nicht.
Ein Zeitstempel allein täte das nicht — eine Staffel, die sich nie
ändert, hat nie einen Grund für einen zweiten Lauf.

Dazu der Knopf, der ausdrücklich doch noch einmal rechnet: die Uhr auf
der Serienseite sucht ab jetzt immer neu. Von selbst läuft die Suche
nach jedem Scan und überspringt dort das Abgesuchte; wer hier drückt,
will genau das Gegenteil.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-10-13 05:51:23 +02:00
co-authored by Claude Opus 5
parent 9bcdd239d7
commit 8112c15d4d
9 changed files with 1567 additions and 11 deletions
+11 -3
View File
@@ -485,11 +485,19 @@ export function detailseite(art: Art, id: string, zurueck: () => void): HTMLElem
// Auf Zuruf und nicht von selbst: der Lauf liest von jeder Folge ein
// Stück Ton, und das dauert Minuten. Ihn bei jedem Scan mitlaufen zu
// lassen hiesse, jeden Scan um ein Vielfaches zu verlängern.
//
// **Der Knopf sucht immer neu.** Von selbst läuft die Suche nach jedem
// Scan, und dort wird übersprungen, was schon abgesucht ist — sonst
// läse der Server bei jedem Scan jede Tonspur neu. Wer hier drückt,
// will aber genau das: noch einmal, und zwar jetzt. Ein Knopf, der je
// nach gespeichertem Zustand mal etwas tut und mal nicht, wäre der
// schlechtere Tausch.
if (melden && istAdmin() && art === 'serien') {
reihe.appendChild(rundKnopf('uhr', false, 'Vorspann und Abspann suchen',
reihe.appendChild(rundKnopf('uhr', false, 'Vorspann und Abspann neu suchen',
async () => {
await markenSuchen(eintrag.id);
hinweisZeigen('Vorspann und Abspann werden gesucht. Das dauert ein paar Minuten.');
await markenSuchen(eintrag.id, true);
hinweisZeigen('Vorspann und Abspann werden gesucht. '
+ 'Der Server liest dafür jede Folge einmal durch — das dauert ein paar Minuten.');
}));
}