* A TimeOrStockLimit limit can apply a limit to a whole category, or
to specific products
* This report was only counting the products directly listed
* Take advantage of the new all_products property to include the
products indirectly listed as well as those directly listed
It's common to need to query the fill list of products covered by a
Flag - whether directly, or by being in an included category.
Add an all_products property which does this.
* Add a greyscale filter to text for more accurate preview
* Always default to SVG preview as it's the most accurate (cairo
doesn't do a great job of handling custom fonts when it converts to
png/pdf)
* Always use roboto font.
* Undo some of the debugging done early in this series of patches
* Add ability for a user to preview their own badge
* Add a template for the LCA2018 badge
* 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.