<?php
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
function regularlabs_php_d7a85d85930de72ec8797dd9b2f67dc6($rl_variables, $article, $module){
$app = $mainframe = RegularLabs\Library\Php::getApplication();
$document = $doc = RegularLabs\Library\Php::getDocument();
$database = $db = Joomla\CMS\Factory::getDbo();
$user = $app->getIdentity() ?: Joomla\CMS\Factory::getUser();
$Itemid = $app->getInput()->getInt('Itemid');
if (is_array($rl_variables)) {foreach ($rl_variables as $rl_key => $rl_value) {${$rl_key} = $rl_value;}}
// Importation des classes Joomla nécessaires


// Récupération de l'application Joomla
$app = Factory::getApplication();

// Extraction des paramètres de l'URL
$token = $app->input->getString('token', '');
$submissionId = $app->input->getInt('submissionId', 0);

// Vérification des paramètres obligatoires
if (empty($token) || empty($submissionId)) {
    echo 'Erreur : Paramètres manquants dans l\'URL.';
    exit;
}

// Connexion à la base de données
$db = Factory::getDbo();

// Construction de la requête SQL pour récupérer le token stocké
$query = $db->getQuery(true)
    ->select('x.FieldValue AS token, v.FieldValue AS inscription, s.DateSubmitted')
    ->from($db->quoteName('#__rsform_submissions', 's'))
    ->join('LEFT', $db->quoteName('#__rsform_submission_extras', 'x') . ' ON s.SubmissionId = x.SubmissionId')
    ->join('LEFT', $db->quoteName('#__rsform_submission_values', 'v') . ' ON s.SubmissionId = v.SubmissionId')
    ->where('s.SubmissionId = ' . $db->quote($submissionId))
    ->where('x.FieldName = ' . $db->quote('token'))
    ->where('v.FieldName = ' . $db->quote('inscription'));

// Exécution de la requête
$db->setQuery($query);
$result = $db->loadObject();

// Vérification des résultats de la requête
if (!$result) {
    echo 'Erreur : Soumission non trouvée.';
    exit;
}

// Affichage des informations de débogage (facultatif)
echo ' 
';
echo 'Token reçu : ' . $token . "\n";
echo 'Token stocké : ' . $result->token . "\n";
echo 'Longueur du token reçu : ' . strlen($token) . "\n";
echo 'Longueur du token stocké : ' . strlen($result->token) . "\n";
echo 'Abonnement : ' . $result->inscription . "\n";
echo 'Date de soumission : ' . $result->DateSubmitted . "\n";
echo ' 
';

// Comparaison des tokens
if ($token === $result->token) {
    echo 'Accès autorisé.';
} else {
    echo 'Accès refusé : Tokens ne correspondent pas.';
};  ;;
return get_defined_vars();
;}