This project is not covered by Drupal’s security advisory policy.

Consent Validator adds a consent checkbox to the webforms you choose, and keeps a record of every consent given: who agreed, to which text, on which webform and when. Use it for the consent that privacy laws such as the GDPR ask for before you process personal data.

Features

  • Choose the webforms that ask for consent, from one settings page.
  • Your own consent text, with a link to your privacy policy, an optional text under the checkbox, and your own error message.
  • Where visitors see it: above the submit button, marked as required.
  • Works with every kind of webform: drafts, "Previous" and the pages of multi-page webforms work without consent; the checkbox appears on the page with the submit button. Editing a submission does not ask again.
  • Proof of consent: the webform, the submission, the user, the date and the exact text agreed to are stored with each submission. The IP address can be recorded too.
  • Consent records report, filtered by webform, with a CSV export.
  • Kept tidy: records are deleted with their submission or webform, and detached from users who are deleted.
  • Safe: the consent text allows only a few HTML tags, and the records are only visible with their own permission.

Requirements

  • Drupal 10.3 or later, or Drupal 11.
  • Webform 6.2 or later.

Installation

Install as you would normally install a contributed Drupal module. For further information, see Installing Drupal Modules.

composer require drupal/consent_validator
drush pm:enable consent_validator

Configuration

  1. At People » Permissions, give:
    • Administer Consent Validator to the roles that choose the webforms and the text;
    • View consent records to the roles that may see and download the records. They hold personal data: give it to trusted roles only.
  2. At Configuration » Content authoring » Consent Validator (/admin/config/content/consent-validator), choose:
    • the webforms that ask for consent;
    • the consent text, for example I agree to the <a href="/privacy">privacy policy</a>.
    • an optional text under the checkbox, and the error message;
    • whether to record consent, and the IP address.

Consent records

Under Reports » Consent records (/admin/reports/consent-records), see who gave consent, filter by webform, and download the records as CSV. Each record keeps the consent text as it was shown, so it remains valid proof when you change the text later.

Upgrading from 1.0

Run drush updatedb. The chosen webforms are kept, and so is the text of 1.0, "Check to validate."; change it in the settings to tell visitors what they agree to. Consent is recorded from then on.

Support

Report bugs and request features in the issue queue.

Supporting organizations: 

Project information

  • caution Minimally maintained
    Maintainers monitor issues, but fast responses are not guaranteed.
  • caution Maintenance fixes only
    Considered feature-complete by its maintainers.
  • Created by chaitanyadessai on , updated
  • shield alertThis project is not covered by the security advisory policy.
    Use at your own risk! It may have publicly disclosed vulnerabilities.

Releases