<?php
/**
 * Fichier  : logout.php
 * Auteur   : KREMER Régis
 * Version  : 2.6.10
 * Date     : 2026-02-21
 * Description : Déconnexion et destruction de session
 *
 * Changelog :
 *   v2.1.0 (2026-02-21) — Version initiale auditée et sécurisée
 *   v2.1.1 (2026-02-21) — Corrections sécurité (CSRF, MIME, session, migrateSuppliers)
 *   v2.2.0 (2026-02-21) — Permissions magasins, bons de commande, rapport d'écart,
 *                      import CSV, historique prix, bon de livraison multi-lignes
 *   v2.6.10 (2026-07-08) — Redirection logout portable via appUrl().
 */
// ================================================================
// MAGESTOCK — LOGOUT (safe redirect to login)
// Objet : déconnexion + redirection vers login sans chemin de dossier codé en dur.
// - évite d'atterrir sur api/auth.php (JSON "Action inconnue.")
// - ne dépend pas d'AJAX, fonctionne partout (desktop/mobile)
// ================================================================

require_once __DIR__.'/config.php';

startSession();

// Clear all session data
$_SESSION = [];

// Delete session cookie
if (ini_get('session.use_cookies')) {
    $params = session_get_cookie_params();
    setcookie(session_name(), '', time() - 42000,
        appCookiePath(),
        $params['domain'] ?? '',
        (bool)($params['secure'] ?? false),
        (bool)($params['httponly'] ?? true)
    );
}

// Destroy session
session_destroy();

// Optional: clear common remember/auth cookies if they exist
$maybeCookies = ['remember_token','auth_token','sm_token'];
foreach ($maybeCookies as $c) {
    if (isset($_COOKIE[$c])) {
        setcookie($c, '', time() - 42000, appCookiePath());
    }
}

// Redirect to login
header('Location: ' . appUrl('login'));
exit;
