Commit graph

440 commits

Author SHA1 Message Date
Bradley M. Kuhn
8f54ebb54c Big Postal Address Change — First steps toward new fields.
These are various changes to support the changes to the postal
address table to include split-out fields for parts of the address
instead of just the formatted_address field.  The changes herein are
not comprehensive to solve all the problems and issues associated
with this update, but they are enough changes to get most daily
operations with the database more-or-less working.
2022-12-16 11:36:15 -08:00
Bradley M. Kuhn
aab0b132b2 Return additional values on getPostalAddress 2022-12-08 08:12:43 -08:00
Bradley M. Kuhn
0219fc3dee Include notes in output of requests; better find output formatting 2022-11-21 17:31:34 -08:00
Bradley M. Kuhn
ca8348d84b Rework various aspects of shirt label printing
The primary change here is to add output such that we can get CSV
output that can be later used in post-processing to upload the data
to  third-party shipping services.

Various other changes are present as well, including changes to the
logic related to which t-shirt to give when no specific type is
requested.
2022-11-21 17:31:17 -08:00
Bradley M. Kuhn
4a6ad06ebb Switch to using entity instead of donor_name in views.
This is less confusing because `entity` is used elsewhere.
2022-11-21 17:31:07 -08:00
Bradley M. Kuhn
3fa1f004d3 Two new views and related triggers for email/post address insert
UserOperation_add_postal_for_donor_with_none, UserOperation_email_add_when_none
2022-11-21 15:25:00 -08:00
Bradley M. Kuhn
d0b7f15f2a Insert operation for UserOperation_donor_update view 2022-11-21 15:24:27 -08:00
Bradley M. Kuhn
225eb13674 Add trigger to allow update of notes as well on contact_settings. 2022-11-21 11:39:23 -08:00
Bradley M. Kuhn
deb31e9c18 Use OLD.donor_id, as NEW.donor_id will actually be NULL probably. 2022-11-21 11:39:05 -08:00
Bradley M. Kuhn
d505f69f00 Add new style as an option for t-shirts. 2022-11-13 15:01:31 -08:00
Bradley M. Kuhn
9f79b490f6 Rename semi-temporary table so that it is at the end asciibetically
_temp_request_configuration_change ⇒ zz__temp_request_configuration_change);
2022-11-10 19:39:10 -08:00
Bradley M. Kuhn
07f0b6aad6 update_postal_address_is_invalid — trigger: postal_address(invalid) 2022-11-10 19:38:18 -08:00
Bradley M. Kuhn
549df60002 UserOperation_contact_setting_change — finish implementation. 2022-11-10 19:10:28 -08:00
Bradley M. Kuhn
42c27893f7 update ⇒ UPDATE — casing fix only, no substantive change. 2022-11-10 16:09:04 -08:00
Bradley M. Kuhn
3d5773eb16 UserQuery_contact_settings — rename view to begin with UserQuery 2022-11-10 16:07:46 -08:00
Bradley M. Kuhn
a4011ec1e3 UserOperation_postal_address_change — view to change postal address
Using this view in `sqlitebrowser`, a user can make GUI-based changes
to the postal addresses for Supporters and maintain database
integrity.
2022-11-10 16:06:38 -08:00
Bradley M. Kuhn
eeb5689212 View UserOperation_contact_setting_change: initial implementation 2022-06-22 14:47:19 -07:00
Bradley M. Kuhn
72f2b5aebd Implement UserOperation_donor_update view and its triggers
Note my comment that the error messages don't work properly on NULL
values.  I once in my life spent years wondering about how to handle
three-valued logic problems in SQL.  I thought that part of my life
was apparently over, but I guess not.  🤷
2022-06-22 10:53:05 -07:00
Bradley M. Kuhn
fe0cda3232 Change name of table as we'll use it for other views too. 2022-06-22 10:15:37 -07:00
Bradley M. Kuhn
e7bdf7db27 UserOperation_fix_tshirt_size_request view: first implementation
The `UserOperation_fix_tshirt_size_request` view is designed to allow
end-users edit t-shirt sizes in the request using a program like
`sqlitebrowser`.

This is the first implementation attempt of a user operation that
allows changing the T-Shirt size.
2022-06-21 13:58:21 -07:00
Bradley M. Kuhn
cc1aee90d8 No Changes file is included in this library; remove from MANIFEST 2022-06-21 13:57:29 -07:00
Bradley M. Kuhn
ed0408840a Note that preferred email address is only when asked for. 2022-06-21 11:05:55 -07:00
Bradley M. Kuhn
71c0bd28aa This is still is required; search by ID seems still broken. 2022-06-21 10:43:44 -07:00
Bradley M. Kuhn
bdd100540a Versions as used for the last time we sent t-shirts. 2022-06-21 10:15:56 -07:00
Bradley M. Kuhn
10e68afa95 Version as used for the postcard. 2022-06-21 10:15:34 -07:00
Bradley M. Kuhn
284d5889b1 add utf8 support 2022-06-21 10:15:00 -07:00
Bradley M. Kuhn
96d75986f2 Also ask for who 2022-06-21 10:14:49 -07:00
Bradley M. Kuhn
c2b01e6d97 Fix bug where it prints out every single entry when criterion wrong 2022-06-21 10:14:26 -07:00
Bradley M. Kuhn
022a41c131 More verbose output for requests and postal addresses. 2022-06-21 10:10:26 -07:00
Bradley M. Kuhn
fe4aa69763 Add ticket number as an option. 2022-06-21 10:09:41 -07:00
Bradley M. Kuhn
f6b0ac1903 Add field for invalid postal addresses 2022-06-21 10:09:27 -07:00
Bradley M. Kuhn
aece96946d Allow search by Supporter only. 2022-06-21 10:08:25 -07:00
Bradley M. Kuhn
36c1d11d1f Include Carp 2022-06-21 10:08:00 -07:00
Bradley M. Kuhn
ed4a2c1aea Correct function call; this is not a variable! 2022-06-21 10:07:45 -07:00
Bradley M. Kuhn
3d83a8e546 Add id as part of return for postalAddress addition. 2022-06-21 09:58:57 -07:00
Bradley M. Kuhn
6d143082de Add method: getBestPostalAddress 2022-06-21 09:55:37 -07:00
Bradley M. Kuhn
391fb0d3f2 support is_supporter setting, add findSupporter method. 2021-04-18 15:29:48 -07:00
Bradley M. Kuhn
fdf58bb729 fulfillFailure: fix reason message to include more data; add who
'who' is now a possible parameter, but default it the old way so it's
not mandatory, and improve the reason message on failures.
2021-02-20 13:02:49 -08:00
Bradley M. Kuhn
839799beac Various improvements to mass supporter email script.
These were an omnibus set of changes that I made during the FY 2020
fundraising season.  Changes include:

  * support BeanCount for query of amounts given.
  * better UTF-8 support
  * use variable for the total groups
  * use postal address to see if someone is USA based
  * commented out code for annual renewal notice, we may want that later
  * Include supporter id and rt ticket in output

Note that for each mailing, the groups code is still modified by hand
here.
2021-02-17 10:45:33 -08:00
Bradley M. Kuhn
a1ade5c8fa Print date postal address was encountered. 2021-02-17 10:43:40 -08:00
Bradley M. Kuhn
b16b4661ab Improve UTF-8-ness on a few scripts. 2021-02-17 10:43:26 -08:00
Bradley M. Kuhn
16ce9f4bf1 addPostalAddress: additional argument to set date_encountered 2021-02-11 11:58:55 -08:00
Bradley M. Kuhn
9a54b77881 Display RT ticket for find supporter. 2021-02-10 14:25:40 -08:00
Bradley M. Kuhn
60260bd59c Supporters db: add rt_ticket field. 2021-01-13 12:04:05 -08:00
Bradley M. Kuhn
36592c9747 Correct typo in error message. 2020-12-22 16:31:52 -08:00
Bradley M. Kuhn
0c477cf4da Convert to work with Beancount; constructor takes a filehandle now
The output format for donations changed slightly when we switched to
Beancount at Conservancy from Ledger CLI.  This change now assumes a
specific format of the output for the donations, and takes a
filehandle in the constructor to receive the data.

As such, this effectively makes it slightly less dependent on any
specific donation database, since as long as you can get it into the
format the regex herein expects onto a filehandle, it doesn't matter
what system you use underneath.
2020-12-22 16:31:37 -08:00
Bradley M. Kuhn
81352e70b4 Convert to allow command line options instead of prompting.
Prompting code is left in place however if CLI options aren't given.

Also, added a check to verify supporter id is valid.
2020-12-22 16:25:50 -08:00
Bradley M. Kuhn
8dbc9b2ec6 Actually I think I want a slightly longer sleep.
This should be a command line option.
2019-12-24 09:24:15 -08:00
Bradley M. Kuhn
5cc57f451e Changes for our groups in mailing 3 FY 2019. 2019-12-24 09:23:33 -08:00
Bradley M. Kuhn
8985765760 Operate in utf8 for STDOUT. 2019-12-24 09:23:15 -08:00