Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

les snippets sont volontairement gardés au plus simple (pas de contrôle d’erreur, de gestion des sessions etc … ).

Contenu de cette documentation :

Table of Contents
maxLevel3

Principe de fonctionnement

...

Code Block
breakoutModewide
languagephp
function getFormUrl($uuid, $email, $token)
{
    $api_url = "https://core.fairandsmart.com/api";
    $organisation_id = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
    $model_id_or_alias = "YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY";
    
    $host = $_SERVER['HTTP_HOST'];
    $port = "";
    $proto = isset($_SERVER['HTTPS']) ? "https" : "http";

    $email = in_array($email, explode(',', $config["authorized_emails"]))
?
$email : null;     $context = [
        "userid" => $uuid,
        "country" => "FR",
        "language" => "fr",
        "optoutEmail" => $email,
        "optoutEmailLink" => "https://mon-site/consentement",
    ];

    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $api_url . "/organisations/" . $organisation_id . "/consents/" . $model_id_or_alias . "/endpoint");
    curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($context));
    curl_setopt($curl, CURLOPT_HTTPHEADER, array("Authorization: Bearer $token", "Content-Type: application/json"));
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($curl);
    curl_close($curl);
}

...

Le code des méthodes getUserId(), getUserEmail(), getToken() n’est pas explicité, mais peut par exemple récupérer les paramètres dans l’URL ($_GET), dans la session ($_SESSION), etc …

Code source

Retrouvez une version plus complète de ce code sur github : https://github.com/fairandsmart/consent-iframe-integration-test

Pour aller plus loin

Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@10041
sortmodified
showSpacefalse
reversetrue
typepage
cqllabel in ( "modèles" , "consentements" , "configuration" ) and type = "page" and space = "BDC"
labelsconsentements modèles configuration