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
1577a5613c
getRequestType with no arguments returns full list
...
I debated whether to create a getRequestTypes() instead, but this seemed
reasonable. I am too far out of Perl5 programming culture to know if
this sort of interface is recommended practice.
2016-03-11 10:58:05 -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
ef21af7afd
holdRequest: revise tests to shake out the API.
...
First of all, I originally thought about releaseDate all wrong. We want
to store the date that the hold was released, which is the indicator
that the request is no longer on hold and can be fulfilled.
We also need tests that assure a request is not fulfilled while on
hold. Those are added here.
I shook out a few other changes to the test ordering that are necessary
for the change to testing holdRequest().
2016-01-19 17:49:20 -08:00
Bradley M. Kuhn
18e08833d5
Typo fix.
2016-01-19 17:44:34 -08:00
Bradley M. Kuhn
e2291f777c
holdRequest: basic tests that define API.
...
This is the basic API definition for holdRequest and the changes to
getRequest that will occur because of it.
2016-01-18 21:34:03 -08:00
Bradley M. Kuhn
40eb4b32c9
getRequest: unit test w/ ignoreFulfilledRequests
...
There was no unit test using ignoreFulfilledRequests. This adds it.
2016-01-18 21:29:45 -08:00
Bradley M. Kuhn
02dd863c53
getPostalAddresses: implementation
...
It's straightforward but has no unit tests, and should have some.
2016-01-18 21:20:43 -08:00
Bradley M. Kuhn
82ec41cc33
Verify getRequest works after failed fulfill.
...
getRequest() should return expected values after failed fulfillRequest()
call
2016-01-18 21:13:21 -08:00