diff --git a/aircox/context_processors/__init__.py b/aircox/context_processors/__init__.py new file mode 100644 index 0000000..e79119a --- /dev/null +++ b/aircox/context_processors/__init__.py @@ -0,0 +1,3 @@ +def station(request): + station = request.station + return {"station": station, "audio_streams": station.streams} diff --git a/aircox/tests/views/test_base.py b/aircox/tests/views/test_base.py index 4be01a7..9c3c013 100644 --- a/aircox/tests/views/test_base.py +++ b/aircox/tests/views/test_base.py @@ -54,13 +54,11 @@ class TestBaseView: context = base_view.get_context_data() assert context == { "view": base_view, - "station": station, "page": None, # get_page() returns None "has_sidebar": base_view.has_sidebar, "has_filters": False, "sidebar_object_list": published_pages[: base_view.list_count], "sidebar_list_url": base_view.get_sidebar_url(), - "audio_streams": station.streams, "model": base_view.model, } diff --git a/aircox/views/base.py b/aircox/views/base.py index 6e6d597..c971dcc 100644 --- a/aircox/views/base.py +++ b/aircox/views/base.py @@ -33,7 +33,6 @@ class BaseView(TemplateResponseMixin, ContextMixin): return None def get_context_data(self, **kwargs): - kwargs.setdefault("station", self.station) kwargs.setdefault("page", self.get_page()) kwargs.setdefault("has_filters", self.has_filters) @@ -44,9 +43,6 @@ class BaseView(TemplateResponseMixin, ContextMixin): kwargs["sidebar_object_list"] = sidebar_object_list[: self.list_count] kwargs["sidebar_list_url"] = self.get_sidebar_url() - if "audio_streams" not in kwargs: - kwargs["audio_streams"] = self.station.streams - if "model" not in kwargs: model = getattr(self, "model", None) or hasattr(self, "object") and type(self.object) kwargs["model"] = model diff --git a/instance/settings/base.py b/instance/settings/base.py index d18dbd6..5881359 100755 --- a/instance/settings/base.py +++ b/instance/settings/base.py @@ -237,6 +237,7 @@ TEMPLATES = [ "django.template.context_processors.static", "django.template.context_processors.tz", "django.contrib.messages.context_processors.messages", + "aircox.context_processors.station", ), "loaders": ( "django.template.loaders.filesystem.Loader",