screen1: Wohin ein geholtes Video gelegt wird, darf man waehlen

Filipe: "ich will das wenn man da video holt das man auch aussuchen
kann in welcher account es unten angezeigt werden soll."

Bis heute entschied allein der Link: kanalVonHandle liest den Account
aus der TikTok-Adresse, und dort landete das Video. Das ist gut
geraten, aber es IST geraten -- ein Ausschnitt vom Hauptkanal gehoert
oft unter "Clips", und seit dem 21.09. hat jeder Account seine eigene
Spalte, in der das sichtbar wird.

DIE SCHRANKE BLEIBT UNANGETASTET. Der ABSENDER muss weiterhin einer
der drei eigenen Kanaele sein; gewaehlt wird nur die SPALTE. Sonst
waere aus einer Ablagehilfe ein Loch fuer fremde Inhalte geworden --
die Pruefung haelt genau das fest ("ein fremder Absender kommt auch
MIT Wahl nicht herein", 403).

Ohne Angabe bleibt alles wie bisher. Das ist der haeufigste Fall und
soll keinen zusaetzlichen Handgriff kosten; die Vorgabe heisst "Aus
dem Link erkennen".

ZWEI FUNDE BEIM PRUEFEN
  - Die Antwort meldete `auskunft.kanal` -- also das ERKANNTE, nicht
    das, wohin der Eintrag wirklich ging. Seit beides auseinanderfallen
    kann, haette die Seite "DogFather" gemeldet, waehrend das Video
    unter "Clips" steht.
  - `coverAbrufe === 3` in pruef-video war eine Rechnung von dem Tag,
    an dem die Pruefung drei Videos anlegte. Der neue Abschnitt legte
    vier weitere an, und die Zeile wurde rot, ohne dass etwas kaputt
    war. Gemeint war nie eine Summe, sondern eine DIFFERENZ: holt
    derselbe Link ein zweites Mal? Das bleibt richtig, egal wie viele
    Videos davor liefen.

Die Wahl steht UNTER der Zeile, nicht darin: Am 21.09. hat genau so
ein drittes Element in derselben Reihe das Chat-Eingabefeld auf einen
Buchstaben zusammengedrueckt. Am Bildschirm gemessen (1044 px).

Gemessen: pruef-video 71/0 (vier neue Aussagen samt Gegenprobe, dass
ohne Wahl weiterhin der Link entscheidet), pruef-highlights 31/0
(fuenf neue am echten Bildschirm), pruef-meldungen 8/0, pruef-teilen
27/0.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-22 13:25:28 +02:00
co-authored by Claude Opus 5
parent 1a7d074e94
commit fe1dad48e5
45 changed files with 738 additions and 548 deletions
+33 -3
View File
@@ -237,6 +237,30 @@ videoRouter.post("/workspace/api/bereich/:bereich/video", async (req, res) => {
});
}
/* WOHIN ES GELEGT WIRD, DARF MAN WAEHLEN (22.09.2026).
===================================================================
Filipe: „ich will das wenn man da video holt das man auch
aussuchen kann in welcher account es unten angezeigt werden soll."
Bis heute entschied das allein der Link: `kanalVonHandle` liest
den Account aus der TikTok-Adresse, und dort landete das Video.
Das ist richtig geraten, aber es IST geraten -- ein Ausschnitt
vom Hauptkanal gehoert oft unter „Clips", und ein Video, das
jemand anders hochgeladen hat, steht dann in der falschen Spalte.
Die Schranke darueber bleibt unangetastet: Der ABSENDER muss
weiterhin einer der drei eigenen Kanaele sein. Gewaehlt wird nur
die SPALTE, nicht, ob fremde Inhalte hereinduerfen -- sonst waere
aus einer Ablagehilfe ein Loch geworden.
Ohne Angabe bleibt alles wie bisher. Das ist der haeufigste Fall
und soll keinen zusaetzlichen Handgriff kosten. */
const gewaehlt = String(req.body?.kanal ?? "").trim();
if (gewaehlt && !KANAELE.some((k) => k.wert === gewaehlt)) {
return res.status(400).json({ fehler: "kanal_unbekannt" });
}
const ablage = gewaehlt || auskunft.kanal;
abgelegt = await coverAblegen(auskunft.cover);
const jetzt = new Date().toISOString();
@@ -250,7 +274,7 @@ videoRouter.post("/workspace/api/bereich/:bereich/video", async (req, res) => {
db().prepare(`UPDATE eintraege SET quelle_url = ?, quelle_kanal = ?,
quelle_geholt_am = ?, geaendert = ?
WHERE id = ?`)
.run(url, auskunft.kanal, jetzt, jetzt, anhaengenAn);
.run(url, ablage, jetzt, jetzt, anhaengenAn);
eintragId = anhaengenAn;
} else {
const { lastInsertRowid } = db().prepare(`
@@ -259,7 +283,7 @@ videoRouter.post("/workspace/api/bereich/:bereich/video", async (req, res) => {
quelle_url, quelle_kanal, quelle_geholt_am, aus_eintrag_id)
VALUES (?,?,?,?, 'offen', ?,?,?,?,?,?)`)
.run(bereich, arten[bereich] || "clip", auskunft.titel, jetzt.slice(0, 10),
jetzt, req.person.id, url, auskunft.kanal, jetzt, ausQuelle ? aus : null);
jetzt, req.person.id, url, ablage, jetzt, ausQuelle ? aus : null);
eintragId = Number(lastInsertRowid);
}
@@ -278,7 +302,13 @@ videoRouter.post("/workspace/api/bereich/:bereich/video", async (req, res) => {
detail: `${auskunft.kanal} ${url}${ausQuelle ? ` (aus #${aus})` : ""}`.slice(0, 120),
});
res.status(201).json({
id: eintragId, schon: false, kanal: auskunft.kanal,
/* GEMELDET WIRD DIE ABLAGE, NICHT DAS ERKANNTE (22.09.2026).
Hier stand `auskunft.kanal` -- also das, was aus dem Link
gelesen wurde. Seit die Spalte waehlbar ist, sind das zwei
verschiedene Dinge, und die Antwort muss sagen, wo der Eintrag
wirklich gelandet ist. Sonst meldet die Seite "DogFather",
waehrend das Video unter "Clips" steht. */
id: eintragId, schon: false, kanal: ablage,
titel: auskunft.titel, cover: !!abgelegt || undefined,
...(ausQuelle ? { aus: aus, angehaengt: !!anhaengenAn } : {}),
});