Gérer le consentement programmatiquement
Ce chapitre vous apprendra comment gérer les consentements de notre widget de cookies programmatiquement.
Mis à jour
Ce contenu vous a-t-il été utile ?
Ce chapitre vous apprendra comment gérer les consentements de notre widget de cookies programmatiquement.
Mis à jour
Ce contenu vous a-t-il été utile ?
Ce contenu vous a-t-il été utile ?
L'intégralité de la preuve du consentement de l'utilisateur est stocké dans le localStorage du navigateur (La clé de stockage est nommée dastra-consents) au format json. La propagation des consentements en dépend, c'est pourquoi, il n'est pas recommandé de modifier directement les données de cette clé
Le service de consentement de dastra est accessible de cette façon
<script>
dastra = dastra || []
dastra.push(['cookieReady',function(manager){
console.log(manager.consent)
});
</script>
dans manager.consent, vous disposez des méthodes suivantes :
open() : ouvre le widget de consentement
close() : ferme le widget de consentement
getAllConsents() : récupère tous les consentements
getPurposeConsent(purposeId:number) : récupère le consentement d'une catégorie de cookies
setPurposeConsent(purposeId:number, consent:bool): définit le consentement pour une catégorie
getServiceConsent(serviceShortName:string): récupère le consentement d'un service particulier.
setServiceConsent(serviceShortName:string, consent:bool): définit le consentement d'un élément particulier
Une fois que vous accédez au manager de consentement, il est très aisé de récupérer les consentements de l'utilisateur courant :
<script>
dastra = dastra || []
dastra.push(['cookieReady', function(manager){
// Get the complete consent services list
var consents = manager.consent.getAllConsents()
});
</script>
La méthode ci-dessus renvoie la liste de tous les consentements de l'utilisateur
[
{
"id":"000000-0000000-000000",
"name": "Service name",
"purpose": 1,
"logoUrl": "https://logo-url/img.jpg",
"privacyPolicyUrl":"",
"description": "Short description",
"defaultConsent": true,
"requiredConsent":true
},
...
]
Les catégories de cookies sont représentés par les ids suivants :
Type
Id
Nécessaires
0
Préférences
1
Analytique
2
Marketing
3
Autre
4
<script>
dastra = dastra || []
dastra.push(['cookieReady',function(manager){
// Get the complete consent services list
let cookiePurpose = 2; // 2 = Analytic
let consents = manager.consent.getPurposeConsent(cookiePurpose);
manager.consent.setPurposeConsent(cookiePurpose, false);
// persist consent in cookies
manager.consent.save();
});
</script>
Pour manipuler les consentements par service, vous aurez besoin du nom simplifié du service disponible dans l'interface de gestion des services de votre widget.
<script>
dastra = dastra || []
dastra.push(['cookieReady',function(manager){
// Get the complete consent services list
let cookiePurpose = 'google-analytics'; // 2 = Analytic
let consents = manager.consent.getServiceConsent(cookiePurpose);
manager.consent.setServiceConsent(cookiePurpose, false);
// save consent in cookies
manager.consent.save();
});
</script>