diff --git a/app/static/tenant.js b/app/static/tenant.js index 93f0845..9d6756f 100644 --- a/app/static/tenant.js +++ b/app/static/tenant.js @@ -67,12 +67,16 @@ function layout(){ document.querySelectorAll('#h-panel button').forEach(b => b.classList.toggle('on', b.dataset.p === ui.mode)); if(ui.open) refreshPreview(); } -$('#h-panel').addEventListener('click', e => { const b = e.target.closest('button'); if(!b) return; ui.mode = b.dataset.p; renderNav(); layout(); if(ui.mode === 'agent') $('#chat-text').focus(); }); -function renderSection(){ - renderNav(); layout(); +$('#h-panel').addEventListener('click', e => { + const b = e.target.closest('button'); if(!b) return; ui.mode = b.dataset.p; + if(ui.mode === 'edit') renderSection(); // Formular NEU aufbauen: der Agent kann den Entwurf inzwischen geändert haben (sonst alte Werte sichtbar) + else { renderNav(); layout(); $('#chat-text').focus(); } +}); +function renderSectionContent(){ ({overview: sOverview, brand: sBrand, texts: sTexts, pdf: sPdf, prompt: sPrompt, files: sFiles, func: sFunc, code: sCode, adv: sAdv, domain: sDomain, secrets: sSecrets, deploy: sDeploy, versions: sVersions})[ui.sec](); } +function renderSection(){ renderNav(); layout(); renderSectionContent(); } /* ───────── Speichern (Entwurf) ───────── */ const saveState = txt => { const e = $('#save-ind'); if(e) e.textContent = txt; }; @@ -448,7 +452,7 @@ function showPdfIfRelevant(paths){ async function decide(id, d){ const m = await api('POST', A(`/chat/${id}/${d}`)); $('#m'+id).replaceWith(msgEl(m)); ui.agentSrc = null; setPvSrc('draft'); - if(d==='apply'){ await load(true); renderNav(); headLogo(); if(ui.sec==='overview') sOverview(); toast('Im Entwurf – Vorschau zeigt jetzt den Entwurf'); } + if(d==='apply'){ await load(true); renderNav(); headLogo(); try{ renderSectionContent(); }catch(e){} toast('Im Entwurf – Vorschau zeigt jetzt den Entwurf'); } refreshPreview(true); } async function showProposalDiff(id){ const d = await api('GET', A(`/chat/${id}/diff`)); $('#diff-title').textContent = 'Vorschlag des Agenten'; $('#diff-body').innerHTML = d.items.length ? d.items.map(diffHtml).join('') : '
Keine Unterschiede zum Entwurf.
'; modal('m-diff', true); } diff --git a/app/templates/base.html b/app/templates/base.html index e860b23..04c3ccb 100644 --- a/app/templates/base.html +++ b/app/templates/base.html @@ -5,7 +5,7 @@ {% block title %}Onyscribe Admin{% endblock %} - +