* Whether a Flag is disable-if-false or enable-if-true is a very
important detail
* But one that's easy to get wrong
* And it's hard to spot problems without inspecting every single flag
This change adds the Condition into the various admin list views, so
that it's easier to scan them all for problems and look for inconsistencies.
"Next" is green, indicating that it's the default path, the way
forward. "Back" is available but blue.
For extra consistency, the initial "Get ticket" button is now also a btn-success
Let's say you've just installed symposion for the first time, and
you're running the intial `./manage.py migrate`
In that circumstance, there isn't an auth_group table. Naturally this
means you get Some Errors when trying to look for a particular group.
This change handles that error and drives on.
Borrowed from the pyconau-2017 fork
To explain the impact of this - without this patch, if a user has
their invoice refunded, they are able to buy a new ticket; but
t-shirts, dinner tickets and so on do not become available to them
again because they are listed has already been in a cart for them.
Applying the patch now correctly checks to see if they currently have
a ticket.
From 731eee0a4c42a5013ee312b1ff50548e4d89a2ff Mon Sep 17 00:00:00 2001
From: Richard Jones <r1chardj0n3s@gmail.com>
Date: Sun, 4 Jun 2017 13:22:34 +1000
Subject: [PATCH] Fix query modification so that conditions are combined
Previously it was checking if the user has a product from the category
in a cart, and if there is no cart that is released (refunded).
Not *if the user has a product in a cart that is not released*.
This patch combines them. In the absence of a __ne operation in the
joining syntax, a double equality check is needed.
Signed-off-by: Richard Jones <r1chardj0n3s@gmail.com>
So django keeps strict synchronization between its code and migrations
so that it can help generating new migrations. These are the additional
suggested migrations. A lot of these are a null effect, some are things
like transforming an unsigned integer to a signed integer. So not super
urgent on a small scale, but worth doing to keep django happy.