Bradley M. Kuhn
522df6bbfa
add display_name to outgoing email.
...
In an effort to improve the formatting on outgoing emails from the
renewal script, add the display_name to the To: field.
I'm not completely happy with what the MIME encoding is doing here.
Specifically, it chops the line on the < of <email@example.org> so you
get this:
"A very long name that leads to wrapping of the MIME encoded line" <
email@example.org>
As I read https://www.ietf.org/rfc/rfc2822.txt , it violates this SHOULD:
Note: Though structured field bodies are defined in such a way that
folding can take place between many of the lexical tokens (and even
within some of the lexical tokens), folding SHOULD be limited to
placing the CRLF at higher-level syntactic breaks. For instance, if
a field body is defined as comma-separated values, it is recommended
that folding occur after the comma separating the structured items
in preference to other places where the field could be folded, even
if it is allowed elsewhere.
Brett and I decided to leave it for now and go with it.
2016-12-02 12:56:53 -08:00
Bradley M. Kuhn
0b05ac3c5c
CLI parameter for "how far out" to send renewal
...
This CLI parameter allows flexibility on how far in advance to send
renewal notices.
2016-12-02 12:55:52 -08:00
Bradley M. Kuhn
8bf9a01550
Also count lapsed/active against monthly/annual.
...
Add some details about the amount who are monthly/annual to the counts.
2016-11-05 10:34:41 -07:00
Bradley M. Kuhn
57275ec6bf
don't duplicate request.
2016-10-20 11:18:59 -07:00
Bradley M. Kuhn
8fe8af4336
Update email text.
...
This should really not be hard coded here.
2016-10-20 11:18:32 -07:00
Bradley M. Kuhn
fece5bdb4a
Bug: this should not use t-shirt-0 every time!
...
I am not sure why this had t-shirt-0 repeated every time, but it can't
possibly be right.
2016-10-20 11:17:51 -07:00
Bradley M. Kuhn
dc5f959259
Additional staff report for renewal notice report.
2016-10-20 11:16:51 -07:00
Bradley M. Kuhn
413f63ea43
Renewal count by month.
2016-09-07 16:05:06 -07:00
Bradley M. Kuhn
7f2cdba149
reverse sort for already lapsed; add multi-year
...
Multiyear totals are now included in report.
already lapsed list is reverse sorted by date instead.
2016-07-20 16:09:32 -07:00
Bradley M. Kuhn
4231731b24
Include additional font package.
2016-05-27 06:08:36 -07:00
Bradley M. Kuhn
3b14ca9abe
Fix address formatting here too.
2016-05-27 06:02:17 -07:00
Bradley M. Kuhn
eb34901017
LaTeX does support these characters.
2016-05-26 21:17:09 -07:00
Bradley M. Kuhn
04ae300292
Use preferred postal address if available.
...
Test first to see if a preferred postal address is available before
attempting to just accept one.
2016-05-26 21:04:43 -07:00
Bradley M. Kuhn
e98b8b9d42
Print the overall needed.
2016-05-26 21:03:54 -07:00
Bradley M. Kuhn
6fd18b6643
Merge branch 'master' from upstream.
2016-05-26 20:41:42 -07:00
Bradley M. Kuhn
7b5f6f1b8a
Correct variable names
2016-05-26 20:40:24 -07:00
Bradley M. Kuhn
4e52c8fe1c
Fix test command.
2016-05-26 20:39:58 -07:00
Bradley M. Kuhn
6147f2b869
Fix bug: $type from loop should be used!
...
We weren't using the type variable from the loop!
2016-05-26 20:39:40 -07:00
Bradley M. Kuhn
6a6ec1fca2
Properly sort so most in need get shirts first.
...
The idea behind this sort is to give monthlies top priority based on
their id number (i.e., when they hit $60, just get that shirt out to
them), and for annuals, make sure we prioritize based on how long it has
been since their last donation.
2016-05-26 20:38:48 -07:00
Bradley M. Kuhn
f3a6debdf7
Sort by last gave date.
2016-05-26 13:29:21 -07:00
Bradley M. Kuhn
ced1501eab
On second thought, nine months.
2016-05-26 13:29:00 -07:00
Bradley M. Kuhn
93d048a3fd
Find only entries that gave a year later.
2016-05-26 13:18:28 -07:00
Bradley M. Kuhn
d72431cdce
Include type in output; range check on one request
...
The request date depends on the import date, not the date of the
donation, so we have to range-check here to see if it's nearby the date
of the last donation.
2016-05-26 13:14:05 -07:00
Bradley M. Kuhn
010543c685
Adapt script to figure out problems with t-shirts
2016-05-26 12:53:20 -07:00
Bradley M. Kuhn
23487b3907
First draft of a script to find already renewed.
2016-05-26 12:34:52 -07:00
Martin Michlmayr
c94f0001b9
Indicate if there's no existing preferred email address
...
Show "(none)" when there's no existing preferred email address instead
of an unitialized variable warning.
2016-05-05 17:27:48 -07:00
Bradley M. Kuhn
b344e4febf
Clarify output.
2016-03-11 12:29:58 -08:00
Bradley M. Kuhn
ae7b876647
Implement {set,get}PreferredPostalAddress
2016-03-11 12:29:20 -08:00
Bradley M. Kuhn
fd6b55e7be
Print public ack status on find-supporter script.
2016-03-11 12:11:58 -08:00
Bradley M. Kuhn
32bf9f399c
Simple add-request script to add request from CLI.
2016-03-11 12:11:44 -08:00
Bradley M. Kuhn
3a6edee83f
Mark preferred addresses & better formatting.
...
Note that I haven't implemented getPreferredPostalAddress() yet so it's
commented out here for now.
2016-03-11 11:23:30 -08:00
Bradley M. Kuhn
b1abebb32b
Better formatting of address output.
2016-03-11 11:10:39 -08:00
Bradley M. Kuhn
6615abe535
Print request data if it exists.
2016-03-11 11:05:05 -08:00
Bradley M. Kuhn
9a82f72aa9
Spacing changes.
2016-03-11 11:04:46 -08:00
Bradley M. Kuhn
b8add1ded5
Fix typo.
2016-03-11 11:04:22 -08:00
Bradley M. Kuhn
7398b2f3f7
Add search for id & output of postal/email address
2016-03-11 09:55:11 -08:00
Bradley M. Kuhn
279c3e33f9
Add lapsed count to output for status report.
2016-03-07 10:36:28 -08:00
Bradley M. Kuhn
6137907548
Rework to create status report for staff.
...
This script now also sends an email to the staff (via the $FROM_ADDRESS)
about the status of Supporter renewals.
2016-03-07 10:29:18 -08:00
Bradley M. Kuhn
a0c5936e1c
Send renewal notices one week before expiration.
2016-03-07 08:25:46 -08:00
Bradley M. Kuhn
76f4e3f4ef
Only tell them it'll come later if post.
2016-02-29 17:58:37 -08:00
Bradley M. Kuhn
475f8a8a1d
Allow no email address when adding supporter.
2016-02-29 17:58:23 -08:00
Bradley M. Kuhn
f8d145c3a7
Create find-supporter script.
2016-01-24 16:18:29 -08:00
Bradley M. Kuhn
ae0b7000ae
Add verbose argument.
2016-01-22 17:12:22 -08:00
Bradley M. Kuhn
376075e549
Skip lapsed supporters.
2016-01-22 17:12:05 -08:00
Bradley M. Kuhn
922e8f279e
Add additional parameters.
2016-01-22 17:10:58 -08:00
Bradley M. Kuhn
6986796a7d
Correct variable name.
2016-01-22 17:10:45 -08:00
Bradley M. Kuhn
8f5c3b8d1f
This error checking condition is now meaningless.
2016-01-22 17:10:30 -08:00
Bradley M. Kuhn
167d8c9520
checklist is the proper has value throughout.
2016-01-22 17:10:17 -08:00
Bradley M. Kuhn
1039f6f6d2
Allow for undef.
2016-01-22 17:09:41 -08:00
Bradley M. Kuhn
cf8cc36045
Giving limit for donor to receive t-shirt.
...
Analysis of IRS rules indicate that sometimes, a thank-you gift can't be
sent unless the percentage the gift is of the donation meets a certain
threshold.
This change allows the caller of this script to implement that sort of
threshold.
2016-01-08 13:10:20 -08:00
Bradley M. Kuhn
97e772b89c
Parallel hashes made no sense here.
...
Since the main index is size, no reason not to have a single hash that
is so-keyed, and have subhash with two keys for checklist and labels.
2016-01-07 12:42:51 -08:00
Bradley M. Kuhn
dd8d8cba37
Reverse shortened postal address printed.
...
Packers find that reversing the postal address makes people easier to
find when matching up labels.
2016-01-07 12:38:53 -08:00
Bradley M. Kuhn
a4fdb4ea99
Correct sorting to print by size.
...
Packers indicate that packing by size rather than any other method is
better.
2016-01-07 12:33:52 -08:00
Bradley M. Kuhn
ed6b1decb0
This should really be input to the script.
...
But changing it here for the moment.
2016-01-06 22:22:44 -08:00
Bradley M. Kuhn
dbea255aee
Properly handle counting.
...
Fix an off-by-one error on the size counts and otherwise handle counting
well.
2016-01-06 21:46:58 -08:00
Bradley M. Kuhn
e35ee8b953
Script to calculate our renewal rate.
2016-01-03 14:14:04 -08:00
Bradley M. Kuhn
da75edccf2
Handle other donor info.
2016-01-03 13:17:00 -08:00
Bradley M. Kuhn
6d7bae7e02
Correct printout of email addresses for renewal.
2016-01-03 12:26:49 -08:00
Bradley M. Kuhn
d151b992c4
First past script to print t-shirt labels.
2016-01-02 11:21:17 -08:00
Bradley M. Kuhn
f985b1c1ef
Modifications to the email notification.
2016-01-02 10:47:29 -08:00
Bradley M. Kuhn
a57ed11bd5
Additional verbosity that says what we did.
2016-01-02 10:47:22 -08:00
Bradley M. Kuhn
b85575c625
Don't warn, just print to STDERR with verbosity.
2016-01-02 10:47:09 -08:00
Bradley M. Kuhn
964755c3e3
This takes a hash as argument.
2016-01-02 10:36:35 -08:00
Bradley M. Kuhn
215ac05484
Fixed spelling on hash key.
2016-01-02 10:35:05 -08:00
Bradley M. Kuhn
2d52ce2cd1
Need to use Supporters!
2016-01-02 10:33:57 -08:00
Bradley M. Kuhn
09f25e9fc9
send-t-shirt.plx: First hack at it.
2016-01-02 10:33:35 -08:00
Bradley M. Kuhn
dcbc823f0b
need $emailTo variable.
2015-12-31 02:24:32 -08:00
Bradley M. Kuhn
5e226a3483
Rename variable.
2015-12-31 02:24:26 -08:00
Bradley M. Kuhn
db43a3ed71
First draft of renewal-notices script.
2015-12-31 02:16:30 -08:00
Bradley M. Kuhn
4bd5ab4fd1
Wrote add-email-address.plx script.
2015-12-31 00:38:59 -08:00
Bradley M. Kuhn
8b233299c8
Properly use these strings.
2015-12-31 00:00:11 -08:00
Bradley M. Kuhn
8cc77b8dec
mode change on file
2015-12-30 22:48:19 -08:00
Bradley M. Kuhn
a4eb7ac8ac
First draft at add script.
2015-12-30 22:47:55 -08:00
Bradley M. Kuhn
1d84056acf
Correct column name.
2015-12-30 04:49:59 -08:00
Bradley M. Kuhn
16101492c0
Only add address if it exists.
2015-12-30 04:32:34 -08:00
Bradley M. Kuhn
97b5ee5ad0
Fix location of newline in verbose output.
2015-12-30 04:18:23 -08:00
Bradley M. Kuhn
2efad6ff89
Bad bracing.
2015-12-30 04:18:03 -08:00
Bradley M. Kuhn
e5516fb064
Add verbose output
2015-12-30 04:17:55 -08:00
Bradley M. Kuhn
2972b9783e
Fix typo.
2015-12-30 04:15:52 -08:00
Bradley M. Kuhn
a1b1ea9e4e
Correct name of Class.
2015-12-30 04:15:32 -08:00
Bradley M. Kuhn
581c63451f
Support verbosity.
2015-12-30 04:15:25 -08:00
Bradley M. Kuhn
453caf26bf
exit on wrong number of args.
2015-12-30 03:17:33 -08:00
Bradley M. Kuhn
f17527a23e
Conversion script should also use donorId.
2015-12-30 03:15:42 -08:00
Bradley M. Kuhn
9474dacd6c
addRequest() and fulfillRequest() in db conversion
...
The db conversion script can now use these two methods.
2015-12-20 17:34:18 -08:00
Bradley M. Kuhn
5dc73c0936
This handle no longer needed either.
2015-12-17 17:13:01 -08:00
Bradley M. Kuhn
3480c5b5c4
Use postal address API.
2015-12-17 17:12:29 -08:00
Bradley M. Kuhn
69260413f3
Import script no longer needs to make this link.
...
addSupporter() now does it properly in the API.
2015-12-16 18:15:54 -08:00
Bradley M. Kuhn
5ac8d562e1
Remove duplicate addRequestType call.
2015-12-14 16:32:59 -08:00
Bradley M. Kuhn
6e67f5cc20
This statement handler is no longer used.
2015-12-14 16:32:50 -08:00
Bradley M. Kuhn
630a807544
Use new addRequestType from Supporters module.
2015-12-14 16:31:50 -08:00
Bradley M. Kuhn
a3296f4b92
Switch to new addRequestType from API.
2015-12-13 12:34:08 -08:00
Bradley M. Kuhn
302b2b6f8b
Begin switch to use API rather than direct DB call
2015-12-13 12:16:42 -08:00
Bradley M. Kuhn
327779a950
Correct quoting issue and add debugging output.
2015-12-06 17:15:51 -08:00
Bradley M. Kuhn
98b62c7e97
Add missing size.
2015-12-06 17:15:27 -08:00
Bradley M. Kuhn
63c51c4682
Add method call here.
2015-12-06 17:15:04 -08:00
Bradley M. Kuhn
29705d1d6d
supporter_id does not belong here.
2015-12-06 17:14:40 -08:00
Bradley M. Kuhn
6c71c75a2c
This needs to be a prepared statement.
2015-12-06 17:14:11 -08:00
Bradley M. Kuhn
57411034af
supporter_id does not belong here.
2015-12-06 17:13:33 -08:00
Bradley M. Kuhn
3f84079ee0
Correct proper set of fields.
2015-12-06 17:12:57 -08:00
Bradley M. Kuhn
9732457d7e
Correct typeId.
2015-12-06 17:12:07 -08:00