Template Name: Ajouter Carte / // Vérifier si l'utilisateur est connecté if (!is_user_logged_in()) { wp_redirect(wp_login_url(site_url('/ajouter-carte-client/') . '?' . $_SERVER['QUERY_STRING'])); exit; } // Récupérer les paramètres d'URL $departement = isset($_GET['dep']) ? sanitize_text_field($_GET['dep']) : ''; $type = isset($_GET['type']) ? sanitize_text_field($_GET['type']) : ''; if (!empty($departement) && !empty($type)) { // Vérifier si le fichier JSON existe $upload_dir = wp_upload_dir(); $json_path = $upload_dir['basedir'] . '/cartes/' . $departement . '_' . $type . '.json'; if (file_exists($json_path)) { // Récupérer l'ID utilisateur $user_id = get_current_user_id(); // Récupérer les cartes déjà achetées $cartes_achetees = get_user_meta($user_id, 'cartes_achetees', true); if (!is_array($cartes_achetees)) { $cartes_achetees = array(); } // Vérifier si cette carte est déjà achetée $carte_existe = false; foreach ($cartes_achetees as $carte) { if ($carte['dep'] == $departement && $carte['type'] == $type) { $carte_existe = true; break; } } if (!$carte_existe) { // Déterminer le nom de la carte $noms_cartes = [ 'champignons' => ‘Carte Champignons d\’exception’,
‘pins’ => ‘Carte Saveurs des forêts de pins’,
‘secrets’ => ‘Carte Secrets des forêts humides’,
‘forets’ => ‘Carte Trésors des grandes forêts’
];

$nom_carte = isset($noms_cartes[$type]) ? $noms_cartes[$type] :  »;

// Ajouter la carte
$cartes_achetees[] = array(
‘dep’ => $departement,
‘type’ => $type,
‘nom’ => $nom_carte,
‘date_achat’ => current_time(‘mysql’)
);

// Mettre à jour les données utilisateur
update_user_meta($user_id, ‘cartes_achetees’, $cartes_achetees);
}
}

// Rediriger vers la page « Se connecter »
wp_redirect(site_url(‘/se-connecter/’));
exit;
} else {
// Paramètres manquants, rediriger vers la page d’accueil
wp_redirect(home_url());
exit;
}
?>