Commit Graph

390 Commits (6ff52f10e43c4f1ec3775d0b7d0a6196f439caf8)

Author SHA1 Message Date
eric 2892a22824 change terminology from "donation" to "gift" 2013-12-13 15:15:35 -05:00
eric 6539370e37 remove commented code 2013-11-25 13:37:15 -05:00
eric dd83434282 Fix error handling in Pay 2013-11-25 13:01:16 -05:00
eric 18f104c210 latent spelling error 2013-11-24 18:44:40 -05:00
eric 1c33c34f21 purchase complete notification, contextual wishlist active, fulfillment in signal handler 2013-08-22 14:30:56 -04:00
eric 75ec13cb39 make sure the transaction isn't double charged! 2013-08-22 14:03:22 -04:00
eric 80d78e624f remove amazon cruft to get current_total correct 2013-08-19 23:23:27 -04:00
eric 91f7c5f23d Remove some payment dependence on campaign details 2013-08-19 22:52:22 -04:00
eric 8317356cc2 moved to not_maintained 2013-08-19 22:27:25 -04:00
eric d5b9f88380 move "extra data" into a json field dict to improve payment code tidieness
need to install jsonfield
note: this is https://bitbucket.org/schinckel/django-jsonfield
I tried https://github.com/bradjasper/django-jsonfield but it was not
compatible with South
2013-08-18 15:21:55 -04:00
Raymond Yee f9fad3260a instance -> self in Account.update_status() -- d'oh 2013-08-08 16:28:34 -04:00
Raymond Yee cf7160b72d Adding an optional flag to Account.update_status, which by default, send notices only if the status is *changing*.
Set send_notice_on_change_only = False to send notice based on new_status regardless of old status.  (Useful for initialization)
2013-08-08 13:31:38 -04:00
eric c30c0de604 make recharge_failed_transactions a method on account
There were four places in the code that triggered the
recharge_failed_transactions signal and only one of them mattered. I
think this layout makes the code much easier to understand.
2013-08-05 14:37:46 -04:00
eric 25d9edf4d8 fix non-working update_status method 2013-08-05 12:18:18 -04:00
eric b28412ec7a fix import on payment/tasks 2013-08-05 12:15:04 -04:00
eric 6da8d16770 moved the payment tasks to payment from core 2013-08-03 18:42:33 -04:00
Raymond Yee 3936692244 [#40140123] Add Account.update_status() to replace handle_Account_status_change thus resolving a number of issues Eric identified:
* [ ]https://github.com/Gluejar/regluit/pull/176/files#r4221450 "It also seems odd to be using signals to talk only within the same module. This seems to me to be a misuse of signals, and makes for code that is harder to read"  -- I need to decide whether I agree w/ Eric.
   * [ ]https://github.com/Gluejar/regluit/pull/176/files#r4366503 long exchange "making it readonly would be overkill (java-ish) but the current code is not clear. Your save signal handler has to figure out whether a state transition has occurred and then act accordingly, which seems like a lot of hoops to jump though. better to put all the transition work in one place. For example, shouldn't it be the deactivate method that sets the status to deactivated?

For example, the methods on campaign do a reasonable job of handling all the status transitions."  What I  should:  mimic structure of  4fc449dad5/core/models.py (L322)   -> time to write up how Campaign works

   * [ ]https://github.com/Gluejar/regluit/pull/176/files#r4214827 "could also mean the Account has been deleted. don't you really want instance.pk=None?"

   * [ ]https://github.com/Gluejar/regluit/pull/176/files#r4221509 "since, these actions are being done in batch mode, the emit notifications would work a lot better if they were emitted after the batch of notifications is created."
2013-07-23 14:16:42 -07:00
Raymond Yee 37ce78fda2 Merge branch 'master' into expiring_cc 2013-07-17 18:12:30 -07:00
Raymond Yee dabaa2f843 update tests to account for new events (now stripe allows multiple cards/customer and now generates card related events in addition to customer events) 2013-07-15 14:52:29 -07:00
Raymond Yee e4ab0ccd61 Merge branch 'instant_charge' into expiring_cc 2013-07-09 14:46:06 -07:00
Raymond Yee 46d1d4f767 Merge branch 'master' into expiring_cc
Conflicts:
	payment/models.py
	payment/tests.py
2013-07-08 10:52:44 -07:00
Raymond Yee ccbc78a10c added a first pass for payment.tests.TransactionTest.test_paymentmanager_charge to illustrate use of PaymentManager.charge() -> hardwired for stripelib right now.... 2013-06-28 16:05:19 -07:00
Raymond Yee 3ff53dd5bc first pass at stripelib.Processor.Pay 2013-06-26 18:46:30 -07:00
Raymond Yee d3166d3aef Merge branch 'master' into instant_charge 2013-06-26 17:17:07 -07:00
eshellman 5a207bf4e8 Merge pull request #181 from Gluejar/simpler_download
Simpler download. Yay.
2013-06-26 11:39:39 -07:00
Raymond Yee 701533117f fixed some seemingly bad defaults in baseprocessor
basic pass at payment.manager.PaymentManager.charge
2013-06-25 15:34:20 -07:00
Raymond Yee 867e745f75 Merge branch 'master' into instant_charge 2013-06-25 11:26:39 -07:00
Raymond Yee cae7f6d862 also delete the commented out pledge method 2013-06-25 11:23:21 -07:00
Raymond Yee 22dc844b07 Getting rid of tests that call PaymentManager.pledge 2013-06-25 11:05:52 -07:00
Raymond Yee 1725331aa0 cleaning out some old refs to Paypal 2013-06-25 10:39:49 -07:00
Raymond Yee 5e3fca0282 in stripelib.py, I am resurrecting PledgeScenarioTest
in manager.py, a very rough first pass at charge -- not working yet, but doesn't break things either
2013-06-24 16:19:12 -07:00
Raymond Yee 53178d80ce moving to stripe 1.9.1 2013-06-21 15:14:51 -07:00
Raymond Yee a36ff38745 extraneous creation of StripeClient 2013-06-20 13:39:06 -07:00
Raymond Yee c76a320912 * Comment out current payment.manager.PaymentManager.pledge -- tests run ok -- so it looks like I suspect: that we don't use that code and it's a hold-over from PayPal code
* stub for stripelib.Processor.Pay
2013-06-19 18:54:32 -07:00
Andromeda Yelton ad69580b2d PEP 8, PEP 328. I feel better now. 2013-06-03 12:31:39 -04:00
Raymond Yee ab371c0e64 turn the payment.Account.status into an enumeration (with choices) 2013-05-28 15:57:22 -07:00
Raymond Yee a3cc502924 get rid of AccountTest0
renamed notice to Credit Card Number Updated
actually save account in update_account_status
2013-05-20 13:58:21 -07:00
Raymond Yee ef8c27d6fa Fire off account_active notices only if Account is a new one 2013-05-09 08:54:00 -07:00
Raymond Yee 94a23b3adf delete AccountTest.get_transaction_level() 2013-05-08 19:03:32 -07:00
Raymond Yee b1a23c9183 Add sending of account_active notices -- though they are turned off by default 2013-05-08 18:15:33 -07:00
Raymond Yee db1ee70647 fixed up notice texts for account_expired
also made sure that user is properly passed to sender of notices
2013-04-26 10:50:28 -07:00
Raymond Yee a3127e8086 Trying to work around problems in old AccounTest 2013-04-12 11:13:26 -07:00
Raymond Yee 9cc2e3121e Merge branch 'master' into expiring_cc 2013-04-10 09:14:29 -07:00
Raymond Yee ed37463f35 debugging tests on ry-dev -- let's see how this runs on ry laptop 2013-03-20 21:56:37 +00:00
Raymond Yee aca38d66a1 Merge branch 'master' into expiring_cc
Conflicts:
	payment/tests.py
2013-03-20 09:41:30 -07:00
eric af8c3ff1fd merge from master 2013-03-19 10:02:06 -04:00
eric d3077c988b links should not point to http from https 2013-03-09 13:29:03 -05:00
eric 800d0ffdeb cleanup of css and js imports, also mapping 2013-03-08 14:16:24 -05:00
eric d6a8dedfaa mailchimp ops now example.org aware, test users, now all changed to example.org 2013-03-06 09:39:06 -05:00
Raymond Yee de96aa0755 Add task for 22nd of month for notifying expring cc 2013-03-04 11:19:13 -08:00
Raymond Yee 0174ef863f card expiring and expired notices firing now 2013-03-04 09:06:57 -08:00
Raymond Yee 3e3a24b7db in progress: a test for making sure changes in Account.status fires appropriate notices 2013-03-04 07:50:21 -08:00
Raymond Yee a7f6d8e7cc put more of the skeleton for Account pre_save handler 2013-03-01 17:54:37 -08:00
Raymond Yee 76a88e2db2 placed a pre_save handler to provide a part of framework for Account.status change 2013-02-27 11:31:02 -08:00
Raymond Yee cbfabbfa3c Implemented Account.status migration 2013-02-27 10:08:36 -08:00
Raymond Yee c3f922e9ba First pass at regluit.payment.models.Account.status 2013-01-14 16:18:19 -08:00
Raymond Yee 9493897a42 [#41908015] 'incorrect_number' and 'processing_error' error should also result in pledge_failed notice ->
catch incorrect_number (and processing_error for now) for sending the pledge_failed notice
2013-01-03 14:10:05 -05:00
Andromeda Yelton be6a1082c2 whoa, urlencode takes dicts and this was failing silently all along 2012-12-11 13:07:09 -05:00
Raymond Yee 0db13cd84a [finish #40315289] I move the notice on transaction charged or failed from webhooks handler into stripelib.Processor.Execute 2012-11-29 16:24:51 -08:00
Raymond Yee ecea475419 a few modifications to pledge_failed notice 2012-11-21 11:40:19 -08:00
Raymond Yee cbac6f1e3c First round of edits to get pledge_charged and pledge_failed notices to be parallel. tests passing 2012-11-21 09:21:01 -08:00
Raymond Yee ce6e7f865d tests pass on this commit 2012-11-20 13:56:14 -08:00
Raymond Yee c034e10b30 Putting in some code to record a PaymentResponse to track errors in stripelib.Execute 2012-11-20 09:28:10 -08:00
Raymond Yee f4deee8be4 Merge branch 'empty_stripe_token' into charge_failed 2012-11-14 11:43:29 -08:00
Raymond Yee 7fe502ecdf check for zero length stripe token 2012-11-14 11:42:52 -08:00
Raymond Yee a62c82df9b Merge branch 'empty_stripe_token' into charge_failed 2012-11-14 10:58:01 -08:00
Raymond Yee 346d4d8980 First step in patching the problem of null stripe_token 2012-11-14 10:53:19 -08:00
Raymond Yee f2bb53f132 recharge signal being fired now 2012-11-12 12:48:03 -08:00
Raymond Yee a90f133166 First pass at writing a signal handler to recharge transaction if account updated 2012-11-12 11:22:20 -08:00
Raymond Yee 793d984ba3 Implemented basic transaction_failed signal and notices -- THEY STILL NEED WORK
Tests handle situation of transaction_failed too
2012-11-06 11:22:25 -08:00
Raymond Yee 7ea5ac7ca6 1) Now fire the transaction_charged signal in the Stripe webhook handling
2) add WebTest to requirements
3) have a check on possible Stripe events
2012-11-05 10:44:24 -08:00
Raymond Yee f6bf774f2c Test sending junk to webhook handler
Simulate sending events to the ipnhandler and check to see how many emails generated in test
2012-11-02 14:46:49 -07:00
Raymond Yee 9826951d36 Continuing to build out UnifiedCampaignTests -- now includes scenario where a pledge is made and charged -- and the corresponding Stripe events are polled and inspected 2012-11-01 14:06:11 -07:00
Raymond Yee 96b62aa163 basic skeleton for test based on loading fixture
keep the signals for create userprofile, wishlist, and credit from firing if fixtures being loaded
2012-10-31 11:08:46 -07:00
Raymond Yee a973015f04 Merge branch 'webhooks' of github.com:Gluejar/regluit into webhooks
Conflicts:
	payment/stripelib.py
2012-10-31 08:27:39 -07:00
Raymond Yee 30fd1332af Expanding functionality of stripelib.Processor.Execute -- better error handling 2012-10-31 08:23:13 -07:00
Raymond Yee 5df6dea26b Comment section stripelib.Processor.Execute that needs to be modified in light of how we now let users update the CC on file 2012-10-30 20:01:41 +00:00
Raymond Yee 32b20556c2 Skeleton for handling charge related webhooks 2012-10-30 11:17:09 -07:00
Raymond Yee b4b5437ff5 Now working -- can send email to RY for customer.created 2012-10-23 22:18:03 +00:00
Raymond Yee 29438050d1 test of sending email to RY upon customer.created event 2012-10-23 14:20:13 -07:00
Raymond Yee 8b2e1054e9 Start to break down the various type of events we'll need to handle 2012-10-23 09:29:47 -07:00
Raymond Yee 86aae9f18b Now ask Stripe for event info in ipn 2012-10-22 08:25:47 -07:00
Raymond Yee 5f75a17310 First pass at parsing json + log webhook 2012-10-22 07:50:52 -07:00
Raymond Yee 6af74af6e0 Added "from django.http import HttpResponse" 2012-10-22 06:55:30 -07:00
Raymond Yee b231011515 handle in a generic fashion all Stripe listable objects 2012-10-19 18:11:46 -07:00
Raymond Yee 8a85aa88d3 first cut at producing iterator interfaces to Stripe objects -- here I implement one for events
don't yield empty page in bookdata.py's grouper
remove extraneous import in gutenberg.py
expose stripe test key as a module variable to make it easier to create a StripeClient that will be in test mode (sc=StipeClient(api_key=TEST_STRIPE_SK))
2012-10-18 06:59:08 -07:00
Raymond Yee df17c3c865 Merge branch 'master' into webhooks 2012-10-17 09:08:27 -07:00
eric 48be5a1191 xhtml nits 2012-10-15 10:28:31 -04:00
Raymond Yee cf433386e8 starting to make it easier to put stripelib in test mode 2012-10-15 06:24:12 -07:00
Raymond Yee 51e17e6886 Merge branch 'master' of github.com:Gluejar/regluit 2012-10-14 21:52:43 -07:00
Raymond Yee c16df417e6 Hello world of IPN 2012-10-14 21:16:15 -07:00
eric bda3211a76 user can manage their account credit card [#37674369] 2012-10-14 23:41:17 -04:00
eric 1c557e1488 fix reference to Donation Credit canceler 2012-10-14 22:08:34 -04:00
Raymond Yee d8a30a733a Add a log message for loading of keys in stripelib 2012-10-13 16:42:24 -07:00
Raymond Yee f152bc97b1 Merge branch 'reuse_account'
Conflicts:
	frontend/views.py
2012-10-13 16:19:45 -07:00
eric 5bde0da8ca [#37716025] reuse a user's credit card 2012-10-13 13:45:46 -04:00
eric dbacb5a96d max_amount, not amount before the authorization 2012-10-13 13:38:39 -04:00
Raymond Yee b904cb1f28 Fixed a bug in the logging statement that had mismatched # of parameters 2012-10-13 08:23:07 -07:00
eric 2ae6942f4f better to not have logging of tokens 2012-10-13 00:48:46 -04:00
eric 476ce46dab display and notifications of acknowledgements 2012-10-12 23:45:09 -04:00