This repository has been archived on 2021-06-29. You can view files and clone it, but cannot push or open issues or pull requests.
2014-03-28 12:30:35 +00:00
|
|
|
from django.views.generic import View
|
|
|
|
from django.template import RequestContext
|
|
|
|
from django.shortcuts import render_to_response
|
2014-08-24 13:03:23 +00:00
|
|
|
from django.db.models import Count
|
|
|
|
from shelfzilla.apps.users.models import User
|
|
|
|
from shelfzilla.apps.manga.models import Volume
|
2014-03-28 12:30:35 +00:00
|
|
|
|
|
|
|
|
|
|
|
class HomepageView(View):
|
|
|
|
template = 'homepage/home.html'
|
|
|
|
|
|
|
|
def get(self, request):
|
2014-08-24 13:03:23 +00:00
|
|
|
data = {}
|
|
|
|
from datetime import datetime
|
|
|
|
# TOP 5
|
|
|
|
data['TOP_5_COLLECTORS'] = User.objects.all()\
|
|
|
|
.annotate(num_volumes=Count('have_volumes'))\
|
|
|
|
.order_by('-num_volumes')[:5]
|
|
|
|
|
|
|
|
# Latest manga added
|
|
|
|
data['LATEST_MANGA_ADDED'] = Volume.objects\
|
|
|
|
.filter(release_date__lte=datetime.now())\
|
|
|
|
.order_by('-release_date')[:12]
|
|
|
|
|
|
|
|
ctx = RequestContext(request, data)
|
2014-03-28 12:30:35 +00:00
|
|
|
return render_to_response(self.template, context_instance=ctx)
|