<?php
// ============================================================
//  Footer newsletter signup handler
// ============================================================
//
//  Flow:
//    1. Validate the email
//    2. Upsert into Mailchimp with the 'Newsletter Signup' tag
//    3. Trigger the newsletter welcome journey
//       (Mailchimp sends the welcome email — not us)
//    4. Log + redirect back
//
// ============================================================

require __DIR__ . '/includes/mailchimp.php';

if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    header('Location: index.php');
    exit;
}

$email = trim($_POST['email'] ?? '');
$referer = $_SERVER['HTTP_REFERER'] ?? 'index.php';

if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    header('Location: ' . $referer);
    exit;
}

// --- Mailchimp: upsert + tag + welcome journey ---
$mc_ok = mc_upsert_member($email, [], ['Newsletter Signup'], 'subscribed');
mc_trigger_journey(MC_JOURNEY_NEWSLETTER, $email);

mc_log("Newsletter signup: $email (mc=" . ($mc_ok ? 'ok' : 'fail') . ")");

// Redirect back with a success flag on the querystring
$sep = strpos($referer, '?') === false ? '?' : '&';
header('Location: ' . $referer . $sep . 'newsletter=ok');
exit;