summaryrefslogtreecommitdiff
path: root/postgresqleu/trustlypayment/views.py
AgeCommit message (Collapse)Author
2020-07-04Fix incorrect call to is_anonymousMagnus Hagander
This changed the same way as is_authenticated in django 2.2, but was missed in the migration.
2020-03-12Replace datetime.now() with timezone.now()Magnus Hagander
As a step on the way to better timezone support, use the django function timezone.now() instead of datetime.now(). As long as we haven't enabled timezones globally this becomes a no-op and does exactly what it did before, but once timezones are enabled it will generate datetimes that are aware of this. No functionality change but gets a lot of boiler-plate out of the way making the verification of the rest of the timezone work easier.
2019-07-10Ensure email addresses are lowercase throughoutMagnus Hagander
At least all email addresses being input by end users should be confverted to lowercase to avoid duplicates. Update existing users, registrations and election candidates to be lowercase, and add constraints to them For things like conference contract addresses that are only set by superusers, we skip the constraints part and let the user take some more responsibility.
2019-01-19Re-factor payment methods and move configuration to the databaseMagnus Hagander
This is a major refactoring of how the payment method integrates, with the intetion of making it more flexible and more easy to use. 1. Configuration now lives in the database instead of local_settings.py. 2. This configuration is edited through the /admin/ interface, which makes it a lot easier to add constraints (and instructions), thus preventing misconfiguration. 3. Invoice payment methods are now separate from invoice payment implementations. That means there can be multiple instances of the same payment method, such as multiple different paypal accounts, being managed. 4. All payment method implementations are now available in all installations, including Braintree and Trustly. This retires the x_ENABLED settings in local_settings.py. The code won't actually run unless there are any payment methods defined with them. 5. On migration, all payment methods that are marked as inactive and have never been used are removed. Any payment method that has been used is left around, since there are old invoices connected to it. Likewise, any payment method that is selected as available for any sponsorship level (past or future) is left in the system. XXXXXX manual action needed on production systems XXXXXX 1. Settings for payment methods should be migrated automatically, but should of course be verified! 2. The template for Manual Bank Transfer is *not* migrated, since it wasn't in settings.py, but in a template and overriden downstream. Migrate the contents of the template invoices/banktransfer.html to the database using the /admin/ interface. When this is done, the template can be removed. 3. Notification URLs in Adyen must be updated in the Adyen backoffice to include the payment method id in the url (adding a /n/ to the end of the URL, with n being the id of the payment method). 4. Notification URLs in Paypal must be updated the same way.
2019-01-10Fix more unicode issuesMagnus Hagander
2019-01-04Fix sibling importsMagnus Hagander
Sibling imports should be prefixed with a period. Good idea in py2, will eventually become required in py3, so another small step.
2019-01-04Switch to new style try/except handlingMagnus Hagander
Python 2.6 introduced the better syntax, Python 3 removes the old one, so one small step towards py3.
2018-12-14Fix blankline related warningsMagnus Hagander
2018-12-14Fix spacing around operatorsMagnus Hagander
2018-12-14Manual fix of further whitespace issuesMagnus Hagander
Many of these were masked with the using of tabs, but were basically incorrect all the time. It's all in places where whitespace doesn't actually matter, but let's try to match up to PEP8.
2018-12-14Replace tabs with spacesMagnus Hagander
In an effort to close up with PEP8, we should use spaces for indent rather than tabs... Time to update your editor config!
2018-12-12Implement system skinning, remove pgeu dataMagnus Hagander
System skinning allows a "merged view" of the core code with that of a "skin". A skin represents the local deployment, such as "PostgreSQL Europe". Individual conferences are still skinned individually on top of this. As part of this, remove all PGEU website specific content, as that is now moved to the PGEU specific skin. Also removes the cmutuel application module as nobody outside PGEU needs this. Update the global templates to remove mentions of PostgreSQL Europe, and let PGEU override those templates as necessary. Front page template just becomes an empty placeholder, and is expected to always be overridden. Makes several more modules configurable by setting ENABLE_NEWS, ENABLE_MEMBERSHIP and ENABLE_ELECTIONS (we already had ENABLE_BRAINTREE). And finally, update the devsetup to be a bit more correct and also to set up an uwsgi ini file to use for local testing. Still lacking documentation and a few small parts are still PGEU hardcoded, so some follow-up patches to come.
2018-06-29Don't store return values if we're not going to use themMagnus Hagander
2018-03-23render -> render_to_response for payment processingMagnus Hagander
This udpates adyen, braintree, paypal and trustly to use the new rendering functions.
2016-12-27Implement Trustly payment methodMagnus Hagander
There are probably still some rough edges since a number of things cannot be tested until it's deployed on a live server, but basic payments should work.