Ecossistema Plácido Cintra: Transformando texto bruto em ativos estratégicos com silêncio
visual e alta precisão.
Publicar Decisão
const originalContent = btn.innerHTML; btn.innerHTML = 'Carregando...'; btn.disabled = true;
try { const response = await fetch('/preview', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ text: text }) });
if (!response.ok) { const errData = await response.json(); throw new Error(errData.detail || 'Erro no servidor'); }
const data = await response.json(); if (data && data.html) { document.getElementById('previewContent').innerHTML = data.html; document.getElementById('previewModal').style.display = 'block'; } else { throw new Error('Resposta do servidor incompleta (html missing).'); } } catch (e) { alert('Erro na Visualização: ' + e.message + '\n\nDica: Verifique se o iniciar_app.bat está rodando.'); } finally { btn.innerHTML = originalContent; btn.disabled = false; } }
function fecharPreview() { document.getElementById('previewModal').style.display = 'none'; }
async function enviarTexto() { const text = document.getElementById('inputText').value; const statusDiv = document.getElementById('status'); const loader = document.getElementById('loader'); const btnText = document.getElementById('btnText');
if (!text) { mostrarStatus('Respiro necessário: insira o texto para análise.', 'error'); return; }
statusDiv.style.display = 'none'; loader.style.display = 'inline-block'; btnText.innerText = 'Processando...';
try { // Aponta para o servidor local (Mesmo rodando no WordPress) const response = await fetch('/post', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ text: text }) });
const data = await response.json();
if (data.status === 'success') { mostrarStatus(`Ativo gerado com sucesso. ID: ${data.id}. Ver no WordPress`, 'success'); document.getElementById('inputText').value = ''; } else { mostrarStatus('Erro na transmissão: ' + (data.message || 'Falha técnica'), 'error'); } } catch (error) { mostrarStatus('Conexão interrompida com o ecossistema.', 'error'); } finally { loader.style.display = 'none'; btnText.innerText = 'Publicar Decisão'; } }
function mostrarStatus(msg, type) {
const statusDiv = document.getElementById('status');
statusDiv.innerHTML = msg;
statusDiv.className = type === 'success' ? 'status-success' : 'status-error';
statusDiv.style.display = 'block';
}