GUI: Aufnahmedatum und -uhrzeit im Kopf der Detailansicht
Neuer Helfer recStamp(r) formatiert created_at als "Di., 29.09.2026, 14:23 Uhr" und zeigt die Zeile in der .status-line vor der Analysezeit. Wer aus der Inhaltssuche, einem Projekt-Pin oder per Direktlink in die Detailansicht springt, hat in der linken Liste keine markierte Zeile und sah den Aufnahmezeitpunkt bisher nirgends. Keine Server-/DB-Änderung: /api/recordings/:id liefert created_at bereits mit. Doku: Changelog 2026-09-29 + Notiz in Kapitel 03. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1028,6 +1028,17 @@ function jumpToRecording(id) {
|
||||
// ---------- Recordings ----------
|
||||
// Analysis-duration counter. Shows the total wall time of a processing run
|
||||
// (transcribe+diar+LLM): a live 1-Hz counter while it runs (from analysis_started_at),
|
||||
// Aufnahmedatum + Uhrzeit fuer die Detailansicht: aus der Suche heraus geoeffnet
|
||||
// ist die Aufnahme in der linken Liste nicht markiert, der Zeitpunkt also nirgends sichtbar.
|
||||
function recStamp(r) {
|
||||
if (!r || !r.created_at) return '';
|
||||
const d = new Date(r.created_at);
|
||||
if (isNaN(d)) return '';
|
||||
const day = d.toLocaleDateString('de-DE', { weekday: 'short', day: '2-digit', month: '2-digit', year: 'numeric' });
|
||||
const time = d.toLocaleTimeString('de-DE', { hour: '2-digit', minute: '2-digit' });
|
||||
return `${day}, ${time} Uhr`;
|
||||
}
|
||||
|
||||
// frozen to analysis_ms once done. Returns the inner <span> only; callers add the ⏱.
|
||||
function anaTimeSpan(r) {
|
||||
if (r.analysis_ms != null) return `<span class="ana-time">${fmt(r.analysis_ms)}</span>`;
|
||||
@@ -1374,6 +1385,7 @@ async function openRecording(id) {
|
||||
<div class="muted small hidden" id="mp3wait">🎧 Wiedergabe-Datei wird noch erzeugt – lädt automatisch nach…</div>
|
||||
${vizHtml}
|
||||
<div class="status-line">
|
||||
${recStamp(r) ? `<div class="muted rec-time">🗓 ${recStamp(r)}</div>` : ''}
|
||||
${anaTimeSpan(r) ? `<div class="muted ana-line">⏱ Analysezeit: ${anaTimeSpan(r)}</div>` : ''}
|
||||
${transcribing ? '<div class="muted">📝 Transkription läuft… lange Aufnahmen dauern.</div>' : ''}
|
||||
${transcribeFailed ? `<div class="err-inline">Transkription fehlgeschlagen. <button class="btn" id="retranscribe">Neu transkribieren</button></div>` : ''}
|
||||
|
||||
Reference in New Issue
Block a user