From 6c37b9d2c6a1396470015e5d215f0233dbf20293 Mon Sep 17 00:00:00 2001 From: Morre <morre@cccv.de> Date: Sat, 3 Apr 2021 16:34:01 +0200 Subject: [PATCH] Add banner to services overview --- uffd/default_config.cfg | 7 +++++++ uffd/services/templates/overview.html | 8 ++++++++ uffd/services/views.py | 9 ++++++++- 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/uffd/default_config.cfg b/uffd/default_config.cfg index 72953217..fb837a15 100644 --- a/uffd/default_config.cfg +++ b/uffd/default_config.cfg @@ -122,6 +122,13 @@ SERVICES=[ # ] # }, ] + +# A banner text that will be displayed above the services list +SERVICES_BANNER='' + +# If the banner should be shown to users who are not logged in +SERVICES_BANNER_PUBLIC=True + # Enable the service overview page for users who are not logged in SERVICES_PUBLIC=True diff --git a/uffd/services/templates/overview.html b/uffd/services/templates/overview.html index c81b8266..5b91772c 100644 --- a/uffd/services/templates/overview.html +++ b/uffd/services/templates/overview.html @@ -8,6 +8,14 @@ <div class="alert alert-warning" role="alert">Some services may not be publicly listed! Log in to see all services you have access to.</div> {% endif %} +{% if banner %} +<div class="card"> + <div class="card-body"> + {{ banner|safe }} + </div> +</div> +{% endif %} + {% macro service_card(service) %} <div class="col mb-4"> <div class="card h-100 {{ 'text-muted' if not service.has_access }}"> diff --git a/uffd/services/views.py b/uffd/services/views.py index 7d9f03de..f4f9a805 100644 --- a/uffd/services/views.py +++ b/uffd/services/views.py @@ -83,4 +83,11 @@ def index(): services = get_services(user) if not current_app.config['SERVICES']: abort(404) - return render_template('overview.html', user=user, services=services) + + banner = current_app.config.get('SERVICES_BANNER') + + # Set the banner to None if it is not public and no user is logged in + if not (current_app.config["SERVICES_BANNER_PUBLIC"] or user): + banner = None + + return render_template('overview.html', user=user, services=services, banner=banner) -- GitLab