site/docs/forms.md

24 lines
1.4 KiB
Markdown
Raw Normal View History

2018-04-18 18:13:57 +02:00
# Forms
2018-05-11 13:22:44 +02:00
We have multiple forms collecting and processing data throughout the whole site doing the following:
2018-04-18 18:13:57 +02:00
2018-05-11 13:22:44 +02:00
Form | Actions
------------ |-------------
`/newsletter` | send data to MailChimp and subscribe to newsletter list (double opt-in)
`/contact` | send data to CC emails, Slack message
`/cla` | 2 different forms, send data to CC emails
2018-04-18 18:13:57 +02:00
2018-05-11 13:22:44 +02:00
Initial form sending, except for newsletter, is handled via formspree.io with a Gold account. As form submissions arrive there, Formspree sends out the received data to the email addresses setup as CC in [our site config](../_config.yml).
2018-04-18 18:13:57 +02:00
Submissions are processed further like so:
_Formspree -> Zapier Email Parser -> Zapier -> Slack & Google Sheets_
2018-05-11 13:22:44 +02:00
The Zapier email parser is a special mailbox provided by Zapier which receives form submissions from Formspree, parses the content of those emails and extracts data fields out of it. The parser as a source then provides the structured data to our Zapier tasks.
2018-04-18 18:13:57 +02:00
2018-05-11 13:22:44 +02:00
The Slack message never contains personally identifiable information. Name and email are not transmitted.
## Newsletter
Newsletter submissions are sent directly to MailChimp via their undocumented `jsonp` functionality, NOT the MailChimp API. We use a local copy of [ajaxChimp](https://github.com/scdoshi/jquery-ajaxchimp) to send the data. Library is old and jQuery but it just works across a wide range of browsers, even older ones.