Skip to content

Proposal: Privacy-specific changes to the footer #840

@carlesandres

Description

@carlesandres

The problem

As the privacy team we were recently required to show a variation of our footer to California users only, as demanded by the new privacy legislation that applies to them (CCPA).

The current solution

In order to avoid splitting the CDN caches further, the approach we took was to keep rendering the existing version of the footer from the server, and to make the necessary alterations for California users in the client.*

We implemented this change directly on next-front-page as a way to ensure we would meet the basic requirements by the hard deadline of 1st July, imposed by CCPA.

The proposed solution

We are now being asked to make a different change to the footer for California users.

Considering we are expecting new privacy laws to come out in the future, which will likely need their own links or wording in the footer, we are proposing:

  1. Keep the code to dynamically modify the footer in a new package that lives under the privacy monorepo, so that all the privacy-specific business logic is contained where it makes sense.
  2. Import this module within dotcom-ui-footer so that it’s brought to all of dotcom footers consistently and test-ably

We are seeking feedback from Platforms team and anyone else interested on this approach to make sure it's aligned with the overall dotcom architecture.


*

Detecting the privacy legislation that applies to a user is also done client-side by querying the new https://privacy.ft.com/api/v1/compliance-region.json endpoint.

We currently check the user compliance region and alter the footer after most other JS has run on the page, since the it takes usually a few seconds for a user to scroll to the footer.

All this functionality is currently behind the privShowCCPALinkOnFooter flag and only being applied to the homepage.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions