<?php defined('BASEPATH') OR exit('No direct script access allowed');

// ── Extrai campos do conteúdo via regex ──────────────────────────────────────
$conteudo_raw = $pub->conteudo ?? '';

// Data de disponibilização
preg_match('/Data de Disponibiliza[çc][ãa]o[:\s]+([0-9]{2}\/[0-9]{2}\/[0-9]{4})/i', $conteudo_raw, $m_disp);
$data_disponibilizacao = !empty($m_disp[1]) ? $m_disp[1] : null;

// Polo Ativo
preg_match_all('/POLO ATIVO[:\s]+([^\n\r]+)/i', $conteudo_raw, $m_polo_a);
$polos_ativos = array_filter(array_map('trim', $m_polo_a[1] ?? []));

// Polo Passivo
preg_match_all('/POLO PASSIVO[:\s]+([^\n\r]+)/i', $conteudo_raw, $m_polo_p);
$polos_passivos = array_filter(array_map('trim', $m_polo_p[1] ?? []));

// Prazo do juiz — busca padrões como "prazo de X dias", "no prazo de X dias úteis"
preg_match('/prazo\s+de\s+(\d+)\s+(dias?\s*[úu]teis?|dias?)/i', $conteudo_raw, $m_prazo);
$prazo_texto = !empty($m_prazo[0]) ? ucfirst(strtolower(trim($m_prazo[0]))) : null;
$prazo_dias  = !empty($m_prazo[1]) ? (int)$m_prazo[1] : null;
$prazo_tipo  = !empty($m_prazo[2]) ? strtolower(trim($m_prazo[2])) : 'dias';

// Calcula data limite do prazo (a partir da data de publicação)
$data_limite = null;
if ($prazo_dias && $pub->data_publicacao) {
    $ts = strtotime($pub->data_publicacao);
    if (stripos($prazo_tipo, 'útei') !== false || stripos($prazo_tipo, 'utei') !== false) {
        // Dias úteis — pula fins de semana
        $count = 0; $ts_atual = $ts;
        while ($count < $prazo_dias) {
            $ts_atual += 86400;
            $dow = (int)date('N', $ts_atual);
            if ($dow < 6) $count++;
        }
        $data_limite = date('d/m/Y', $ts_atual);
    } else {
        $data_limite = date('d/m/Y', strtotime('+' . $prazo_dias . ' days', $ts));
    }
}

// Dias restantes para o prazo
$dias_restantes = null;
$prazo_vencido  = false;
if ($data_limite) {
    $limite_ts = strtotime(str_replace('/', '-', $data_limite));
    $diff = $limite_ts - time();
    $dias_restantes = (int)ceil($diff / 86400);
    $prazo_vencido  = $dias_restantes < 0;
}

// Juiz responsável
preg_match('/Juiz[^\n]{0,10}[\n\r]+([A-ZÁÉÍÓÚÀÂÊÔÃÕÇ][^\n\r]{5,60})/u', $conteudo_raw, $m_juiz);
$juiz = !empty($m_juiz[1]) ? trim($m_juiz[1]) : null;

// Tipo de ação do processo
preg_match('/PROCESSO[:\s]+[0-9.\-]+\s*[-–]\s*([A-ZÁÉÍÓÚÀÂÊÔÃÕÇ][^||\n\r]{3,80})/iu', $conteudo_raw, $m_acao);
$tipo_acao = !empty($m_acao[1]) ? trim($m_acao[1]) : null;

// Conteúdo limpo (remove metadados, mantém o texto da decisão)
$conteudo_limpo = $conteudo_raw;
// Remove linhas de cabeçalho do recorte
$conteudo_limpo = preg_replace('/^(Data de Disponibiliza[çc][ãa]o|Data de Publica[çc][ãa]o|Jornal:|Caderno:|Local:|P[áa]gina:|Intimação|Notificação|Despacho)[^\n]*\n?/im', '', $conteudo_limpo);
$conteudo_limpo = preg_replace('/\|\|\|.*$/s', '', $conteudo_limpo); // remove após |||
$conteudo_limpo = preg_replace('/POLO (ATIVO|PASSIVO)[^\n]*\n?/i', '', $conteudo_limpo);
$conteudo_limpo = preg_replace('/ADVOGADO[^\n]*\n?/i', '', $conteudo_limpo);
$conteudo_limpo = preg_replace('/Acesso ao documento[^\n]*\n?/i', '', $conteudo_limpo);
$conteudo_limpo = preg_replace('/Identificador[^\n]*\n?/i', '', $conteudo_limpo);
$conteudo_limpo = trim(preg_replace("/\n{3,}/", "\n\n", $conteudo_limpo));
?>
<style>
/* ── Base ───────────────────────────────────────── */
.content-header {
    background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);
    padding:18px 20px !important; margin-bottom:0;
}
.content-header h1 { color:#fff !important; margin:0; font-size:20px; font-weight:700; }
.content-header h1 small { color:rgba(255,255,255,.6) !important; font-size:12px; }
.content-header .breadcrumb { background:transparent !important; margin:5px 0 0; padding:0; }
.content-header .breadcrumb li,
.content-header .breadcrumb li a { color:rgba(255,255,255,.6); font-size:12px; }
.content-header .breadcrumb li.active { color:rgba(255,255,255,.9); }
.content-header .breadcrumb > li+li:before { color:rgba(255,255,255,.3); }

.box { border-radius:12px !important; border:none !important; box-shadow:0 2px 14px rgba(0,0,0,.09) !important; margin-bottom:16px; }
.box-header { border-radius:12px 12px 0 0 !important; padding:14px 18px !important; }
.box-header.with-border { border-bottom:1px solid #f0f0f0 !important; }
.box-footer { border-radius:0 0 12px 12px !important; background:#fafafa !important; border-top:1px solid #f0f0f0 !important; padding:12px 18px !important; }

/* ── Campo detalhe ──────────────────────────────── */
.detalhe-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
}
.detalhe-item { padding:10px 16px; border-bottom:1px solid #f0f2f5; }
.detalhe-item:last-child { border-bottom:none; }
.detalhe-item .di-label { font-size:10px; font-weight:700; color:#aaa; text-transform:uppercase; letter-spacing:.7px; margin-bottom:3px; }
.detalhe-item .di-val { font-size:13px; color:#222; font-weight:500; }
.detalhe-item.full { grid-column:1/-1; }

/* ── Badges ─────────────────────────────────────── */
.tribunal-badge { display:inline-block; padding:3px 10px; border-radius:5px; font-size:12px; font-weight:800; background:#1F4E79; color:#fff; }
.tipo-badge { display:inline-block; padding:3px 10px; border-radius:10px; font-size:12px; font-weight:600; background:#e8f0fe; color:#1F4E79; }

/* ── Prazo box ──────────────────────────────────── */
.prazo-box {
    border-radius:10px; padding:14px 18px; margin-bottom:16px;
    display:flex; align-items:center; gap:14px; flex-wrap:wrap;
}
.prazo-box.ok      { background:linear-gradient(135deg,#e8f5e9,#f0fff4); border:1px solid #a5d6a7; }
.prazo-box.urgente { background:linear-gradient(135deg,#fff8e1,#fffde7); border:1px solid #ffe082; }
.prazo-box.vencido { background:linear-gradient(135deg,#ffebee,#fff5f5); border:1px solid #ef9a9a; }
.prazo-box .pb-dias {
    font-size:36px; font-weight:800; line-height:1; min-width:60px; text-align:center;
}
.prazo-box.ok      .pb-dias { color:#1D6B3B; }
.prazo-box.urgente .pb-dias { color:#C55A11; }
.prazo-box.vencido .pb-dias { color:#C00000; }
.prazo-box .pb-info .pb-titulo { font-size:12px; font-weight:700; color:#333; }
.prazo-box .pb-info .pb-sub   { font-size:11px; color:#888; margin-top:2px; }
.prazo-box .pb-limit { margin-left:auto; text-align:right; }
.prazo-box .pb-limit .pb-data { font-size:15px; font-weight:700; }
.prazo-box.ok      .pb-limit .pb-data { color:#1D6B3B; }
.prazo-box.urgente .pb-limit .pb-data { color:#C55A11; }
.prazo-box.vencido .pb-limit .pb-data { color:#C00000; }
.prazo-box .pb-limit small { font-size:10px; color:#aaa; display:block; }

/* ── Conteúdo publicação ────────────────────────── */
.pub-content {
    background:#fafcff; border-radius:8px; padding:18px 20px;
    font-size:13px; line-height:1.9; color:#333;
    border-left:4px solid #1F4E79; white-space:pre-wrap;
    font-family:inherit; max-height:500px; overflow-y:auto;
}

/* ── Partes processo ────────────────────────────── */
.parte-badge { display:inline-block; padding:3px 10px; border-radius:6px; font-size:12px; margin:2px 4px 2px 0; }
.parte-ativo  { background:#e8f0fe; color:#1F4E79; font-weight:600; }
.parte-passivo{ background:#fce4ec; color:#880e4f; font-weight:600; }

/* ── MOBILE ─────────────────────────────────────── */
@media (max-width:768px) {
    .content-header { padding:14px !important; }
    .content-header h1 { font-size:17px; }
    .detalhe-grid { grid-template-columns:1fr; }
    .detalhe-item.full { grid-column:1; }
    .prazo-box { flex-direction:column; align-items:flex-start; gap:8px; }
    .prazo-box .pb-limit { margin-left:0; text-align:left; }
    .prazo-box .pb-dias { font-size:28px; }
    .pub-content { max-height:350px; font-size:12px; }
    .col-md-8, .col-md-4 { width:100% !important; float:none !important; }
    section.content { padding:10px !important; }
}
</style>

<section class="content-header">
    <h1>
        <i class="fa fa-file-text-o"></i>
        <?php echo htmlspecialchars($pub->titulo ?: 'Publicação PJe') ?>
        <small> — <?php echo $pub->processo_mascara ?: $pub->numero_processo ?></small>
    </h1>
    <ol class="breadcrumb">
        <li><a href="<?php echo site_url('admin/diario_oficial') ?>"><i class="fa fa-newspaper-o"></i> Diário PJe</a></li>
        <li class="active">Detalhe</li>
    </ol>
</section>

<section class="content" style="padding:16px">

<?php if ($this->session->flashdata('message')): ?>
<div class="alert alert-success alert-dismissible" style="border-radius:8px">
    <button class="close" data-dismiss="alert">&times;</button>
    <?php echo $this->session->flashdata('message') ?>
</div>
<?php endif; ?>

<!-- PRAZO DO JUIZ (se encontrado) -->
<?php if ($prazo_dias): ?>
<?php
$prazo_class = 'ok';
if ($prazo_vencido) $prazo_class = 'vencido';
elseif ($dias_restantes !== null && $dias_restantes <= 5) $prazo_class = 'urgente';
?>
<div class="prazo-box <?php echo $prazo_class ?>">
    <div class="pb-dias">
        <?php if ($prazo_vencido): ?>
        <i class="fa fa-times-circle"></i>
        <?php else: ?>
        <?php echo $dias_restantes ?>
        <?php endif; ?>
    </div>
    <div class="pb-info">
        <div class="pb-titulo">
            <?php if ($prazo_vencido): ?>
            ⚠️ Prazo vencido há <?php echo abs($dias_restantes) ?> dia(s)
            <?php elseif ($dias_restantes <= 5): ?>
            ⚡ Prazo urgente — <?php echo $dias_restantes ?> dia(s) restante(s)
            <?php else: ?>
            ⏱ Prazo processual — <?php echo $dias_restantes ?> dia(s) restante(s)
            <?php endif; ?>
        </div>
        <div class="pb-sub">
            <?php echo ucfirst($prazo_texto) ?> — contados a partir de <?php echo date('d/m/Y', strtotime($pub->data_publicacao)) ?>
        </div>
    </div>
    <?php if ($data_limite): ?>
    <div class="pb-limit">
        <div class="pb-data"><i class="fa fa-calendar"></i> <?php echo $data_limite ?></div>
        <small>Data limite</small>
    </div>
    <?php endif; ?>
</div>
<?php endif; ?>

<div class="row">

<!-- COLUNA PRINCIPAL: Conteúdo -->
<div class="col-md-8">

    <!-- Detalhes cruciais -->
    <div class="box" style="border-top:3px solid #1F4E79">
        <div class="box-header with-border" style="background:linear-gradient(135deg,#1F4E79,#2E75B6);border-radius:12px 12px 0 0">
            <h3 class="box-title" style="color:#fff"><i class="fa fa-info-circle"></i> Dados da Publicação</h3>
            <div class="box-tools pull-right">
                <?php if ($pub->link): ?>
                <a href="<?php echo $pub->link ?>" target="_blank" class="btn btn-xs" style="background:rgba(255,255,255,.2);color:#fff">
                    <i class="fa fa-external-link"></i> Abrir no PJe
                </a>
                <?php endif; ?>
            </div>
        </div>
        <div class="box-body" style="padding:0">
            <div class="detalhe-grid">
                <div class="detalhe-item">
                    <div class="di-label">Data de Publicação</div>
                    <div class="di-val">
                        <strong><?php echo $pub->data_publicacao ? date('d/m/Y', strtotime($pub->data_publicacao)) : '—' ?></strong>
                    </div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">Data de Disponibilização</div>
                    <div class="di-val"><?php echo $data_disponibilizacao ?: '—' ?></div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">Tribunal</div>
                    <div class="di-val">
                        <?php if ($pub->tribunal): ?>
                        <span class="tribunal-badge"><?php echo $pub->tribunal ?></span>
                        <?php else: ?>—<?php endif; ?>
                    </div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">Tipo</div>
                    <div class="di-val">
                        <?php if ($pub->tipo_comunicacao): ?>
                        <span class="tipo-badge"><?php echo htmlspecialchars($pub->tipo_comunicacao) ?></span>
                        <?php else: ?>—<?php endif; ?>
                    </div>
                </div>
                <div class="detalhe-item full">
                    <div class="di-label">Processo</div>
                    <div class="di-val">
                        <code style="font-size:14px;font-weight:700;color:#1F4E79"><?php echo $pub->processo_mascara ?: $pub->numero_processo ?: '—' ?></code>
                        <?php if ($tipo_acao): ?>
                        <br><small class="text-muted"><?php echo htmlspecialchars($tipo_acao) ?></small>
                        <?php endif; ?>
                    </div>
                </div>
                <div class="detalhe-item full">
                    <div class="di-label">Órgão / Vara</div>
                    <div class="di-val"><?php echo htmlspecialchars($pub->orgao ?: '—') ?></div>
                </div>
                <?php if (!empty($polos_ativos)): ?>
                <div class="detalhe-item full">
                    <div class="di-label">Polo Ativo</div>
                    <div class="di-val">
                        <?php foreach ($polos_ativos as $pa): ?>
                        <span class="parte-badge parte-ativo"><?php echo htmlspecialchars($pa) ?></span>
                        <?php endforeach; ?>
                    </div>
                </div>
                <?php endif; ?>
                <?php if (!empty($polos_passivos)): ?>
                <div class="detalhe-item full">
                    <div class="di-label">Polo Passivo</div>
                    <div class="di-val">
                        <?php foreach ($polos_passivos as $pp): ?>
                        <span class="parte-badge parte-passivo"><?php echo htmlspecialchars($pp) ?></span>
                        <?php endforeach; ?>
                    </div>
                </div>
                <?php endif; ?>
                <?php if ($juiz): ?>
                <div class="detalhe-item full">
                    <div class="di-label">Juiz Responsável</div>
                    <div class="di-val"><i class="fa fa-gavel text-muted"></i> <?php echo htmlspecialchars($juiz) ?></div>
                </div>
                <?php endif; ?>
            </div>
        </div>
    </div>

    <!-- Conteúdo da Intimação -->
    <div class="box" style="border-top:3px solid #546e7a">
        <div class="box-header with-border">
            <h3 class="box-title"><i class="fa fa-align-left"></i> Íntegra da Publicação</h3>
        </div>
        <div class="box-body">
            <pre class="pub-content"><?php echo htmlspecialchars($conteudo_limpo ?: $conteudo_raw) ?></pre>
        </div>
        <div class="box-footer">
            <a href="<?php echo site_url('admin/diario_oficial') ?>" class="btn btn-default btn-sm">
                <i class="fa fa-arrow-left"></i> Voltar
            </a>
            <?php if ($pub->link): ?>
            <a href="<?php echo $pub->link ?>" target="_blank" class="btn btn-primary btn-sm pull-right">
                <i class="fa fa-external-link"></i> Abrir no Portal PJe
            </a>
            <?php endif; ?>
        </div>
    </div>

</div><!-- /col-md-8 -->

<!-- COLUNA LATERAL -->
<div class="col-md-4">

    <!-- Advogado e status -->
    <div class="box" style="border-top:3px solid #C55A11">
        <div class="box-header with-border">
            <h3 class="box-title"><i class="fa fa-user-tie"></i> Advogado Monitorado</h3>
        </div>
        <div class="box-body" style="padding:0">
            <div class="detalhe-grid" style="grid-template-columns:1fr">
                <div class="detalhe-item">
                    <div class="di-label">Nome</div>
                    <div class="di-val"><strong><?php echo htmlspecialchars($pub->adv_nome ?? '—') ?></strong></div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">OAB</div>
                    <div class="di-val"><?php echo $pub->oab ?>/<?php echo $pub->uf_oab ?></div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">Status de Leitura</div>
                    <div class="di-val">
                        <?php if ($pub->lida): ?>
                        <span style="background:#e8f5e9;color:#1D6B3B;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:600">
                            <i class="fa fa-check-circle"></i> Lida
                        </span>
                        <?php if ($pub->lida_em): ?>
                        <br><small class="text-muted" style="font-size:11px"><?php echo date('d/m/Y H:i', strtotime($pub->lida_em)) ?></small>
                        <?php endif; ?>
                        <?php else: ?>
                        <span style="background:#ffebee;color:#C00000;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:600">
                            <i class="fa fa-envelope"></i> Não lida
                        </span>
                        <?php endif; ?>
                    </div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">Fonte</div>
                    <div class="di-val">
                        <span style="background:#f0f0f0;color:#555;padding:3px 10px;border-radius:10px;font-size:11px">
                            <i class="fa fa-envelope-o"></i> <?php echo ucfirst($pub->fonte ?? 'email') ?>
                        </span>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!-- Prazo resumido (lateral) -->
    <?php if ($prazo_dias): ?>
    <div class="box" style="border-top:3px solid <?php echo $prazo_vencido ? '#C00000' : ($dias_restantes <= 5 ? '#C55A11' : '#1D6B3B') ?>">
        <div class="box-header with-border">
            <h3 class="box-title"><i class="fa fa-clock-o"></i> Prazo Processual</h3>
        </div>
        <div class="box-body" style="padding:0">
            <div class="detalhe-grid" style="grid-template-columns:1fr">
                <div class="detalhe-item">
                    <div class="di-label">Prazo</div>
                    <div class="di-val"><?php echo ucfirst($prazo_texto) ?></div>
                </div>
                <?php if ($data_limite): ?>
                <div class="detalhe-item">
                    <div class="di-label">Data Limite</div>
                    <div class="di-val" style="font-size:16px;font-weight:700;color:<?php echo $prazo_vencido?'#C00000':($dias_restantes<=5?'#C55A11':'#1D6B3B') ?>">
                        <i class="fa fa-calendar"></i> <?php echo $data_limite ?>
                    </div>
                </div>
                <div class="detalhe-item">
                    <div class="di-label">Situação</div>
                    <div class="di-val">
                        <?php if ($prazo_vencido): ?>
                        <span style="background:#ffebee;color:#C00000;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:700">
                            ⚠️ Vencido há <?php echo abs($dias_restantes) ?> dia(s)
                        </span>
                        <?php elseif ($dias_restantes <= 5): ?>
                        <span style="background:#fff8e1;color:#C55A11;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:700">
                            ⚡ <?php echo $dias_restantes ?> dia(s) restante(s)
                        </span>
                        <?php else: ?>
                        <span style="background:#e8f5e9;color:#1D6B3B;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:700">
                            ✅ <?php echo $dias_restantes ?> dia(s) restante(s)
                        </span>
                        <?php endif; ?>
                    </div>
                </div>
                <?php endif; ?>
            </div>
        </div>
    </div>
    <?php endif; ?>

    <!-- Link PJe -->
    <?php if ($pub->link): ?>
    <a href="<?php echo $pub->link ?>" target="_blank" class="btn btn-primary btn-block" style="border-radius:10px;padding:12px;font-size:14px;font-weight:600;margin-bottom:8px">
        <i class="fa fa-external-link"></i> Abrir no Portal PJe
    </a>
    <?php endif; ?>
    <a href="<?php echo site_url('admin/diario_oficial') ?>" class="btn btn-default btn-block" style="border-radius:10px">
        <i class="fa fa-arrow-left"></i> Voltar à lista
    </a>

</div><!-- /col-md-4 -->
</div><!-- /row -->
</section>
