' . 'ASPIC - Vérification' . '' . '

' . htmlspecialchars($texte) . '

' . ''; } $token = $_GET['token'] ?? ''; if ($token === '') { http_response_code(400); pageMessage('Lien de vérification invalide.'); exit; } $pdo = getDbConnection(); $stmt = $pdo->prepare( 'SELECT PSP_Incr, PSP_Prenom, PSP_Nom, PSP_Mail, PSP_CodeCampagne, PSP_TokenExpiration FROM ASP_Prospects WHERE PSP_TokenVerification = ? AND PSP_MailVerifie = 0 AND PSP_Actif = 1' ); $stmt->execute([$token]); $prospect = $stmt->fetch(); if (!$prospect) { pageMessage('Ce lien de vérification est invalide ou a déjà été utilisé.'); exit; } if (strtotime($prospect['PSP_TokenExpiration']) < time()) { pageMessage('Ce lien de vérification a expiré.'); exit; } $idProspect = (int) $prospect['PSP_Incr']; $codeCampagne = $prospect['PSP_CodeCampagne']; $pdo->prepare( 'UPDATE ASP_Prospects SET PSP_MailVerifie = 1, PSP_TokenVerification = NULL, PSP_TokenExpiration = NULL WHERE PSP_Incr = ?' )->execute([$idProspect]); journaliserOperation($idProspect, $codeCampagne . '-VAL'); // Envoi automatique de la doc par défaut de la campagne, si elle en a une de définie. $stmt = $pdo->prepare('SELECT CMP_Incr, CMP_DocDefaut FROM ASP_Campagnes WHERE CMP_CodeCampagne = ?'); $stmt->execute([$codeCampagne]); $campagne = $stmt->fetch(); if ($campagne && $campagne['CMP_DocDefaut']) { $idDoc = (int) $campagne['CMP_DocDefaut']; $idCampagneIncr = (int) $campagne['CMP_Incr']; $stmt = $pdo->prepare('SELECT DOC_Libelle FROM ASP_Docs WHERE DOC_Incr = ?'); $stmt->execute([$idDoc]); $doc = $stmt->fetch(); if ($doc) { $lien = genererLienDoc($idProspect, $idDoc, $idCampagneIncr); $envoiOk = envoyerMail($codeCampagne . '-DOC', $prospect['PSP_Mail'], [ 'Prenom' => $prospect['PSP_Prenom'], 'Nom' => $prospect['PSP_Nom'], 'Lien' => $lien, 'Titre' => $doc['DOC_Libelle'], ]); if ($envoiOk) { journaliserOperation($idProspect, $codeCampagne . '-DOC'); } else { error_log("ASPIC prospects: échec envoi mail de doc pour le prospect $idProspect"); } } } pageMessage('Merci, votre adresse mail est vérifiée ! Vous allez recevoir notre documentation très prochainement.');