You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
1.5 KiB
29 lines
1.5 KiB
from django.shortcuts import render_to_response
|
|
from django.template import RequestContext
|
|
from django.contrib.auth.decorators import login_required
|
|
from django.db.models import Count
|
|
from main.models import Plugin, PluginPermission
|
|
|
|
|
|
from buyable.models import Purchase, Buyable
|
|
|
|
@login_required
|
|
def startpage(request):
|
|
''' Diese Funktion wird wahrscheinlich viel Last erzeugen, da
|
|
sie ueber mehrere Tabellen joined,filtered und wieder reduced.
|
|
'''
|
|
allMost = Purchase.objects.filter(isDeposit=False).values('buyable__name').annotate(num_buys=Count('buyable')).order_by('-num_buys')
|
|
usersMost = Purchase.objects.filter(isDeposit=False).values('buyable__name').filter(order__user=request.user.id).annotate(num_buys=Count('buyable')).order_by('-num_buys')
|
|
usersLast = Purchase.objects.filter(isDeposit=False).values('buyable__name').filter(order__user=request.user.id).order_by('-order__dateTime')
|
|
return render_to_response("main/startpage.html", {'allMost' : allMost,'usersMost': usersMost, 'usersLast' : usersLast}, RequestContext(request))
|
|
|
|
def register(request):
|
|
return render_to_response("registration/register.html", RequestContext(request))
|
|
|
|
@login_required
|
|
def settings(request):
|
|
plugins = Plugin.objects.all()
|
|
unallowed = Plugin.objects.exclude(pluginpermission__user=request.user)
|
|
perms = PluginPermission.objects.filter(user=request.user)
|
|
return render_to_response("settings/settings.html", {'plugins': plugins, 'unallowedplugins': unallowed, 'pluginpermissions': perms}, RequestContext(request))
|