The Supporter appeal didn't discuss the two different targets in much
detail. This change explains a bit better where the "service split" is
between what we can do with 750 Supporters vs. 2,500 Supporters.
Karen helped with this change.
Element form not allowed as child of element span in this
context. (Suppressing further errors from this subtree.)
So, I moved the id into the form rather than a span.
[0d89044: Replace gradient images with CSS gradients.] replaced gradient
images with CSS gradients but in doing so changed some of them from
light blue to gold. Change the colours to correct ones where necessary.
Because #logobutton had a fixed width, browser window narrower than 933
pixels resulted in an unnecessary horizontal scroll bar. Fix that by
using a dynamic 100% width which results in the header image being
automatically clipped as necessary.
To avoid clipping the tree and the text though, include min-width so
that very narrow windows result in a horizontal scroll bar so the whole
name can be seen.
Furthermore, simplify the markup by removing wrapper DIV and SPAN
elements which weren’t really necessary. As a consequence of that
change, the whole top of the page is now a link to the homepage (i.e.
‘/’). Prior to this change, the link wasn’t clickable.
The early change to frontpage.py was not sufficient; the template
obviously needs to make use of those five blog posts as well.
Note the cascading effect here. We only put lots on the front page if
they are recent.
In this situation:
<body class="conservancy-blog">
...
<video>
it turned out that this CSS:
body.conservancy-blog video {}
Did not apply.
So, this adds a hack to force the issue.
This middleware is a bit of a mess anyway, since it's basically using
static files as templates. However, we definitely don't want to add any
GET query parameters rendered into the path name.