836a70c0ab
It's clear from the Supporters.pm code that when an hold is attempted on an already held request, it simply returns the id of the existing hold. I don't actually remember what behavior I really wanted here. There are certainly possibility for semantic confusion in the API with the current functionality, since the API caller must actually check to verify if the hold they got is a new one or just an existing one. Perhaps this should be rethought. I left a comment in the test code for that reason. |
||
---|---|---|
scripts | ||
sql | ||
Supporters | ||
.gitignore | ||
AGPLv3 | ||
COPYRIGHT.md | ||
LICENSE.md | ||
README.md |
Mini Non-Profit Supporters and Donors Database
"Supporters" is a small donor database for non-profit fundraising that uses Ledger-CLI as a backend for accounting data.
While this system is used in production for Software Freedom Conservancy, the code is likely only appropriate if you plan to do a lot of work on the command-line. Eventually, the ideal would be to refactor CiviCRM to support the ideas and Ledger-CLI integration represented in this code.
Why Does This Exist?
Conservancy needed a simple donor database and could not invest the resources required to maintain a CiviCRM instance: most organizations that use CiviCRM either pay for hosting or devote some amount of staff time its maintenance. Conservancy could afford neither, but this weekend-hack version of a database suits our needs (at least for now).
License Information
See the file LICENSE.md for license information.
Common Tasks
These are recipes for some common tasks that one might want to complete on the command line with the Supporters database.
-
Add a Supporter from the command line: ./scripts/add-supporter.plx
-
Add an email address, or change the preferred email address: ./scripts/add-email-address.plx