[PATCH] about: Display admin contact details
Stephen Finucane
stephen at that.guru
Sun Jul 7 05:41:14 AEST 2019
On Wed, 2019-07-03 at 13:39 +1000, Andrew Donnellan wrote:
> Display the list of admins on the about page. Add an ADMINS_HIDE option if
> you don't want the details displayed publicly.
>
> Closes: #282 ("Display contact details for patchwork instance admins")
> Signed-off-by: Andrew Donnellan <ajd at linux.ibm.com>
I made some small changes, noted below, and have applied this. Thanks!
Stephen
> ---
> docs/deployment/configuration.rst | 12 ++++++++++++
> patchwork/settings/base.py | 8 ++++++++
> patchwork/settings/production.example.py | 3 ++-
> patchwork/templates/patchwork/about.html | 15 +++++++++++++++
> patchwork/views/about.py | 1 +
> 5 files changed, 38 insertions(+), 1 deletion(-)
>
> diff --git a/docs/deployment/configuration.rst b/docs/deployment/configuration.rst
> index ba9a2ebc8c97..833fd26268f5 100644
> --- a/docs/deployment/configuration.rst
> +++ b/docs/deployment/configuration.rst
> @@ -114,3 +114,15 @@ access. This is useful if SSL protocol is terminated upstream of the server
>
> __ https://docs.djangoproject.com/en/1.8/ref/settings/
> __ http://www.django-rest-framework.org/api-guide/settings/
> +
> +``ADMINS``
> +~~~~~~~~~~
> +
> +Name and email address for Patchwork instance administrators.
> +
I didn't bother documenting this, instead relying on a link to the
Django docs.
> +``ADMINS_HIDE``
> +~~~~~~~~~~~~~~~
> +
> +If True, the details in ``ADMINS`` will be hidden from the About page.
> +
> +.. versionadded:: 2.2
> diff --git a/patchwork/settings/base.py b/patchwork/settings/base.py
> index 15644b405604..c76b5af22bfc 100644
> --- a/patchwork/settings/base.py
> +++ b/patchwork/settings/base.py
> @@ -227,3 +227,11 @@ COMPAT_REDIR = True
> # the scheme based on current access. This is useful if SSL protocol
> # is terminated upstream of the server (e.g. at the load balancer)
> FORCE_HTTPS_LINKS = False
> +
> +# Administrator contact details. Will be listed on the about page for users to
> +# contact, unless ADMINS_HIDE is True.
> +ADMINS = (
> + # Add administrator contact details in the form:
> + # ('Jeremy Kerr', 'jk at ozlabs.org'),
> +)
I moved this to 'patchwork/settings/dev.py', uncommented it and used a
more generic name, just so users could see it in action.
> +ADMINS_HIDE = False
> diff --git a/patchwork/settings/production.example.py b/patchwork/settings/production.example.py
> index f58896fc0ac7..c6aa2f2850c0 100644
> --- a/patchwork/settings/production.example.py
> +++ b/patchwork/settings/production.example.py
> @@ -42,7 +42,8 @@ SERVER_EMAIL = DEFAULT_FROM_EMAIL
> NOTIFICATION_FROM_EMAIL = DEFAULT_FROM_EMAIL
>
> ADMINS = (
> - ('Jeremy Kerr', 'jk at ozlabs.org'),
> + # Add administrator contact details in the form:
> + # ('Jeremy Kerr', 'jk at ozlabs.org'),
> )
>
> # Database
> diff --git a/patchwork/templates/patchwork/about.html b/patchwork/templates/patchwork/about.html
> index f602c1351b56..b41d5fdc15ef 100644
> --- a/patchwork/templates/patchwork/about.html
> +++ b/patchwork/templates/patchwork/about.html
> @@ -26,6 +26,21 @@
> </ul>
> </div>
>
> + {% if admins %}
> + <div class="panel panel-default">
> + <div class="panel-heading">
> + <h3 class="panel-title">Administrators</h3>
> + </div>
> + <ul class="list-group">
> + {% for admin in admins %}
> + <li class="list-group-item">
> + {{ admin.0 }} <<a href="mailto:{{ admin.1 }}">{{ admin.1 }}</a>>
I use the name as the display text for the hyperlink, rather than
formatting it as 'name <email>' since it looked cleaner to me.
> + </li>
> + {% endfor %}
> + </ul>
> + </div>
> + {% endif %}
> +
> <div class="panel panel-default">
> <div class="panel-heading">
> <h3 class="panel-title">API Status</h3>
> diff --git a/patchwork/views/about.py b/patchwork/views/about.py
> index 0061a3195298..91c3b74ebf8f 100644
> --- a/patchwork/views/about.py
> +++ b/patchwork/views/about.py
> @@ -16,6 +16,7 @@ def about(request):
> 'rest': settings.ENABLE_REST_API,
> 'xmlrpc': settings.ENABLE_XMLRPC,
> },
> + 'admins': () if settings.ADMINS_HIDE else settings.ADMINS,
> }
>
> return render(request, 'patchwork/about.html', context)
More information about the Patchwork
mailing list