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 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								ded2028069 
								
							 
						 
						
							
							
								
								Allow missing entityId in Ledger output.  
							
							... 
							
							
							
							The ledger data can, in fact, sometimes have a missing entityId for
various reasons.  For now, these donations should just be ignored.
Perhaps in future a warning of some sort should be generated. 
							
						 
						
							2016-01-18 21:10:47 -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 
								
							 
						 
						
							
							
							
							
								
							
							
								e43b6e34ae 
								
							 
						 
						
							
							
								
								donorTotalGaveInPeriod: First implementation.  
							
							... 
							
							
							
							This passes all tests:
ok 224 - donorTotalGaveInPeriod(): dies with undefined donorId
ok 225 - donorTotalGaveInPeriod(): dies with non-numeric donorId
ok 226 - donorTotalGaveInPeriod(): dies with non-existent id
ok 227 - donorTotalGaveInPeriod():  dies with non ISO-8601 string in startDate
ok 228 - donorTotalGaveInPeriod():  dies with non ISO-8601 string in endDate
ok 229 - donorTotalGaveInPeriod(): dies if given an argument that is not recognized
ok 230 - donorTotalGaveInPeriod(): total for a donor with no period named succeeds...
ok 231 - donorTotalGaveInPeriod(): ...and returned value is correct.
ok 232 - donorTotalGaveInPeriod(): check for total with both start and end date succeeds...
ok 233 - donorTotalGaveInPeriod(): ...and returned value is correct.
ok 234 - donorTotalGaveInPeriod(): check for total with just a start date succeeds...
ok 235 - donorTotalGaveInPeriod(): ...and returned value is correct.
ok 236 - donorTotalGaveInPeriod(): check for total with just a end date succeeds...
ok 237 - donorTotalGaveInPeriod(): ...and returned value is correct. 
							
						 
						
							2016-01-07 13:36:21 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								00da4c3cd8 
								
							 
						 
						
							
							
								
								Commit forgotten test!  
							
							
							
						 
						
							2016-01-07 13:35:13 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								c7d11b8593 
								
							 
						 
						
							
							
								
								Correct totals again.  
							
							... 
							
							
							
							I am pretty sure these are right now. 
							
						 
						
							2016-01-07 13:35:01 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								965fe7a022 
								
							 
						 
						
							
							
								
								Correct test count.  
							
							
							
						 
						
							2016-01-07 13:34:48 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								dba498c528 
								
							 
						 
						
							
							
								
								donorTotalGaveInPeriod: test badly formatted dates  
							
							... 
							
							
							
							It should die if the dates aren't formatted right. 
							
						 
						
							2016-01-07 13:07:04 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								003af81ce7 
								
							 
						 
						
							
							
								
								donorTotalGaveInPeriod: improve tests.  
							
							... 
							
							
							
							Actually, the amount on that one test was wrong, and I think we actually
do want to test the border cases a bit better. 
							
						 
						
							2016-01-07 13:06:40 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								e14c0b048d 
								
							 
						 
						
							
							
								
								donorTotalGaveInPeriod: tests defining basic API.  
							
							
							
						 
						
							2016-01-07 12:53:04 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								5901e567d3 
								
							 
						 
						
							
							
								
								Date test was written should not be hard coded.  
							
							... 
							
							
							
							The date should use the today, while that still has the "run the tests
at almost midnight UTC" race condition, at least it will usually be
right. :) 
							
						 
						
							2016-01-07 12:52:29 -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 
								
							 
						 
						
							
							
							
							
								
							
							
								f3b7ebc6e3 
								
							 
						 
						
							
							
								
								getEmailAddresses: tests and implementation.  
							
							
							
						 
						
							2015-12-31 01:59:50 -08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								4bd5ab4fd1 
								
							 
						 
						
							
							
								
								Wrote add-email-address.plx script.  
							
							
							
						 
						
							2015-12-31 00:38:59 -08:00