Closes#2778
Extra ES params are now passed through new OPTIONS key in the
WAGTAILSEARCH_BACKENDS setting.
It's backward compatible: if no OPTIONS key is found and some parameters
still exist, those parameters are used for the ES constructor..
This makes sure the variable can't be printed in the template,
performing an accidental copy of the page. That also happened when using
the `{% print %}` tag from my django-debugtools package
This is the correct lexer for interactive console sessions, according to
<http://pygments.org/docs/lexers/>. This does require command lines to
be prefixed with `$`, otherwise they are interpreted as the output of a
command. It highlights the command nicely, including environment
variables, strings, and comments.
When templates are rendered outside the request cycle,
the `settings` context processor fails because `request.site` is not
created because `SiteMiddleware` was not processed.
This happens whenever requests are mocked for rendering.
For example email rendering by third party packages or unittests
that mock a request object without taking all middleware into account.
As a new contributor I found some of the information for contributing hard to
find easily. I think this restructure should fix that, by bringing relevant
menus under their headings and adding an additional heading for 'more
information' instead of just 'other contributions'.
A form field with multiple checkboxes may introduce submissions that have more than one value. The `send_email` function would loop through all form fields and grab only the first item of each field, ignoring fields that may have multiple values selected. This is a side effect of using `QueryDict.get()`, which will only return the last value of a list.
This commit fixes that by first converting the `QueryDict` instance to a regular dict of lists so that `get` will return all values, then joining multiple items if needed.
Update page privacy form with login/group options
Add unit tests for setting group-based permissions
Add a basic login page to wagtailcore
Implement front-end logic for group and login-based permissions
Allow overriding the frontend login template name with WAGTAIL_FRONTEND_LOGIN_TEMPLATE
Add documentation for customising the login page
Add message on login page for authenticated users who don't have access