Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cookies consent feature #982

Merged
merged 10 commits into from
Oct 10, 2023
Merged

Cookies consent feature #982

merged 10 commits into from
Oct 10, 2023

Conversation

dtrucs
Copy link
Collaborator

@dtrucs dtrucs commented Oct 6, 2023

If the application contains scripts that raise confidentiality issues, a modal window is displayed to request the user's consent.
The user can accept or revoke consent at any time.

Related to: Cookies / Ajout d'un message d'acceptation/refus #459

@dtrucs dtrucs requested a review from a team October 6, 2023 16:53
@babastienne
Copy link
Member

Ok @dtrucs c'est bon pour moi pour la documentation et la description des actions à réaliser pour être GDPR compliant.

Par contre j'ai testé en local sans réussir à reproduire :

  • Lorsque j'ajoute dans le global.json un id Google j'ai bien le bouton en bas de page Changer les préférences cookies qui apparaît mais c'est tout, si je clique dessus je n'ai rien et je n'ai pas non plus de pop-up de validation des cookies.
  • Idem s'il s'agit de scripts custom. J'ai le bouton mais la pop-up et validation. C'est comme si la lib orejime n'était pas importée sur mon env (alors que si, j'ai vérifié).

Je propose qu'on regarde sur mon poste Lundi, voir si je n'ai pas oublié qq chose en local. Mais sinon pour le reste tout est ok.

@camillemonchicourt
Copy link
Member

Moi j'avoue que j'ai regardé mais j'ai pas compris grand chose.
C'est un peu technique, non ?
Dans le ticket associé ça vaudra le coup d'expliquer, de dire quand il faut l'utiliser ou non (Google Analytics, Matomo...) et de donner quelques exemples classiques, genre pour Google Analytics.

@babastienne
Copy link
Member

babastienne commented Oct 7, 2023

Oui c'est technique. En fait c'est un sujet pas si simple et le proposer en "custo libre" dans Geotrek ça rajoute en complexité.

L'exemple utilisé dans la documentation permet de montrer comme ça peut être utilisé, par exemple pour Google Tag Manager. Mais ça peut être adapté pour n'importe quel script.

Ensuite pour google Analytics et Tag Manager pas besoin de faire quoi que ce soit, si l'utilisateur a mis son ID dans la custo alors la gestion des cookies et d'Orejime sera effectuée.

Matomo ne nécessite pas de validation des cookies car il y a une exemption, les cookies de Matomo respectant les directives de la CNIL sur le sujet.

Donc dans la majorité des cas pour les utilisateurs de Geotrek il n'y aura rien à faire :

  • si un script existe pour Matomo alors pas besoin de le modifier car il est exempté
  • si l'utilisateur utilise Google Analytics ou Tag Manager alors c'est géré automatiquement

Par contre si un territoire a décidé de configurer un script custom différent (pour des réservations, faire le café, de la mesure audience, des publicités ou n'importe quoi d'autre), qui stocke des cookies non exemptés de consentement, alors ce territoire devra en effet lire la doc pour adapter le script afin qu'il fonctionne bien avec Orejime et puisse être inclut dans le système de validation / refus de cookies.

Il y a juste un truc à bien garder en tête c'est que dans tous les cas il faut définir un privacyPolicyLink dans la custo pour pouvoir rediriger l'utilisateur vers des mentions légales (obligation légale pour être en conformité RGPD). S'il n'y a pas ce lien de défini pas de gestion des cookies avec Orejime.

@babastienne
Copy link
Member

@dtrucs j'ai trouvé mon problème (en rédigeant mon commentaire précédant j'ai compris) : je n'avais pas défini de privacyPolicyLink dans ma custo, ce qui explique pourquoi je n'avais pas de bandeau.

Par contre du coup il y a un problème selon moi : si on affiche pas le bandeau quand il n'y a pas de privacyPolicyLink défini alors on ne devrait pas non plus afficher le bouton Changer les préférences. Or actuellement il est affiché ➡️ à corriger

Copy link
Member

@babastienne babastienne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

voir mon commentaire précédent

@camillemonchicourt
Copy link
Member

OK donc si on utilise Google Analytics mais qu'on ne veut pas afficher de demande de consentement des cookies, alors on ne renseigne pas le paramètre "privacyPolicyLink" ?
En fait ce paramètre active ou non l'outil dans tous les cas ?
A préciser si c'est le cas ?

@babastienne
Copy link
Member

@camillemonchicourt oui c'est ça, ce paramètre active ou non l'outil de cookies. Pour moi c'est précisé ici : https://github.com/GeotrekCE/Geotrek-rando-v3/pull/982/files#diff-130c71169842ab605f14b6d69e64b3036161adbb567967518f78a13b254cf8aaR38

Après si aucun cookie n'est défini (pas de GA ni de script custom) mais que le paramètre est renseigné je suppose que ça n'affiche pas le bandeau de cookies (tu confirmes @dtrucs ?).

@dtrucs
Copy link
Collaborator Author

dtrucs commented Oct 9, 2023

Après si aucun cookie n'est défini (pas de GA ni de script custom) mais que le paramètre est renseigné je suppose que ça n'affiche pas le bandeau de cookies (tu confirmes @dtrucs ?).

Si GA est défini, ça génère un script custom comme les autres et concaténé avec les autres.

La modal est lancée automatiquement que si au moins un des scripts possède un attribut data-name et qu'il n'y a pas de cookie "orejime" enregistré dans le navigateur du client.

Copy link
Member

@mabhub mabhub left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dtrucs dtrucs changed the base branch from main to develop October 10, 2023 12:54
@dtrucs dtrucs merged commit 2695bbc into develop Oct 10, 2023
1 check passed
@camillemonchicourt camillemonchicourt deleted the GDPR-consent branch October 10, 2023 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants