Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								8f6bd0e563 
								
							 
						 
						
							
							
								
								Handle multiple addresses.  
							
							 
							
							
							
						 
						
							2019-12-10 09:38:20 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								f9e94aec25 
								
							 
						 
						
							
							
								
								Add YAML output.  
							
							 
							
							
							
						 
						
							2019-12-10 09:38:02 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								c2443bfcf7 
								
							 
						 
						
							
							
								
								Rework to handle multiple t-shirt designs.  
							
							 
							
							
							
						 
						
							2019-12-10 09:37:38 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								2e45e52e01 
								
							 
						 
						
							
							
								
								Add license notice.  
							
							 
							
							
							
						 
						
							2019-12-10 09:37:19 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								46ca0efb12 
								
							 
						 
						
							
							
								
								Different folks send shirts.  
							
							 
							
							
							
						 
						
							2019-12-10 09:36:59 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								56e6716248 
								
							 
						 
						
							
							
								
								Various changes for proper email selection and encoding.  
							
							 
							
							
							
						 
						
							2019-12-10 09:36:38 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								2cde8096a9 
								
							 
						 
						
							
							
								
								Begin work on delivery_error database tables.  
							
							 
							
							... 
							
							
							
							No code supports this yet, IIRC. 
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								84a73aa0f6 
								
							 
						 
						
							
							
								
								Support amounts.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								51d0db3fab 
								
							 
						 
						
							
							
								
								Add tests for Preferred email addresses.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								4e765fd8a3 
								
							 
						 
						
							
							
								
								Time HiRes module is needed.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								fa6aa31801 
								
							 
						 
						
							
							
								
								Add additional years.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								0e1ace2f76 
								
							 
						 
						
							
							
								
								Rework email address selection.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								f50c4d6053 
								
							 
						 
						
							
							
								
								paperMailOk: correct contact-setting typo.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								270e9d40bf 
								
							 
						 
						
							
							
								
								First draft of category mailing.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								a41b53f78d 
								
							 
						 
						
							
							
								
								Finish t-shirt-print-need script.  
							
							 
							
							
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								a301716263 
								
							 
						 
						
							
							
								
								New script: t-shirt-print-need  
							
							 
							
							... 
							
							
							
							Just prints a list of t-shirts we need. 
							
						 
						
							2019-12-10 09:35:16 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								8cffed1c68 
								
							 
						 
						
							
							
								
								donors2csv: Check for import errors as early as possible.  
							
							 
							
							... 
							
							
							
							This has to be done before argument parsing because that uses
import2ledger.strparse. 
							
						 
						
							2018-06-01 11:13:21 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								2e2c783657 
								
							 
						 
						
							
							
								
								python: Add donors2csv script.  
							
							 
							
							
							
						 
						
							2018-05-31 16:19:50 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Denver Gingerich 
								
							 
						 
						
							
							
							
							
								
							
							
								4d3b8b0673 
								
							 
						 
						
							
							
								
								models: flexible returning supporter mth count API  
							
							 
							
							... 
							
							
							
							Rename months_expired() to months_expired_at_return() and have the
method return an integer representing the month count rather than an
enum-like so that the API user has more flexibility with respect to
what they then do with the result.  Thanks to Brett for the review
that suggested this, and for much of the clever math in this change.
The results produced by returning_report.py (which is updated here to
use the new API) are almost identical to the results produced before
the change.  In rare cases (about 2-5% of the time) a supporter's
lapsed month count will fall into an adjacent bucket instead of the
one it fell into before, usually because the previous result was wrong
to begin with (due to the ugly days-per-3-months table that we used
previously, which this change thankfully eliminates). 
							
						 
						
							2018-01-25 17:03:09 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Denver Gingerich 
								
							 
						 
						
							
							
							
							
								
							
							
								6ab6441e14 
								
							 
						 
						
							
							
								
								python: report front-end for returning supporters  
							
							 
							
							... 
							
							
							
							A reporting script similar to status_report.py that uses the new
returning supporter method (added in 7aaba96) to provide a list of
how many supporters have started supporting again after lapsing,
bucketed by the number of months for which they had been lapsed. 
							
						 
						
							2018-01-25 17:03:09 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Denver Gingerich 
								
							 
						 
						
							
							
							
							
								
							
							
								0d3d9db4ed 
								
							 
						 
						
							
							
								
								models: add months returning supporter had lapsed  
							
							 
							
							... 
							
							
							
							A new public method, months_expired(), which is similar to the
existing status() in layout, but instead of returning whether the
supporter is new/active/lapsed/etc., it checks to see whether the
supporter is returning after having been lapsed, and if so, returns
the month range corresponding to how long they had been lapsed before
returning as a supporter in the current month. 
							
						 
						
							2018-01-25 17:03:09 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								9350167d29 
								
							 
						 
						
							
							
								
								Merge branch 'master' of ssh://k.sfconservancy.org/supporters  
							
							 
							
							
							
						 
						
							2018-01-24 11:48:43 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								c0714f3995 
								
							 
						 
						
							
							
								
								mass email changes for encoding and skipping addresses.  
							
							 
							
							
							
						 
						
							2018-01-24 11:47:47 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								2816c8ab2e 
								
							 
						 
						
							
							
								
								emailOk: attempts to make more versatile.  
							
							 
							
							... 
							
							
							
							Most of this commented out because I was attempting to make it more versatile
and it failed. 
							
						 
						
							2018-01-24 11:45:03 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								5b43b6d3f3 
								
							 
						 
						
							
							
								
								README: Update database migration method for Django 1.10.  
							
							 
							
							
							
						 
						
							2018-01-22 10:15:30 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								271f7a8c5b 
								
							 
						 
						
							
							
								
								models: Update DateField to use Django 1.10 method.  
							
							 
							
							
							
						 
						
							2018-01-22 10:15:30 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								a82ebfb0a9 
								
							 
						 
						
							
							
								
								_lookupDeliveryError: begun  
							
							 
							
							... 
							
							
							
							Verify beginnings of implementation 
							
						 
						
							2017-12-26 12:32:15 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								9ffd4d4e88 
								
							 
						 
						
							
							
								
								Tests: addEmailError: initial functionality tests  
							
							 
							
							... 
							
							
							
							These tests lay out the basic functionality for adding an email error.
BTW, I decided we need an entirely different but mirrored setup for
postal errors, since the database tables for email and postal addresses
are hard-coded. 
							
						 
						
							2017-11-26 15:04:21 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								bce2679573 
								
							 
						 
						
							
							
								
								Tests: addSupporter(): fix two spelling typos.  
							
							 
							
							
							
						 
						
							2017-11-26 15:00:51 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								99650b23ee 
								
							 
						 
						
							
							
								
								releaseRequestHold(): Implement & update tests.  
							
							 
							
							... 
							
							
							
							Some of these tests were written a while ago, and the function never
implemented.  It is now implemented and test are updated. 
							
						 
						
							2017-11-26 14:32:17 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								a3ea7a58df 
								
							 
						 
						
							
							
								
								Tests: clearly should be ok(), not is().  
							
							 
							
							... 
							
							
							
							This was a Boolean test, so it clearly should be ok(), not an is(). 
							
						 
						
							2017-11-26 14:30:44 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								faf1a239a4 
								
							 
						 
						
							
							
								
								holdRequest(): requestId is not a parameter.  
							
							 
							
							
							
						 
						
							2017-11-22 13:32:44 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								ebcabc5231 
								
							 
						 
						
							
							
								
								holdRequest(): Document function API.  
							
							 
							
							
							
						 
						
							2017-11-22 13:32:30 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								693a844212 
								
							 
						 
						
							
							
								
								type list variable should be used for loop.  
							
							 
							
							
							
						 
						
							2017-08-01 12:13:10 -07:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								96c04d988e 
								
							 
						 
						
							
							
								
								t-shirts: control by type when we send.  
							
							 
							
							... 
							
							
							
							Allow for controlled sending of t-shirts by type. 
							
						 
						
							2017-08-01 10:17:19 -07:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								434f2de875 
								
							 
						 
						
							
							
								
								send-mass-email: improve email presentation  
							
							 
							
							
							
						 
						
							2017-08-01 09:21:34 -07:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								77ac4ba16f 
								
							 
						 
						
							
							
								
								Merge branch 'master' from k.sfconservancy.org  
							
							 
							
							
							
						 
						
							2017-08-01 09:20:19 -07:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								98f72ee232 
								
							 
						 
						
							
							
								
								Update email text.  
							
							 
							
							
							
						 
						
							2017-08-01 09:19:57 -07:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								07593c7b15 
								
							 
						 
						
							
							
								
								send-t-shirts: Improve email line processing.  
							
							 
							
							
							
						 
						
							2017-08-01 09:19:45 -07:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								2b1bdb073d 
								
							 
						 
						
							
							
								
								python models: Implement Supporter.supperter_type() with filters.  
							
							 
							
							
							
						 
						
							2017-02-17 15:24:40 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								8481bbf3b9 
								
							 
						 
						
							
							
								
								python models: Supporter.supporter_type() handles untagged payments.  
							
							 
							
							
							
						 
						
							2017-02-17 15:11:32 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								e2eab732ac 
								
							 
						 
						
							
							
								
								python models: Add Date.strptime constructor.  
							
							 
							
							
							
						 
						
							2017-02-17 11:41:39 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								1508660842 
								
							 
						 
						
							
							
								
								$type argument must be repeated in arguments.  
							
							 
							
							... 
							
							
							
							I use it twice in the format.
I think this was a local change I inadvertently failed to commit which
got overwritten by a pull. 
							
						 
						
							2017-02-09 19:04:08 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								be2409792f 
								
							 
						 
						
							
							
								
								Improve monthly lapse detection.  
							
							 
							
							... 
							
							
							
							Previously, we were over-requesting renewals from monthly donors.  This
code corrects the problem. 
							
						 
						
							2017-02-09 18:57:49 -08:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								8f102e54c4 
								
							 
						 
						
							
							
								
								send-renewal-notices: Fix lapse rate math.  
							
							 
							
							... 
							
							
							
							The lapse rate by Supporter type was being miscalculated. 
							
						 
						
							2017-01-26 13:59:29 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								3751fe870f 
								
							 
						 
						
							
							
								
								python: Initial documentation.  
							
							 
							
							
							
						 
						
							2017-01-25 15:35:10 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								8eb1854b8b 
								
							 
						 
						
							
							
								
								python: Add status_report script.  
							
							 
							
							
							
						 
						
							2017-01-25 11:08:21 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								bc21b83951 
								
							 
						 
						
							
							
								
								python: Add Supporter pseudo-model.  
							
							 
							
							
							
						 
						
							2017-01-25 08:58:54 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Brett Smith 
								
							 
						 
						
							
							
							
							
								
							
							
								b32e72b1e8 
								
							 
						 
						
							
							
								
								python: Start Django project.  
							
							 
							
							... 
							
							
							
							This is enough code to load Ledger data into Django models. 
							
						 
						
							2017-01-24 13:31:30 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Bradley M. Kuhn 
								
							 
						 
						
							
							
							
							
								
							
							
								02e80b8d08 
								
							 
						 
						
							
							
								
								Correct typo in variable name.  
							
							 
							
							
							
						 
						
							2017-01-18 14:34:15 +11:00