46 lines
2.8 KiB
PHP
46 lines
2.8 KiB
PHP
<?php
|
|
// /linkedin-posts-wave2.php — Preview wave 2 posts for validation
|
|
header("Content-Type: text/html; charset=utf-8");
|
|
$dir = "/opt/weval-l99/wiki/linkedin-posts-wave2";
|
|
$manifest = @json_decode(@file_get_contents("$dir/manifest.json"), true);
|
|
if (!$manifest) die("manifest not found");
|
|
?><!DOCTYPE html>
|
|
<html lang="fr"><head>
|
|
<meta charset="utf-8">
|
|
<title>WEVAL · LinkedIn Wave 2 Posts (preview)</title>
|
|
<script src="/widgets/audit-banner.js" defer></script>
|
|
<style>
|
|
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#0a0a0f;color:#e8e8f0;margin:0;padding:2rem;line-height:1.6;max-width:900px;margin:0 auto}
|
|
h1{font-size:2rem;background:linear-gradient(90deg,#1B6CA8,#7EDAB5);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.3rem}
|
|
.meta{color:#9090a8;font-size:.85rem;margin-bottom:2rem}
|
|
.post{background:#12132a;border:1px solid #2a2b4a;border-radius:12px;padding:1.4rem;margin-bottom:1.3rem}
|
|
.post-hdr{display:flex;gap:8px;margin-bottom:.8rem;flex-wrap:wrap}
|
|
.tag{background:#1B6CA8;color:#fff;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
|
|
.tag.acc{background:#7EDAB5;color:#0a0a0f}
|
|
.tag.w{background:#2a2b4a;color:#e8e8f0}
|
|
.body{white-space:pre-wrap;font-family:-apple-system,sans-serif;background:#0a0a0f;padding:1rem;border-radius:8px;border-left:3px solid #7EDAB5;font-size:.95rem}
|
|
.copy{background:#7EDAB5;color:#0a0a0f;padding:6px 14px;border-radius:6px;border:0;cursor:pointer;font-weight:700;margin-top:.6rem;font-size:.85rem}
|
|
.vars{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;background:#111;padding:1rem;border-radius:8px;margin-bottom:2rem;font-size:.75rem;font-family:monospace}
|
|
.vars div span{color:#7EDAB5}
|
|
</style></head><body>
|
|
<h1>LinkedIn Wave 2 · Posts Piliers</h1>
|
|
<div class="meta">Généré <?=htmlspecialchars($manifest["generated_at"])?> · Source: audit <?=htmlspecialchars($manifest["source"])?> · Posts : <?=count($manifest["posts"])?></div>
|
|
|
|
<div class="vars">
|
|
<?php foreach ($manifest["vars"] as $k => $v) echo "<div>$k = <span>" . htmlspecialchars($v) . "</span></div>"; ?>
|
|
</div>
|
|
|
|
<?php foreach ($manifest["posts"] as $i => $p): ?>
|
|
<div class="post">
|
|
<div class="post-hdr">
|
|
<span class="tag"><?=htmlspecialchars($p["pillar"])?></span>
|
|
<span class="tag acc"><?=htmlspecialchars($p["account"])?></span>
|
|
<span class="tag w"><?=htmlspecialchars($p["target_week"])?></span>
|
|
<span class="tag w"><?=htmlspecialchars($p["id"])?></span>
|
|
</div>
|
|
<div class="body" id="p<?=$i?>"><?=htmlspecialchars($p["body_rendered"])?></div>
|
|
<button class="copy" onclick="navigator.clipboard.writeText(document.getElementById('p<?=$i?>').innerText).then(()=>{this.textContent='✓ Copié'})">📋 Copier pour LinkedIn</button>
|
|
</div>
|
|
<?php endforeach; ?>
|
|
</body></html>
|