According to GDPR rules if you change something in the cookie policy, users must review those changes and accept it again.
One solution could be to introduce a version field in the administration after the Privacy policy link and set a cookie with the accepted version. This way we can check if there is a newer version of the Privacy policy.
If anyone done this so far please upload the solution. (If not, I will try to implement this in the future)

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

klevyke created an issue. See original summary.

svenryen’s picture

If you need to ask consent again, you can change the name of the cookie (under advanced). This will result in all users seeing the banner again.

svenryen’s picture

Status: Active » Closed (works as designed)
L_VanDamme’s picture

Assigned: Unassigned » L_VanDamme
Status: Closed (works as designed) » Active

Reopening this ticket as I agree with the initial request.

Changing the cookie name will not always be an optimal solution as this might require reconfiguring third parties like Google Tag Manager.

L_VanDamme’s picture

Version: 7.x-1.x-dev » 8.x-1.x-dev
svenryen’s picture

Priority: Normal » Major

This could indeed be something worth looking into. I'm bumping priority to Major.

Grayle’s picture

D7 patch. Based on version. Admins can change the version to reshow the popup.
Won't trigger a reshow when updating to this version, so as not to needlessly show the popup.

Going to start on the D8 patch now.

Grayle’s picture

D8 patch

Grayle’s picture

Updated D7 patch to make version field required, to match D8 patch.

svenryen’s picture

Here's some feedback. Applies to both D7 and D8:

Looks good. Here's some feedback. I haven't applied the patch, will do that once these items have been resolved.

  1. +++ b/eu_cookie_compliance.module
    @@ -312,6 +312,7 @@ function eu_cookie_compliance_page_attachments(&$attachments) {
    +      'version'              => $config->get('version') ?: '0.0.1',
    

    Why is version 0.0.1 by default? Wouldn't it make more sense if it was 1.0.0? And I think we should label the new value 'cookie_policy_version'

  2. +++ b/js/eu_cookie_compliance.js
    @@ -706,6 +722,34 @@
    +    var cookieName = 'eu_cookie_compliance_version';
    

    Do we want the cookie name to reflect the base name that the module uses?

  3. +++ b/src/Form/EuCookieComplianceConfigForm.php
    @@ -964,6 +964,21 @@ class EuCookieComplianceConfigForm extends ConfigFormBase {
    +      '#title' => t('EUCC Settings Version'),
    

    This title uses abbreviation, could that confuse some users? It would be better to spell the name out fully. Though here we don't need to repeat EUCC, I suggest using "Privacy policy version" since it better reflects the nature of this setting.

  4. +++ b/src/Form/EuCookieComplianceConfigForm.php
    @@ -964,6 +964,21 @@ class EuCookieComplianceConfigForm extends ConfigFormBase {
    +      '#description' => t('Change this value to show the popup again for all users that have already accepted a previous version of these settings.'),
    

    I feel we need a native Englishman to help us with a short and concise sentence. The best I can come up with is "Change this value to make the cookie information banner reappear for all visitors. A typical usage of this field is to increase the value when the privacy policy has been changed."

  5. +++ b/src/Form/EuCookieComplianceConfigForm.php
    @@ -964,6 +964,21 @@ class EuCookieComplianceConfigForm extends ConfigFormBase {
    +      '#default_value' => $config->get('version') ?: '0.0.1',
    

    Check the version number here as well.

  6. +++ b/src/Form/EuCookieComplianceConfigForm.php
    @@ -1050,6 +1065,7 @@ class EuCookieComplianceConfigForm extends ConfigFormBase {
    +      ->set('version', $form_state->getValue('version'))
    

    cookie_policy_version would be a better name.

  7. We also need install and schema updates, plus an update hook to initialize the new variable with the value 1.0.0. For D7 we also need to initialize the variable for i18n and domain_access.
Grayle’s picture

Updated D8 patch

Grayle’s picture

Forgot to replace an instance of the old 'version' field in the javascript file.

Grayle’s picture

Jesus. This is why you don't work on an empty stomach.

Grayle’s picture

Grayle’s picture

Status: Active » Needs review

The last submitted patch, 13: D8.2987584.terms-version-change.13.patch, failed testing. View results
- codesniffer_fixes.patch Interdiff of automated coding standards fixes only.

svenryen’s picture

Assigned: L_VanDamme » Grayle

  • Grayle authored 5593689 on 8.x-1.x
    Issue #2987584 by Grayle: Terms version change (GDPR regulation)
    

  • Grayle authored b027e30 on 7.x-1.x
    Issue #2987584 by Grayle, svenryen, L_VanDamme, klevyke: Terms version...
svenryen’s picture

Status: Needs review » Fixed

Thanks for the contribution!

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.