Comments (3)
@tttp I misunderstood the issue - deleting previous comment.
Can we use "recipient" instaed of "target"? It's not even about the militarist wording but target can be misleading in contexts.
We could have such action Indeed, and it seems similar to the "open letter" action where NGO's or other subjects could support the cause.
It differs from a signature in that
- it can be negative (I oppose),
- It can be updated
- The contact details can be whitelisted (as you said – when uploading the MEP list), but it could be also open, perhaps with different contact details (open letter case - you provide Org name, representative, maybe an office/website address or a logo url, etc)
I would decouple:
- contact type (person vs politican vs org)
- open vs predefined
- pledge updating (this problem is similar to deduping of signatures - if more then one pledges are done and confirmed, the last one should win)
- confirmation (this is same as with double opt in, but with custom email template)
We can add an addPledge
API mutation that has an action: key with support: Boolean!
and comment: String
and custom fields;
I wonder if the contact:
object passed should have an optional external_id
field that would select an existing contact by external_id
from contacts created for this action page (the list of MEPs)
What do you think ?
from proca.
-
contact type
I think we are nearly there already, it's either a custom field or using the name field for that?
but might be worth adding the contact type explicitly indeed (eg if one open letter can be signed both as an org and an individual) -
I love your idea of using an external app to define/upload that list of predefined !
The campaigners I know are way more into google sheet than airtable, but may be we can get them to put sane column names and fetch it?
and I think we need a way to pre-load the pledge status (eg I know that all the greens MPs already committed to vote on X...or I collected some support already on paper, or...). Possibly as simple as having a support extra column?
and you are right: recipient rather than target, and that there is an overlap with "open letter"
- pledge updating
can we assume the external id is unique? (if not, no idea how we can do lookup and stuff ;)
in that case, we can store it into the hash/unique key (campaign/action), and have a new dedupe rule
- confirmation/double opt-in.
I'd love to find a way to push it outside of proca as an external service, but it seems that kind of feature is kind of mandatory to a lot (defined by more than one) of use cases ;(
from proca.
Revisiting:
I don't think an assistant or MEP will ever go record their position without receiving a (or a lot of) emails from us.
so we can add a link to the email with a uuid/token and use that to validate automatically the source of the action
and in the odd chance the email containing the link was forwarded and used by the wrong person: we send a thank-you email to the mep email address, with a "action not taken by you?" click here to change your recorded position...
from proca.
Related Issues (20)
- moving to craco, upgrade webpack HOT 7
- utm shortcut
- replaceAll polyfill HOT 1
- Change progress keys based on action type HOT 1
- handle snowflake for twitter
- handle bin/templates to create html for each language of the campaign HOT 1
- add a intro + readmore component HOT 1
- proca-cli action:replay doesn't handle "since"
- Extracting default email strings should be improved HOT 1
- change the format of the birthdate
- No split consent for coordinator
- fetch all campaigns and widgets for an org
- fetch detail by contactRef uuid? HOT 2
- clarify the error message
- share from email
- handle matomo parameters
- Target not shown on Twitter step
- subject and body not filled when client based mtt HOT 1
- allow cross step snackbar
- No confirm action alert HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from proca.