diff --git a/vrobbler/apps/music/views.py b/vrobbler/apps/music/views.py index 4b971c0..eb6fd53 100644 --- a/vrobbler/apps/music/views.py +++ b/vrobbler/apps/music/views.py @@ -8,6 +8,7 @@ from scrobbles.stats import get_scrobble_count_qs class TrackListView(generic.ListView): model = Track + paginate_by = 200 def get_queryset(self): return get_scrobble_count_qs(user=self.request.user).order_by( @@ -30,10 +31,18 @@ class TrackDetailView(generic.DetailView): class ArtistListView(generic.ListView): model = Artist + paginate_by = 100 def get_queryset(self): return super().get_queryset().order_by("name") + def get_context_data(self, *, object_list=None, **kwargs): + context_data = super().get_context_data( + object_list=object_list, **kwargs + ) + context_data['view'] = self.request.GET.get('view') + return context_data + class ArtistDetailView(generic.DetailView): model = Artist @@ -49,6 +58,17 @@ class ArtistDetailView(generic.DetailView): class AlbumListView(generic.ListView): model = Album + paginate_by = 50 + + def get_queryset(self): + return super().get_queryset().order_by("name") + + def get_context_data(self, *, object_list=None, **kwargs): + context_data = super().get_context_data( + object_list=object_list, **kwargs + ) + context_data['view'] = self.request.GET.get('view') + return context_data class AlbumDetailView(generic.DetailView): diff --git a/vrobbler/apps/scrobbles/templatetags/__init__.py b/vrobbler/apps/scrobbles/templatetags/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/vrobbler/apps/scrobbles/templatetags/urlreplace.py b/vrobbler/apps/scrobbles/templatetags/urlreplace.py new file mode 100644 index 0000000..36cb652 --- /dev/null +++ b/vrobbler/apps/scrobbles/templatetags/urlreplace.py @@ -0,0 +1,10 @@ +from django import template + +register = template.Library() + + +@register.simple_tag(takes_context=True) +def urlreplace(context, **kwargs): + query = context['request'].GET.copy() + query.update(kwargs) + return query.urlencode() diff --git a/vrobbler/templates/base.html b/vrobbler/templates/base.html index 7a9b537..3e23444 100644 --- a/vrobbler/templates/base.html +++ b/vrobbler/templates/base.html @@ -212,6 +212,7 @@ Dashboard + {% if user.is_authenticated %} + - {% if user.is_authenticated %}