diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-10-27 11:55:34 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-12-12 12:20:59 +0100 |
commit | 183c1422d978e2b1cbb1d47e0a024dcee57ae3f9 (patch) | |
tree | cc39c3e69039af5bc7854602a4ec9c956e0b4316 /ishtar_common/context_processors.py | |
parent | 62e05e799962d810804d0cd5f8d377ac8b434a01 (diff) | |
download | Ishtar-183c1422d978e2b1cbb1d47e0a024dcee57ae3f9.tar.bz2 Ishtar-183c1422d978e2b1cbb1d47e0a024dcee57ae3f9.zip |
Syndication - search UI
Diffstat (limited to 'ishtar_common/context_processors.py')
-rw-r--r-- | ishtar_common/context_processors.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/ishtar_common/context_processors.py b/ishtar_common/context_processors.py index 7fb1a486d..a03f6429b 100644 --- a/ishtar_common/context_processors.py +++ b/ishtar_common/context_processors.py @@ -22,6 +22,7 @@ from django.contrib.sites.models import Site from ishtar_common.version import __version__ from ishtar_common.models import get_current_profile +from ishtar_common.models_rest import ApiExternalSource, ApiKeyMatch from bootstrap_datepicker.widgets import DatePicker from .menus import Menu @@ -47,6 +48,19 @@ def get_base_context(request): menu.init() request.session['MENU'] = menu """ # menu is now in cache - put it back in session later? + if "EXTERNAL_SOURCES" not in request.session: + q = ApiExternalSource.objects + # TODO: check permissions + request.session["EXTERNAL_SOURCES"] = {} + if q.count(): + for source in q.all(): + request.session["EXTERNAL_SOURCES"][f"{source.id}-{source.name}"] = [ + f"{app_label}-{model_name}" + for app_label, model_name in ApiKeyMatch.objects.values_list( + "search_model__app_label", "search_model__model" + ).distinct() + ] + current_action = None if "CURRENT_ACTION" in request.session: dct["CURRENT_ACTION"] = request.session["CURRENT_ACTION"] |