Developed a resusable component to capture user's consent across all forms on Slack.com, starting with the Contact Sales form.
Once Slack was acquired by Salesforce, we needed to update our logic for privacy policy and marketing consent to reflect what Salesforce's forms used and what regions they served.
Three distinct groups needed to be considered as part of the logic for this new reusable component that could then be plugged into any form.
I used Hack for both the frontend and backend development of this new component and vanilla JavaScript for dynamically changing the form field's visibility.
The logic was decided by the country the user selected.
I first implemented this in the contact sales form, which I initially developed and is one of the most popular lead generation sources on Slack.com.
The user's consent data also had to be piped into Salesforce to be processed and routed correctly.
Below is a sample of the spreadsheet that I was given showing a mapping of the countries' consent requirements.
This conditional consent country data was stored in a library on the backend that the frontend could then read.
No prior consent is required for processing and/or marketing. Applied to most countries.
Prior consent is required for marketing. Applied to countries with more robust privacy consent laws.
Prior consent is required for processing the data and/or marketing. This only applies to Japan.
Slightly trickier to test since the checkbox for processing the data had to be checked to submit.