Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/config/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@
"django.contrib.auth.context_processors.auth",
"django.contrib.messages.context_processors.messages",
"core.context_processors.version",
"core.context_processors.saved_views",
],
"builtins": [
"lucide.templatetags.lucide",
Expand Down
15 changes: 15 additions & 0 deletions src/core/context_processors.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

from functools import lru_cache

from .models import SavedView
from .utils import get_datakult_version


Expand All @@ -22,3 +23,17 @@ def version(_request):
A dictionary with the version string.
"""
return {"version": _cached_version()}


def saved_views(request):
"""Add saved views to the template context for authenticated users.

Args:
request: The HTTP request object.

Returns:
A dictionary with the user's saved views queryset.
"""
if request.user.is_authenticated:
return {"saved_views": request.user.saved_views.all()}
return {"saved_views": SavedView.objects.none()}
6 changes: 1 addition & 5 deletions src/core/queries.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from django.db.models import Q

from .filters import apply_filters, extract_filters, get_field_choices, resolve_sorting
from .models import Media, SavedView
from .models import Media


def build_search_queryset(query):
Expand Down Expand Up @@ -55,9 +55,6 @@ def build_media_context(request):
paginator = Paginator(queryset, 20)
page_obj = paginator.get_page(page_number)

# Saved views for the current user
saved_views = request.user.saved_views.all() if request.user.is_authenticated else SavedView.objects.none()

return {
"media_list": page_obj.object_list,
"page_obj": page_obj,
Expand All @@ -67,6 +64,5 @@ def build_media_context(request):
"contributor": contributor,
"tag": tag,
"filters": filters,
"saved_views": saved_views,
**get_field_choices(),
}