pruef-handy-teamdogi meldete auf beiden Geraeten und fuer Modi und
Community dasselbe:
reaktion.html: Bedienelement ohne Namen — input#chat-feld
Sein einziger Name war der PLATZHALTER. Der ist keiner: Er
verschwindet in dem Moment, in dem jemand anfaengt zu tippen, und
danach hat das Feld fuer ein Vorleseprogramm gar keinen Namen mehr.
Der Knopf daneben macht es seit jeher richtig
(`aria-label="Senden"`).
UND DER NAME WANDERT MIT. Das Feld sagt im Platzhalter, warum
gerade nicht geschrieben werden kann — „Der Chat ist gerade zu",
„Du bist gerade stumm geschaltet", „Gerade schreibt nur das Team".
Ein fester `aria-label` haette genau diese Auskunft fuer das Ohr
verschluckt. Er kommt deshalb aus derselben Zeile wie der
Platzhalter: eine Angabe, zwei Ausgaben. Zwei getrennte Texte
waeren die naechste Stelle, an der einer gepflegt wird und der
andere nicht.
GEPRUEFT
pruef-handy-teamdogi 8 Befunde -> 14 Pruefungen, 0 Fehler
pruef-reaktion 421 Pruefungen, 0 Fehler
pruef-handy 186 Pruefungen, 0 Fehler
Damit ist die Liste der alten offenen Punkte abgearbeitet:
- pruef-fingermass (Grundwert 1) unveraendert 1, dazu eine
zweite Zahl fuer die
Faelle, die sie bisher gar
nicht sehen konnte
- Regie/Transport auf 320x568 die Ueberlappung ist weg
- report.html 27x18 px gibt es nicht mehr; beide
Messungen melden die Seite
sauber (Notiz war veraltet)
- Ueberstand pruef-handy-teamdogi 0 Befunde
Co-Authored-By: Claude Opus 5 <[email protected]>
457 lines
21 KiB
HTML
457 lines
21 KiB
HTML
<!doctype html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
|
||
<title>Zahlen · Spicy & Dogi</title>
|
||
<meta name="robots" content="noindex, nofollow" />
|
||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||
<!-- Die Farbe der Fensterleiste, wenn der Workspace als App laeuft.
|
||
Stand auf #0674b9 (kraeftiges Blau) und stach damit als einziger
|
||
heller Balken ueber einer durchweg dunklen Seite. Jetzt derselbe
|
||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||
eine Flaeche sind statt zweier. -->
|
||
<meta name="theme-color" content="#06090f" />
|
||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610011216" />
|
||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610011216" />
|
||
<link rel="stylesheet" href="assets/css/gate.css?v=202610011216" />
|
||
<link rel="stylesheet" href="assets/css/start.css?v=202610011216" />
|
||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610011216" />
|
||
<link rel="stylesheet" href="assets/css/leistung.css?v=202610011216" />
|
||
<link rel="stylesheet" href="assets/css/module.css?v=202610011216" />
|
||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||
ohne Umfaerben im Browser, ohne Flackern. -->
|
||
<link rel="stylesheet" href="assets/css/haus.css?v=202610011216" />
|
||
</head>
|
||
|
||
<body class="start">
|
||
|
||
<div class="schleier" aria-hidden="true"></div>
|
||
|
||
<header class="kopfleiste">
|
||
<button type="button" class="zurueck-knopf" id="zurueck" hidden>
|
||
<svg class="zurueck-knopf__pfeil" viewBox="0 0 24 24" aria-hidden="true">
|
||
<path d="M14.5 5.5 8 12l6.5 6.5" />
|
||
</svg>
|
||
<span class="zurueck-knopf__text">Zurück</span>
|
||
</button>
|
||
<p class="marke"><span class="marke__text"><a class="zurueck" href="start.html">Creator Workspace</a> · Zahlen</span></p>
|
||
<div class="kopfleiste__rechts">
|
||
<span class="wer" id="wer">…</span>
|
||
<button type="button" class="abmelden" id="abmelden">Abmelden</button>
|
||
</div>
|
||
</header>
|
||
|
||
<main class="inhalt inhalt--breit">
|
||
|
||
<section class="kopf-zeile">
|
||
<div>
|
||
<p class="marke">Zahlen</p>
|
||
<h1 class="titel">Was wirklich passiert ist.</h1>
|
||
</div>
|
||
<div class="leistung__wahl" id="creator-wahl" hidden>
|
||
<label class="feld-schild" for="creator">Creator</label>
|
||
<select id="creator"></select>
|
||
</div>
|
||
</section>
|
||
|
||
<p class="fehler" id="fehler" role="alert" aria-live="polite"></p>
|
||
|
||
<!-- DIE WOCHE IN ZAHLEN.
|
||
|
||
Jede Karte trägt die drei Dinge, die eine Kennzahl braucht
|
||
(Recherche 31.08./06.09.2026): den WERT, den VERGLEICH zur
|
||
Vorwoche und den VERLAUF als kleine Linie. Eine Zahl ohne diese
|
||
drei ist eine Eitelkeitszahl -- sie sieht nach Auskunft aus, und
|
||
man kann nichts damit entscheiden. -->
|
||
<section class="leistung-woche" id="woche" hidden>
|
||
<div class="klapp-kopf">
|
||
<p class="feldschild">Diese Woche</p>
|
||
<p class="leistung__erfassung" id="erfassung"></p>
|
||
</div>
|
||
<!-- WENN ES KEINE TAGESZAHLEN GIBT, STEHT HIER KEIN NULLENFELD
|
||
(14.09.2026).
|
||
|
||
Filipe: "wieso werden die zahlen oben nicht ausgefuellt von der
|
||
excel datei?"
|
||
|
||
Die Frage entsteht GENAU HIER, also gehoert die Antwort hierher
|
||
und nicht in eine Notiz. Sieben Karten mit "0" und "wie in der
|
||
Vorwoche" sehen aus wie ein Fehler -- dabei ist schlicht kein
|
||
einziger Tag erfasst. -->
|
||
<div class="woche-leer" id="woche-leer" hidden></div>
|
||
<div class="zahlkarten" id="zahlkarten"></div>
|
||
</section>
|
||
|
||
<!-- Die Ziele als Fortschritt, nicht als Satz. -->
|
||
<section class="leistung-ziele" id="ziele-block" hidden>
|
||
<div class="klapp-kopf">
|
||
<p class="feldschild">Ziele</p>
|
||
<button type="button" class="knopf-still" id="ziele-aendern" hidden>Ziele setzen</button>
|
||
</div>
|
||
<div class="zielbalken" id="zielbalken"></div>
|
||
</section>
|
||
|
||
<!-- ZAHLEN FUER EINEN ZEITRAUM (14.09.2026).
|
||
|
||
Backstage gibt eine Ausgabe fuer einen Zeitraum heraus
|
||
("2026-09-01 ~ 2026-09-13"), alle Zahlen aufsummiert. Sie auf
|
||
einen Tag zu schreiben waere falsch, sie wegzuwerfen schade.
|
||
Also stehen sie hier -- als das, was sie sind.
|
||
|
||
BEWUSST UEBER den Tageszeilen und UNTER der Woche: Es ist die
|
||
groebere Auskunft. Und sie geht NICHT in die Wochenzahlen ein;
|
||
die bleiben aus Tagen gerechnet. -->
|
||
<!-- EINE TAFEL STATT DREI FREIER DINGE (16.09.2026)
|
||
|
||
Filipe: "das muss viel geiler aussehen bitte. ich will dass es
|
||
auch seeeehr gut erkennbar ist, genau wie der text drüber. mach
|
||
das bitte alles so dass es mega speziell, hochwertig und lesbar
|
||
ist."
|
||
|
||
VORHER STANDEN ÜBERSCHRIFT UND SATZ NACKT AUF DER BÜHNE -- und
|
||
die Bühne ist ein Foto. Im Bildschirmfoto gemessen: Der rote
|
||
Berg lief quer durch beide Zeilen. Das ist kein Geschmacks-,
|
||
sondern ein Lesbarkeitsproblem, und seine Worte sagen genau das
|
||
("seeeehr gut erkennbar").
|
||
|
||
JETZT SITZT ALLES IN EINEM KÖRPER: Fassung außen, deckendes
|
||
Innenglas, und die Zeiträume als eingelassene Felder darin.
|
||
Dieselbe Bauart wie die Rollenkachel der Anmeldeseite -- ein
|
||
Haus, eine Handschrift. -->
|
||
<section class="leistung-spannen" id="spannen-block" hidden>
|
||
<div class="spannen-tafel">
|
||
<div class="spannen-tafel__kopf">
|
||
<p class="feldschild spannen__schild">Zeiträume aus Backstage</p>
|
||
<p class="spannen__satz">
|
||
Diese Zahlen gelten für den ganzen Zeitraum, nicht für einen Tag –
|
||
sie zählen deshalb nicht in die Wochenzahlen oben hinein.
|
||
</p>
|
||
</div>
|
||
<div class="spannen" id="spannen"></div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Die Tageszeilen. Tastaturfreundlich: Eine Woche soll in unter
|
||
einer Minute eingetragen sein. -->
|
||
<section class="leistung-tage" id="tage-block" hidden>
|
||
<div class="klapp-kopf">
|
||
<p class="feldschild">Die letzten Tage</p>
|
||
<!-- Zwei Knöpfe rechts: erst der Schalter (er ordnet die Liste),
|
||
dann die Hauptaktion. Der Schalter trägt bewusst die stille
|
||
Ausführung -- er verändert nichts an den Daten. -->
|
||
<div class="klapp-kopf__knoepfe">
|
||
<button type="button" class="knopf-still" id="tage-schalter"
|
||
aria-expanded="false" aria-controls="tagetabelle" hidden>
|
||
<span id="tage-schalter-text">Alle zeigen</span>
|
||
<svg class="klapp-pfeil" viewBox="0 0 24 24" aria-hidden="true">
|
||
<path d="m6 9.5 6 6 6-6" />
|
||
</svg>
|
||
</button>
|
||
<!-- `hidden` ab Start (11.09.2026): Seit die Seite jeder Rolle
|
||
offensteht, darf dieser Knopf nicht erst erscheinen und
|
||
dann wieder verschwinden. Ein Creator saehe sonst fuer
|
||
einen Wimpernschlag einen Weg, den es fuer ihn nicht gibt
|
||
-- gezeigt wird er in leistung.js, zusammen mit den
|
||
anderen beiden. -->
|
||
<button type="button" class="knopf knopf--klein" id="import-oeffnen" hidden>Aus Datei einlesen</button>
|
||
<!-- DER WEG AUS BACKSTAGE (11.09.2026).
|
||
|
||
TikTok LIVE Backstage hat keine Schnittstelle und keinen
|
||
Export – nachrecherchiert am 10.09.2026. Was es hat, ist
|
||
eine Tabelle im Browser, die man markieren kann. Genau das
|
||
ist hier der Weg: markieren, kopieren, einfügen.
|
||
|
||
Getrennt vom Knopf daneben, weil es etwas anderes tut: Der
|
||
liest eine Datei FÜR DIESEN einen Creator, dieser eine
|
||
Tabelle FÜR ALLE auf einmal. -->
|
||
<button type="button" class="knopf knopf--klein" id="netz-oeffnen" hidden>
|
||
Backstage-Tabelle einfügen
|
||
</button>
|
||
</div>
|
||
</div>
|
||
<!-- IMMER SICHTBAR, NICHT ERST IM FENSTER (11.09.2026).
|
||
|
||
Filipe: "ich brauch auch eine erklärung immer dabei."
|
||
|
||
Ein Knopf sagt, was er tut. Er sagt nicht, WOHER das Material
|
||
kommt -- und genau daran scheitert es, wenn jemand das erste Mal
|
||
davorsitzt. Zwei Sätze reichen; die Schritte stehen im Fenster,
|
||
wo man sie braucht. -->
|
||
<p class="quellen-hinweis" id="quellen-hinweis" hidden>
|
||
<span id="quelle-netz" hidden><strong>Backstage-Tabelle:</strong> die Liste aus TikTok LIVE
|
||
Backstage, in der alle deine Creator mit ihren Zahlen stehen –
|
||
markieren, kopieren, einfügen. Für alle auf einmal.</span>
|
||
</p>
|
||
<div class="tagetabelle" id="tagetabelle"></div>
|
||
</section>
|
||
|
||
<p class="fuss">
|
||
<!-- Der Satz stand hier mit zwei Wegen, seit dem 11.09.2026 sind es
|
||
drei. Ein Text, der etwas anderes sagt als die Software tut, ist
|
||
schlimmer als gar keiner. -->
|
||
Die Zahlen kommen aus TikTok LIVE Backstage – von Hand eingetragen, als
|
||
Datei eingelesen oder als ganze Tabelle eingefügt. Abgerufen wird nichts:
|
||
Backstage hat keine Schnittstelle, und an den offiziellen TikTok-Zugängen
|
||
gibt es nichts zu LIVE, Diamanten oder Netzwerkdaten (nachgesehen am
|
||
10.09.2026).
|
||
</p>
|
||
</main>
|
||
|
||
<!-- Einen Tag eintragen -->
|
||
<dialog class="dialog" id="tag-dialog">
|
||
<form method="dialog" id="tag-form" class="neu neu--blank">
|
||
<h2 class="dialog__titel" id="tag-titel">Tag eintragen</h2>
|
||
<p class="dialog__unter" id="tag-unter"></p>
|
||
|
||
<div class="neu__raster">
|
||
<div>
|
||
<label class="feld-schild" for="f-diamanten">Diamanten</label>
|
||
<input id="f-diamanten" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="f-dauer">LIVE-Dauer <span class="leise">Minuten</span></label>
|
||
<input id="f-dauer" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="f-verweildauer">Ø Verweildauer <span class="leise">Sekunden</span></label>
|
||
<input id="f-verweildauer" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="f-zavg">Ø Zuschauer</label>
|
||
<input id="f-zavg" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="f-zmax">Spitze</label>
|
||
<input id="f-zmax" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="f-schenker">Schenker</label>
|
||
<input id="f-schenker" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="f-follower">Neue Follower</label>
|
||
<input id="f-follower" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
</div>
|
||
|
||
<!-- Der Kontext, ohne den Zahlen in die Irre führen. -->
|
||
<div class="neu__zeile">
|
||
<label class="feld-schild" for="f-notiz">
|
||
Was war an dem Tag besonders? <span class="leise">(optional)</span>
|
||
</label>
|
||
<input id="f-notiz" maxlength="500" placeholder="z. B. PK gegen Mia, krank, Technik ausgefallen" />
|
||
</div>
|
||
|
||
<p class="fehler" id="tag-fehler" role="alert" aria-live="polite"></p>
|
||
|
||
<div class="dialog__knoepfe">
|
||
<button type="submit" class="knopf knopf--klein" id="tag-speichern">Speichern</button>
|
||
<button type="button" class="abmelden" id="tag-zu">Abbrechen</button>
|
||
<button type="button" class="abmelden abmelden--warnung" id="tag-loeschen" hidden>Zeile löschen</button>
|
||
</div>
|
||
</form>
|
||
</dialog>
|
||
|
||
<!-- Ziele setzen -->
|
||
<dialog class="dialog" id="ziele-dialog">
|
||
<form method="dialog" id="ziele-form" class="neu neu--blank">
|
||
<h2 class="dialog__titel">Ziele je Woche</h2>
|
||
<p class="dialog__unter">
|
||
Aus „mehr Reichweite“ wird eine prüfbare Größe. Leer lassen heißt: kein Ziel.
|
||
</p>
|
||
<div class="neu__raster">
|
||
<div>
|
||
<label class="feld-schild" for="z-diamanten">Diamanten pro Woche</label>
|
||
<input id="z-diamanten" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="z-tage">LIVE-Tage pro Woche</label>
|
||
<input id="z-tage" type="number" min="0" max="7" inputmode="numeric" />
|
||
</div>
|
||
<div>
|
||
<label class="feld-schild" for="z-verweildauer">Ø Verweildauer <span class="leise">Sekunden</span></label>
|
||
<input id="z-verweildauer" type="number" min="0" inputmode="numeric" />
|
||
</div>
|
||
</div>
|
||
<p class="fehler" id="ziele-fehler" role="alert" aria-live="polite"></p>
|
||
<div class="dialog__knoepfe">
|
||
<button type="submit" class="knopf knopf--klein" id="ziele-speichern">Speichern</button>
|
||
<button type="button" class="abmelden" id="ziele-zu">Abbrechen</button>
|
||
</div>
|
||
</form>
|
||
</dialog>
|
||
|
||
<!-- Aus Datei einlesen. ERST VORSCHAU, DANN ÜBERNEHMEN -->
|
||
<!-- ====================================================================
|
||
BACKSTAGE-TABELLE EINFÜGEN — alle Creator auf einmal (11.09.2026)
|
||
|
||
Warum ein eigener Dialog und nicht derselbe: Der andere wählt eine
|
||
Datei für EINEN Creator. Hier wird eine Tabelle eingefügt, in der
|
||
jede Zeile zu einer anderen Person gehört – die Zuordnung ist die
|
||
eigentliche Arbeit, und die will man sehen, bevor geschrieben wird.
|
||
==================================================================== -->
|
||
<!-- ====================================================================
|
||
DIE TIKTOK-DATEI DES CREATORS (11.09.2026)
|
||
|
||
Warum hier eine AUSWAHL steht und nicht einfach eingelesen wird:
|
||
Das Format der Datei ist nicht dokumentiert. Statt Schlüsselnamen
|
||
zu raten, durchsucht der Server die Datei nach Listen mit Datum und
|
||
legt sie vor – bestätigt wird von Hand. Damit funktioniert es auch
|
||
dann noch, wenn TikTok die Felder umbenennt.
|
||
==================================================================== -->
|
||
<dialog class="dialog dialog--breit" id="netz-dialog">
|
||
<form method="dialog" id="netz-form" class="neu neu--blank">
|
||
<h2 class="dialog__titel">Backstage-Tabelle einfügen</h2>
|
||
|
||
<!-- ARBEIT ZUERST, ANLEITUNG DAHINTER (11.09.2026).
|
||
|
||
Filipe, mit dem Fenster im Bild: "perfektionnier auch diese
|
||
kachel die sieht so scheisse aus."
|
||
|
||
Er hatte recht, und der Grund war nicht die Farbe: Fünf lange
|
||
Schritte und zwei Absätze standen VOR dem Feld, in das man
|
||
einfügt. Wer das Fenster zum zwanzigsten Mal öffnet, scrollt
|
||
jedes Mal an einer Anleitung vorbei, die er längst kennt – und
|
||
wer es zum ersten Mal öffnet, liest eine Wand, bevor er weiß,
|
||
worum es geht.
|
||
|
||
Jetzt steht oben EIN Satz mit dem, woran es wirklich scheitert
|
||
(die Überschriftenzeile), darunter sofort das Feld. Die
|
||
ausführliche Anleitung ist eingeklappt – einmal aufgemacht,
|
||
danach nie wieder im Weg.
|
||
|
||
DIE ÜBERSCHRIFTENZEILE STEHT BEWUSST OBEN UND NICHT NUR IM
|
||
AUFGEKLAPPTEN TEIL. Sie ist die einzige Angabe, ohne die es
|
||
gar nicht geht; sie hinter einen Klick zu legen hieße, den
|
||
häufigsten Fehlgriff zu verstecken. -->
|
||
<p class="dialog__unter">
|
||
Tabelle in Backstage markieren – <strong>mit der Überschriftenzeile</strong> –
|
||
und hier einfügen. Für alle Creator auf einmal. Erst siehst du, was
|
||
passieren würde; geschrieben wird erst, wenn du bestätigst.
|
||
</p>
|
||
|
||
<div class="neu__zeile">
|
||
<label class="feld-schild" for="netz-text">Tabelle</label>
|
||
<textarea id="netz-text" rows="6" class="netz__feld"
|
||
placeholder="Hier einfügen (Strg + V) …"></textarea>
|
||
<!-- ODER EINE DATEI (14.09.2026).
|
||
Filipes Backstage-Ausgabe ("Creator:innendaten …xlsx") enthält
|
||
ALLE Creator auf einmal – sie gehört damit hierher und nicht
|
||
in den Einzel-Import daneben. Der Knopf füllt einfach das Feld
|
||
darüber; ab da ist es derselbe Weg wie beim Einfügen. -->
|
||
<p class="feld-hinweis feld-hinweis--oder">
|
||
… oder direkt die Datei aus Backstage:
|
||
<input id="netz-datei" type="file" class="feld-datei"
|
||
accept=".xlsx,.csv,.txt,.tsv,text/csv,text/plain" />
|
||
</p>
|
||
</div>
|
||
|
||
<div class="neu__zeile neu__zeile--tag">
|
||
<label class="feld-schild" for="netz-tag">Tag</label>
|
||
<input id="netz-tag" type="date" />
|
||
<p class="feld-hinweis">Nur nötig, wenn die Tabelle keine Datumsspalte hat.</p>
|
||
</div>
|
||
|
||
<div class="import-vorschau" id="netz-vorschau" hidden></div>
|
||
|
||
<p class="fehler" id="netz-fehler" role="alert" aria-live="polite"></p>
|
||
|
||
<!-- KEIN ERFUNDENER KLICKPFAD. Die Menünamen von Backstage sind
|
||
nirgends öffentlich dokumentiert, und eine Anleitung, die
|
||
„Daten → Export" sagt, wo „Performance" steht, schickt Leute
|
||
suchen und wird nie korrigiert. Beschrieben wird deshalb, WAS
|
||
man sucht – das bleibt richtig, auch wenn TikTok umbenennt.
|
||
Die Mechanik dagegen (markieren, Strg+C) ist überall gleich
|
||
und steht genau. -->
|
||
<details class="hilfe" id="netz-hilfe">
|
||
<summary>Schritt für Schritt – und warum von Hand</summary>
|
||
<ol class="anleitung">
|
||
<li>In Backstage die Ansicht öffnen, in der deine Creator
|
||
untereinander mit ihren Zahlen stehen – die Liste mit Diamanten,
|
||
LIVE-Dauer und gültigen Tagen. Wie der Menüpunkt heißt, wechselt
|
||
mit den TikTok-Versionen; gesucht ist die <strong>Tabelle</strong>,
|
||
nicht ein bestimmter Name.</li>
|
||
<li>Die Tabelle mit der Maus markieren – <strong>die
|
||
Überschriftenzeile muss mit</strong>. An ihr erkennt der Workspace,
|
||
welche Spalte Diamanten sind und welche Dauer.</li>
|
||
<li>Kopieren mit <strong>Strg + C</strong> (Mac: Cmd + C).</li>
|
||
<li>Oben ins Feld klicken, <strong>Strg + V</strong> – die
|
||
Vorschau erscheint von selbst.</li>
|
||
<li>Steht in der Tabelle kein Datum, den <strong>Tag</strong> wählen –
|
||
sonst weiß niemand, worauf sich die Zahlen beziehen.</li>
|
||
</ol>
|
||
<p class="hilfe__satz">
|
||
<strong>Zugeordnet wird über den TikTok-Namen aus dem Steckbrief.</strong>
|
||
Wer dort keinen stehen hat, taucht in der Vorschau unter „nicht
|
||
zugeordnet" auf – einmal im Steckbrief nachtragen, und beim nächsten
|
||
Mal wird er gefunden. Es wird nie geraten.
|
||
</p>
|
||
<p class="hilfe__satz">
|
||
<strong>Warum von Hand?</strong> Backstage hat keine Schnittstelle und
|
||
keinen Export. Erweiterungen, die das umgehen, verstoßen gegen die
|
||
Nutzungsbedingungen – und riskieren das Netzwerk-Konto.
|
||
</p>
|
||
</details>
|
||
|
||
<div class="dialog__knoepfe">
|
||
<button type="submit" class="knopf knopf--klein" id="netz-los" disabled>Übernehmen</button>
|
||
<button type="button" class="abmelden" id="netz-zu">Abbrechen</button>
|
||
</div>
|
||
</form>
|
||
</dialog>
|
||
|
||
<dialog class="dialog dialog--breit" id="import-dialog">
|
||
<form method="dialog" id="import-form" class="neu neu--blank">
|
||
<h2 class="dialog__titel">Aus dem Export einlesen</h2>
|
||
<p class="dialog__unter">
|
||
Eine Tabelle mit einer Zeile je Tag – <strong>Excel (.xlsx)</strong> oder
|
||
<strong>CSV</strong>. Erst siehst du, was passieren würde; geschrieben wird
|
||
erst, wenn du bestätigst. Dieselbe Datei zweimal einzulesen richtet keinen
|
||
Schaden an.
|
||
<br><span class="dialog__unter--still">Für eine Datei mit <em>allen</em>
|
||
Creator:innen (die Backstage-Ausgabe) nimm den Knopf „Backstage-Tabelle
|
||
einfügen" – dort geht sie auch als Datei.</span>
|
||
</p>
|
||
|
||
<div class="neu__zeile">
|
||
<label class="feld-schild" for="datei">Datei wählen</label>
|
||
<!-- KEINE SACKGASSE MEHR (11.09.2026). Hier stand
|
||
accept=".csv,text/csv,text/plain" -- eine Excel-Datei war im
|
||
Auswahlfenster ausgegraut, ohne ein Wort dazu. Filipe: "meine
|
||
excel datei kann ich nicht auswaehlen wieso??"
|
||
|
||
Jetzt laesst sich alles waehlen; WAS es ist, entscheidet der
|
||
Inhalt (erste Bytes), nicht die Endung, und bei einer
|
||
Excel-Datei steht daneben, was stattdessen zu tun ist.
|
||
Die Reihenfolge nennt CSV trotzdem zuerst -- so schlaegt das
|
||
Fenster das Richtige vor, ohne das Falsche zu verbieten. -->
|
||
<input id="datei" type="file" accept=".csv,text/csv,text/plain,.txt,.tsv,.xlsx,.xls" />
|
||
</div>
|
||
|
||
<div class="import-vorschau" id="vorschau" hidden></div>
|
||
|
||
<p class="fehler" id="import-fehler" role="alert" aria-live="polite"></p>
|
||
|
||
<div class="dialog__knoepfe">
|
||
<button type="submit" class="knopf knopf--klein" id="import-los" disabled>Übernehmen</button>
|
||
<button type="button" class="abmelden" id="import-zu">Abbrechen</button>
|
||
</div>
|
||
</form>
|
||
</dialog>
|
||
|
||
<script src="assets/js/meldung.js?v=202610011216"></script>
|
||
<script src="assets/js/nachfrage.js?v=202610011216"></script>
|
||
<script src="assets/js/wahl.js?v=202610011216"></script>
|
||
<script src="assets/js/bereiche.js?v=202610011216"></script>
|
||
<script src="assets/js/kopf.js?v=202610011216"></script>
|
||
<script src="assets/js/glocke.js?v=202610011216"></script>
|
||
<script src="assets/js/leistung.js?v=202610011216"></script>
|
||
<script src="assets/js/installieren.js?v=202610011216" defer></script>
|
||
</body>
|
||
</html>
|