Releases: IABTechLab/cmp
Releases · IABTechLab/cmp
Thin footer, consent passing, bugfixes
Features:
getConfig()
CMP callback function. Returns an object with the current configuration parameters."thin"
is a new configuration option for the layout. This option removes the header text and ignores logoUrls in favor of rendering in a much smaller footprint.
Fixes:
- User dictionaries were not loading unless the config option
forceLocale
was used at the same time. This has been fixed so that publishers do not have to specify a forced locale in order to load custom verbiage. - Custom purposes were not being rendered on the introduction screen sliders.
Other:
- Checked in the AWS Lambda function code for our serverless consent-passing service. The spec can be found here: https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework/blob/master/URL-based%20Consent%20Passing_%20Framework%20Guidance.md
Digitrust redirects, blockBrowsing, accept all language
Changes:
- Add configuration option; redirect through Digitrust in order to set Digitrust ID of end user
- Change wording of the Accept All button on the introduction screen (change in English only at the moment)
- Add configuration option; allows publishers to configure whether or not they want the CMP to be able to block page interaction while the CMP is up
Example configuration usage:
digitrust: {
redirects: true|false // (false by default)
},
blockBrowsing: true|false // (true by default)
CSS fix for scrollbars appearing on Windows machines
Fixes:
- Change overflow from always showing scrollbars to only showing scrollbars when needed.
- Add margin bottom to the intro top section to ensure no collision with the footer.
CSS fix for CMPs without logos
Customizable CSS, Logo url
New Features:
- Support for css color and font options in the config object
- Support for a logo url in the config object
Example configuation:
layout: "footer",
showFooterAfterSubmit: true,
logoUrl: "https://www.example.com/image.png",
css: {
"color-primary": "#0a82be",
"color-secondary": "#eaeaea",
"color-border": "#eaeaea",
"color-background": "#ffffff",
"color-text-primary": "#333333",
"color-text-secondary": "#0a82be",
"color-linkColor": "#0a82be",
"color-table-background": "#f7f7f7",
"font-family": "'Noto Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif",
"custom-font-url": "https://fonts.googleapis.com/css?family=Noto+Sans",
},
Things to note:
- When using the "footer" style instead of the modal intro screen; the image is forced to be a square shape.
- A custom font url must have the "font-family" css specified to take effect.
- A small change to the configuration file behavior: the publisher can specify as few keys as they would like with regards to the
css
andrepromptOptions
config fields. Before, they would have had to supply values for every key in the object.
Fix "fullConsentGiven" not working in CMP
- Bugfix for
getConsentsCount
that was affecting the reprompting logic and causing the "fullConsentGiven" option to not be respected. #108
Feature/purpose localization, cookie banner style intro
Features:
- "Cookie banner" style introduction page (opens up to full modal when "Learn more" is clicked)
- Fetching localized purpose and feature lists in user's consent language (if available)
- Add gdprInScope CMP command so the caller can tell exactly when and why the CMP was either shown or not shown
Fixes:
- Fix for the metadata field in the getVendorConsents CMP command
- Bugfixes for the command queue and errors being thrown if the scripts are included in the head of the HTML
- Update pubconsent cookie to be compliant with the IAB specification
- Updated documentation for how to queue commands up for publishers using the "cmp.complete.bundle.js" bundle
New config option:
layout: "footer"
If the publisher wants to use the cookie-banner style introduction instead of the modal, they should include this in their config. If they would like to use the standard modal style, then they do not need to specify any layout configuration.
New CMP commands:
(no arguments are needed for either of these commands to work)
gdprInScope
returns an object that has information as to these five things:
- Has the cmp been shown yet? (if there's a cookie already and the cmp doesn't need to show, this will be false)
- Has consent been submitted?
- Is the CMP setup to always show regardless of location/language?
- Is the CMP showing because of language?
- Is the CMP showing because of location?
decodeMetadata
decodes the metadata string from the getVendorConsents
command.
v1.0.1 Bugfixes
- Fix CmpID
- Field misspelling on pubconsent cookie
- Fix communication with global consent portal
- Add Switzerland to countries list
- Fix font loading
- Flesh out custom purposes example
v1.0.0 - First release, MVP
Merge pull request #86 from digi-trust/master v1.0.1 Bugfixes