Files
Onyscribe-Admin/app/templates/tenant.html
RubenRWU 7d8c226da2 Onyscribe Admin: Initialer Stand
Admin-Plattform für die Tenants von Onyscribe: Editor mit Live-Vorschau (echter Core in Sandbox), Versionen, KI-Agent (Cortecs),
OIDC-Abgleich über die Login-Developer-API, Deploy-Engine (Mittwald, gesperrt ohne DEPLOY_LIVE, Freigabe pro Tenant),
Core-Vertrag (Schema/Manifest), Core-Releases mit Kompatibilitätsprüfung, Canary-Rollout und Rollback, Zustandsabgleich.
Runbook: docs/RUNBOOK_PARALLELTEST.md

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 15:30:26 +02:00

52 lines
3.3 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{% extends "base.html" %}
{% block title %}{{ t.name }} · Onyscribe Admin{% endblock %}
{% block body %}
<div class="thead">
<div class="logo-box" id="h-logo">{% if logo %}<img src="{{ logo }}" alt="">{% endif %}</div>
<div class="grow" style="min-width:160px">
<div class="crumb"><a href="/">Tenants</a> / <span class="mono">{{ t.id }}</span></div>
<h1 id="h-name">{{ t.name }}</h1>
</div>
<div class="row" id="h-badges"></div>
<div class="row" id="h-actions"></div>
<div class="seg" id="h-panel" title="Mitte: Formular oder KI-Agent – die Vorschau rechts bleibt sichtbar">
<button data-p="edit">Bearbeiten</button><button data-p="agent">KI-Agent</button>
</div>
</div>
<div class="tl open" id="tl">
<nav class="snav" id="snav"></nav>
<div class="mid">
<main class="pane" id="pane"><div class="empty">Lade …</div></main>
<section class="chat agpane hide" id="ag-wrap">
<div class="pbar" style="margin-bottom:6px"><span class="badge" id="ag-mode">Agent</span><span class="hint grow" id="ag-usage"></span><button class="btn sm" title="Verlauf löschen" onclick="clearChat()">Verlauf leeren</button></div>
<div class="msgs" id="msgs"></div>
<div class="chips" id="ag-chips"></div>
<div class="chat-in"><textarea id="chat-text" rows="2" placeholder="Was soll angepasst werden? (Farben, Prompt, PDF-Layout, Flags …) – die Vorschau rechts zeigt jede Änderung sofort."></textarea><button class="btn cyan" id="chat-send" onclick="sendChat()">Senden</button></div>
</section>
</div>
<aside class="panel" id="panel">
<div class="pbar">
<div class="seg" id="pv-kind"><button data-k="web" class="on">Web-App</button><button data-k="pdf">PDF</button></div>
<div class="seg" id="pv-dev"><button data-d="" class="on">Desktop</button><button data-d="tablet">Tablet</button><button data-d="mobile">Mobil</button></div>
<div class="seg" id="pv-src"><button data-s="draft" class="on">Entwurf</button><button data-s="current">Veröffentlicht</button><button data-s="agent" id="pv-agent" class="hide">Agent-Stand</button></div>
<span class="grow"></span><span class="hint" id="pv-info"></span><button class="btn sm" onclick="refreshPreview(true)" title="Neu rendern">↻</button>
</div>
<div class="pv-frame" id="pv-frame">
<iframe id="f-web" sandbox="allow-scripts allow-popups" title="Web-Vorschau"></iframe>
<iframe id="f-pdf" style="display:none" title="PDF-Vorschau"></iframe>
<div class="pv-load" id="pv-load">Rendert mit dem echten Core …</div><div class="pv-err" id="pv-err"></div>
</div>
</aside>
</div>
<div class="modal-bg" id="m-pub"><div class="modal">
<h2>Änderungen prüfen &amp; veröffentlichen</h2><div id="pub-body"></div>
<div class="acts"><button class="btn" onclick="modal('m-pub',false)">Abbrechen</button><button class="btn cyan" id="pub-go" onclick="publish()">Als neue Version veröffentlichen</button></div>
</div></div>
<div class="modal-bg" id="m-diff"><div class="modal"><h2 id="diff-title">Diff</h2><div id="diff-body"></div><div class="acts"><button class="btn" onclick="modal('m-diff',false)">Schließen</button></div></div></div>
{% endblock %}
{% block scripts %}
<script>const TID={{ t.id|tojson }};</script>
<script src="/static/tenant.js"></script>
{% endblock %}