diff --git a/vrobbler/apps/scrobbles/views.py b/vrobbler/apps/scrobbles/views.py index 7c9bf5a..5a58c70 100644 --- a/vrobbler/apps/scrobbles/views.py +++ b/vrobbler/apps/scrobbles/views.py @@ -458,7 +458,7 @@ class ChartRecordView(TemplateView): if not date: artist_params = {'user': user, 'media_type': 'Artist'} - context_data['artist_charts'] = { + context_data['current_artist_charts'] = { "today": live_charts(**artist_params, chart_period="today"), "week": live_charts(**artist_params, chart_period="week"), "month": live_charts(**artist_params, chart_period="month"), @@ -466,7 +466,7 @@ class ChartRecordView(TemplateView): } track_params = {'user': user, 'media_type': 'Track'} - context_data['track_charts'] = { + context_data['current_track_charts'] = { "today": live_charts(**track_params, chart_period="today"), "week": live_charts(**track_params, chart_period="week"), "month": live_charts(**track_params, chart_period="month"), @@ -511,21 +511,35 @@ class ChartRecordView(TemplateView): now.month == month and now.year == year and now.day == day ) - media_filter = self.get_media_filter(media_type) - charts = ChartRecord.objects.filter( + media_filter = self.get_media_filter("Track") + track_charts = ChartRecord.objects.filter( + media_filter, user=self.request.user, **params + ).order_by("rank") + media_filter = self.get_media_filter("Artist") + artist_charts = ChartRecord.objects.filter( media_filter, user=self.request.user, **params ).order_by("rank") - if charts.count() == 0 and not in_progress: + if track_charts.count() == 0 and not in_progress: ChartRecord.build( - user=self.request.user, model_str=media_type, **params + user=self.request.user, model_str="Track", **params ) - charts = ChartRecord.objects.filter( + media_filter = self.get_media_filter("Track") + track_charts = ChartRecord.objects.filter( + media_filter, user=self.request.user, **params + ).order_by("rank") + if artist_charts.count() == 0 and not in_progress: + ChartRecord.build( + user=self.request.user, model_str="Artist", **params + ) + media_filter = self.get_media_filter("Artist") + artist_charts = ChartRecord.objects.filter( media_filter, user=self.request.user, **params ).order_by("rank") context_data['media_type'] = media_type - context_data['charts'] = charts + context_data['track_charts'] = track_charts + context_data['artist_charts'] = artist_charts context_data['name'] = " ".join(["Top", media_type, "for", name]) context_data['in_progress'] = in_progress return context_data diff --git a/vrobbler/templates/scrobbles/chart_index.html b/vrobbler/templates/scrobbles/chart_index.html index b580425..bffe630 100644 --- a/vrobbler/templates/scrobbles/chart_index.html +++ b/vrobbler/templates/scrobbles/chart_index.html @@ -4,66 +4,66 @@ {% block lists %}
| Rank | -Artist | -Scrobbles | -
|---|---|---|
| {{chart.rank}} | -{{chart.media_obj}} | -{{chart.count}} | -
| Rank | +Artist | +Scrobbles | +
|---|---|---|
| {{chart.rank}} | +{{chart.media_obj}} | +{{chart.count}} | +
| Rank | -Artist | -Track | -Scrobbles | -
|---|---|---|---|
| {{chart.rank}} | -{{chart.media_obj.artist}} | -{{chart.media_obj.title}} | -{{chart.count}} | -
| Rank | +Track | +Scrobbles | +
|---|---|---|
| {{chart.rank}} | +{{chart.media_obj.title}} | +{{chart.count}} | +