<?php
/**
 * Marketing hub — links only when file exists on THIS server (fixes PDF 404 after partial deploy).
 */
declare(strict_types=1);

$root = __DIR__;
$pdfDir = $root . '/pdf';

function mkt_ok(string $rel): bool {
  global $root;
  $rel = ltrim(str_replace('\\', '/', $rel), '/');
  if (str_contains($rel, '..')) {
    return false;
  }
  return is_file($root . '/' . $rel);
}

function mkt_li(string $rel, string $label): string {
  if (!mkt_ok($rel)) {
    return '<li class="missing"><span>' . htmlspecialchars($label, ENT_QUOTES, 'UTF-8')
      . '</span> <em>(missing on server: ' . htmlspecialchars(basename($rel), ENT_QUOTES, 'UTF-8') . ')</em></li>';
  }
  $href = '/marketing/' . ltrim(str_replace('\\', '/', $rel), '/');
  return '<li><a href="' . htmlspecialchars($href, ENT_QUOTES, 'UTF-8') . '">'
    . htmlspecialchars($label, ENT_QUOTES, 'UTF-8') . '</a></li>';
}

$pdfCount = 0;
if (is_dir($pdfDir)) {
  foreach (glob($pdfDir . '/NC-A4-FLYER*.pdf') ?: [] as $p) {
    if (is_file($p) && !preg_match('/^test|-test\.pdf$/i', basename($p))) {
      $pdfCount++;
    }
  }
}
$htmlCount = count(glob($root . '/NC-A4-FLYER*.html') ?: []);

$sections = [
  ['Restaurant - color PDF', [
    ['pdf/NC-A4-FLYER-PRINT-COLOR.pdf', 'VI page 1 (color PDF)'],
    ['pdf/NC-A4-FLYER-P2-PRINT-COLOR.pdf', 'VI page 2 marketing (color PDF)'],
    ['pdf/NC-A4-FLYER-PRINT-COLOR-EN.pdf', 'EN page 1'],
    ['pdf/NC-A4-FLYER-P2-PRINT-COLOR-EN.pdf', 'EN page 2'],
    ['pdf/NC-A4-FLYER-PRINT-COLOR-ES.pdf', 'ES page 1 (OC / Mexico)'],
    ['pdf/NC-A4-FLYER-P2-PRINT-COLOR-ES.pdf', 'ES page 2'],
  ]],
  ['Restaurant - color HTML (Print to PDF in browser)', [
    ['NC-A4-FLYER-PRINT-COLOR.html', 'VI page 1 color HTML'],
    ['NC-A4-FLYER-P2-PRINT-COLOR.html', 'VI page 2 color HTML'],
    ['NC-A4-FLYER-PRINT-COLOR-EN.html', 'EN page 1 color HTML'],
    ['NC-A4-FLYER-P2-PRINT-COLOR-EN.html', 'EN page 2 color HTML'],
    ['NC-A4-FLYER-PRINT-COLOR-ES.html', 'ES page 1 color HTML'],
    ['NC-A4-FLYER-P2-PRINT-COLOR-ES.html', 'ES page 2 color HTML'],
  ]],
  ['Restaurant - B and W print (HTML)', [
    ['NC-A4-FLYER-PRINT-BW.html', 'VI page 1'],
    ['NC-A4-FLYER-P2-PRINT-BW.html', 'VI page 2'],
    ['NC-A4-FLYER-PRINT-BW-EN.html', 'EN page 1'],
    ['NC-A4-FLYER-P2-PRINT-BW-EN.html', 'EN page 2'],
    ['NC-A4-FLYER-PRINT-BW-ES.html', 'ES page 1'],
    ['NC-A4-FLYER-P2-PRINT-BW-ES.html', 'ES page 2'],
  ]],
  ['SMB - color PDF', [
    ['pdf/NC-A4-FLYER-SMB-PRINT-COLOR-EN.pdf', 'SMB EN page 1'],
    ['pdf/NC-A4-FLYER-SMB-P2-PRINT-COLOR-EN.pdf', 'SMB EN page 2'],
    ['pdf/NC-A4-FLYER-SMB-PRINT-COLOR-ES.pdf', 'SMB ES page 1'],
    ['pdf/NC-A4-FLYER-SMB-P2-PRINT-COLOR-ES.pdf', 'SMB ES page 2'],
  ]],
  ['SMB - color HTML (Print to PDF)', [
    ['NC-A4-FLYER-SMB-PRINT-COLOR-EN.html', 'SMB EN page 1 color HTML'],
    ['NC-A4-FLYER-SMB-PRINT-COLOR-ES.html', 'SMB ES page 1 color HTML'],
  ]],
  ['SMB - B and W / email (HTML)', [
    ['NC-A4-FLYER-SMB-PRINT-BW.html', 'SMB VI B and W'],
    ['NC-A4-FLYER-SMB-EMAIL-COLOR.html', 'SMB VI email color'],
    ['NC-A4-FLYER-SMB-PRINT-BW-EN.html', 'SMB EN B and W'],
    ['NC-A4-FLYER-SMB-PRINT-BW-ES.html', 'SMB ES B and W'],
  ]],
];

header('Content-Type: text/html; charset=utf-8');
?>
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>Name Century — Marketing flyers</title>
  <style>
    body { font-family: system-ui, sans-serif; max-width: 720px; margin: 24px auto; padding: 0 16px; line-height: 1.45; }
    h1 { font-size: 1.4rem; }
    h2 { font-size: 1rem; margin-top: 24px; color: #1877f2; }
    ul { padding-left: 20px; }
    li { margin: 6px 0; }
    a { color: #1877f2; font-weight: 600; }
    li.missing { color: #b42318; font-size: 0.9rem; }
    li.missing em { color: #65676b; font-weight: 400; font-style: normal; }
    .alert { background: #fff3cd; border: 1px solid #ffc107; padding: 12px; border-radius: 8px; margin: 12px 0; font-size: 0.9rem; }
    .ok { background: #e8f5e9; border: 1px solid #81c784; padding: 12px; border-radius: 8px; margin: 12px 0; font-size: 0.9rem; }
    .stats { font-size: 0.85rem; color: #65676b; }
  </style>
</head>
<body>
  <p><a href="/">← Home</a> · <a href="/index.php">GMC funnel</a></p>
  <h1>Name Century LLC — Marketing flyers</h1>
  <p class="stats">On this server: <strong><?php echo (int) $pdfCount; ?> PDF</strong>, <strong><?php echo (int) $htmlCount; ?> HTML</strong> files.</p>
  <?php if ($pdfCount === 0): ?>
  <div class="alert">
    <strong>PDF chưa có trên VPS.</strong> Các mục “color PDF” bên dưới sẽ đỏ cho đến khi upload
    <code>marketing/pdf/NC-A4-FLYER*.pdf</code>. Dùng tạm <strong>color HTML</strong> → mở trang → Ctrl+P → Save as PDF.
  </div>
  <?php else: ?>
  <div class="ok">PDF folder OK — links below should open.</div>
  <?php endif; ?>
  <?php foreach ($sections as [$title, $items]): ?>
  <h2><?php echo htmlspecialchars($title, ENT_QUOTES, 'UTF-8'); ?></h2>
  <ul>
    <?php foreach ($items as [$rel, $label]) {
      echo mkt_li($rel, $label);
    } ?>
  </ul>
  <?php endforeach; ?>
  <p class="stats">Deploy PDFs: <code>Upload-Marketing-Pdfs.ps1 -BreakGlass</code> in landing scripts folder.</p>
</body>
</html>
