<?php
require_once dirname(__DIR__) . '/inc/schema.php';
require_once __DIR__ . '/_layout.php';
init_schema();
$db = db();

$id = (int)($_GET['id'] ?? 0);
$flash = '';

// Enregistrement
if ($_SERVER['REQUEST_METHOD']==='POST' && csrf_check($_POST['csrf']??null)) {
    $titre = trim($_POST['titre'] ?? '');
    $contenu = trim($_POST['contenu'] ?? '');
    $auteur = trim($_POST['auteur'] ?? '');
    $typeId = (int)($_POST['type_soin_id'] ?? 0) ?: null;
    $statut = ($_POST['statut'] ?? 'brouillon')==='publie' ? 'publie' : 'brouillon';
    $metaTitre = trim($_POST['meta_titre'] ?? '');
    $metaDesc = trim($_POST['meta_desc'] ?? '');
    // Date : mois + année (stockée au 1er du mois). On conserve l'heure existante si la date ne change pas.
    $moisP = (int)($_POST['date_mois'] ?? 0);
    $anP   = (int)($_POST['date_annee'] ?? 0);
    $datePub = null;
    if ($moisP >= 1 && $moisP <= 12 && $anP >= 2000 && $anP <= (int)date('Y')+1) {
        $datePub = sprintf('%04d-%02d-01 12:00:00', $anP, $moisP);
    }
    if ($id) {
        if ($datePub) {
            $db->prepare("UPDATE temoignages SET titre=?,contenu=?,auteur=?,type_soin_id=?,statut=?,meta_titre=?,meta_desc=?,date_pub=? WHERE id=?")
               ->execute([$titre,$contenu,$auteur,$typeId,$statut,$metaTitre,$metaDesc,$datePub,$id]);
        } else {
            $db->prepare("UPDATE temoignages SET titre=?,contenu=?,auteur=?,type_soin_id=?,statut=?,meta_titre=?,meta_desc=? WHERE id=?")
               ->execute([$titre,$contenu,$auteur,$typeId,$statut,$metaTitre,$metaDesc,$id]);
        }
        $flash = 'Modifications enregistrées.';
    }
}

$st = $db->prepare('SELECT * FROM temoignages WHERE id=?');
$st->execute([$id]);
$t = $st->fetch();
if (!$t) { layout_start('Témoignage','temoignages'); echo '<div class="panel">Témoignage introuvable. <a href="temoignages.php">Retour</a></div>'; layout_end(); exit; }

$types = $db->query("SELECT id,nom FROM categories WHERE type='type_de_soins' ORDER BY nom")->fetchAll();
layout_start('Modifier : '.$t['titre'], 'temoignages');
$tok = csrf_token();
?>
<?php if($flash): ?><div class="panel" style="border-left:3px solid var(--ok)"><?= e($flash) ?>
  <a href="<?= SITE_URL ?>/temoignages/<?= e($t['slug']) ?>/" target="_blank" style="color:var(--blue);margin-left:1rem">Voir la page →</a>
</div><?php endif; ?>

<form method="post" class="panel">
  <input type="hidden" name="csrf" value="<?= e($tok) ?>">
  <div style="display:grid;grid-template-columns:1fr 300px;gap:2rem">
    <div>
      <label style="display:block;margin-bottom:1rem">
        <span style="display:block;font-size:.82rem;color:var(--ink2);margin-bottom:.3rem">Titre</span>
        <input type="text" name="titre" value="<?= e($t['titre']) ?>" style="width:100%;padding:.6rem;border:1px solid var(--line);border-radius:5px;font-size:1rem">
      </label>
      <label style="display:block;margin-bottom:1rem">
        <span style="display:block;font-size:.82rem;color:var(--ink2);margin-bottom:.3rem">Contenu (HTML autorisé)</span>
        <textarea name="contenu" rows="14" style="width:100%;padding:.6rem;border:1px solid var(--line);border-radius:5px;font-family:ui-monospace,monospace;font-size:.9rem"><?= e($t['contenu']) ?></textarea>
      </label>
      <label style="display:block">
        <span style="display:block;font-size:.82rem;color:var(--ink2);margin-bottom:.3rem">Signature / auteur</span>
        <input type="text" name="auteur" value="<?= e($t['auteur']) ?>" placeholder="Ex. : J.T (Québec)" style="width:100%;padding:.6rem;border:1px solid var(--line);border-radius:5px">
      </label>
    </div>
    <div>
      <div class="panel" style="margin:0 0 1rem;background:var(--bg)">
        <label style="display:block;margin-bottom:1rem">
          <span style="display:block;font-size:.82rem;color:var(--ink2);margin-bottom:.3rem">Statut</span>
          <select name="statut" style="width:100%;padding:.5rem;border:1px solid var(--line);border-radius:5px">
            <option value="publie" <?= $t['statut']==='publie'?'selected':'' ?>>Publié</option>
            <option value="brouillon" <?= $t['statut']==='brouillon'?'selected':'' ?>>Brouillon</option>
          </select>
        </label>
        <label style="display:block">
          <span style="display:block;font-size:.82rem;color:var(--ink2);margin-bottom:.3rem">Type de soin</span>
          <select name="type_soin_id" style="width:100%;padding:.5rem;border:1px solid var(--line);border-radius:5px">
            <option value="">— Aucun —</option>
            <?php foreach($types as $ty): ?>
              <option value="<?= (int)$ty['id'] ?>" <?= $t['type_soin_id']==$ty['id']?'selected':'' ?>><?= e($ty['nom']) ?></option>
            <?php endforeach; ?>
          </select>
        </label>
      </div>
      <div class="panel" style="margin:0 0 1rem;background:var(--bg)">
        <label style="display:block">
          <span style="display:block;font-size:.82rem;color:var(--ink2);margin-bottom:.3rem">Date du témoignage</span>
          <?php
            $tsCur = !empty($t['date_pub']) ? strtotime($t['date_pub']) : time();
            $moisCur = (int)date('n', $tsCur);
            $anCur   = (int)date('Y', $tsCur);
            $nomsMois = [1=>'janvier',2=>'février',3=>'mars',4=>'avril',5=>'mai',6=>'juin',7=>'juillet',8=>'août',9=>'septembre',10=>'octobre',11=>'novembre',12=>'décembre'];
          ?>
          <div style="display:flex;gap:.5rem">
            <select name="date_mois" style="flex:1;padding:.5rem;border:1px solid var(--line);border-radius:5px">
              <?php foreach($nomsMois as $mn=>$ml): ?>
                <option value="<?= $mn ?>" <?= $mn===$moisCur?'selected':'' ?>><?= $ml ?></option>
              <?php endforeach; ?>
            </select>
            <select name="date_annee" style="width:90px;padding:.5rem;border:1px solid var(--line);border-radius:5px">
              <?php for($y=(int)date('Y')+1;$y>=2010;$y--): ?>
                <option value="<?= $y ?>" <?= $y===$anCur?'selected':'' ?>><?= $y ?></option>
              <?php endfor; ?>
            </select>
          </div>
        </label>
      </div>
      <div class="panel" style="margin:0 0 1rem;background:var(--bg)">
        <div style="font-size:.82rem;color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.6rem">SEO</div>
        <label style="display:block;margin-bottom:.8rem">
          <span style="display:block;font-size:.8rem;color:var(--ink2);margin-bottom:.3rem">Méta-titre</span>
          <input type="text" name="meta_titre" value="<?= e($t['meta_titre']) ?>" style="width:100%;padding:.5rem;border:1px solid var(--line);border-radius:5px;font-size:.85rem">
        </label>
        <label style="display:block">
          <span style="display:block;font-size:.8rem;color:var(--ink2);margin-bottom:.3rem">Méta-description</span>
          <textarea name="meta_desc" rows="3" style="width:100%;padding:.5rem;border:1px solid var(--line);border-radius:5px;font-size:.85rem"><?= e($t['meta_desc']) ?></textarea>
        </label>
      </div>
      <button class="btn" style="width:100%">Enregistrer</button>
      <a href="temoignages.php" class="btn ghost sm" style="display:block;text-align:center;margin-top:.6rem">← Retour à la liste</a>
    </div>
  </div>
</form>
<?php layout_end(); ?>
