@ -10,7 +10,7 @@ from django.contrib.auth.forms import PasswordChangeForm
from django . contrib . auth . decorators import login_required
from django . db . models import Count , Max
from django . http import HttpResponseRedirect
from django . shortcuts import render _to_response
from django . shortcuts import render
from django . template import RequestContext
from django . core . urlresolvers import reverse
import django . contrib . auth . views
@ -18,7 +18,7 @@ import django.contrib.auth.views
from buyable . models import Purchase , Buyable , BuyableType
from main . helper import getUserFromAuthblob
from main . models import Plugin , PluginPermission
from settings import SNACK_TYPE_ID , DRINK_TYPE_ID
from k4ever. settings import SNACK_TYPE_ID , DRINK_TYPE_ID
@login_required
def startpage ( request ) :
@ -52,12 +52,12 @@ def startpage(request):
buyables = buyables . annotate ( max_dateTime = Max ( ' purchase__order__dateTime ' ) )
context [ context_vars [ 2 ] ] = buyables . order_by ( ' -max_dateTime ' ) [ : 5 ]
return render _to_response( " main/startpage.html " , context , RequestContext ( request ) )
return render ( request , " main/startpage.html " , context )
def register ( request ) :
""" The " no registration available " page... """
return render _to_response( " registration/register.html " , RequestContext ( request ) )
return render ( request , " registration/register.html " )
def getPluginDict ( request ) :
@ -83,7 +83,7 @@ def settings(request):
form . save ( )
pdict [ ' password_success ' ] = " Es wurde ein neues Passwort gesetzt. "
pdict [ ' form ' ] = form
return render _to_response( " settings/settings.html " , pdict , RequestContext ( request ) )
return render ( request , " settings/settings.html " , pdict )
@login_required
def pluginPermission ( request , method , pluginId ) :
@ -94,14 +94,14 @@ def pluginPermission(request, method, pluginId):
except Plugin . DoesNotExist :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Ein Plugin mit der angegebenen ID existiert nicht "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
if method == " allow " :
try :
p = PluginPermission . objects . get ( user = request . user , plugin = plugin )
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Dieses Plugin wurde bereits erlaubt "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
except PluginPermission . DoesNotExist :
p = PluginPermission ( user = request . user , plugin = plugin )
p . save ( )
@ -112,7 +112,7 @@ def pluginPermission(request, method, pluginId):
except PluginPermission . DoesNotExist :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Keine Berechtigungen für dieses Plugin gefunden - kann also auch nicht zurückgezogen werden "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
return HttpResponseRedirect ( " /user/settings/ " )
@login_required
@ -128,7 +128,7 @@ def pluginAuthblob(request, pluginId):
except Plugin . DoesNotExist :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Ein Plugin mit der angegebenen ID existiert nicht "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
# find plugin permission for user
p = None
@ -137,13 +137,13 @@ def pluginAuthblob(request, pluginId):
except PluginPermission . DoesNotExist :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Vor dem editieren vom Authblob muss das Plugin ersteinmal erlaubt werden "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
# has the user write access to the authblob?
if not p . plugin . userCanWriteAuthblob or not " authblob " in request . POST :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Der Authblob darf für dieses Plugin nicht vom User verändert werden (oder der Authblob war kaputt) "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
# clean authblob \r\n ==> \n
authblob = request . POST [ " authblob " ] . replace ( " \r \n " , " \n " )
@ -152,14 +152,14 @@ def pluginAuthblob(request, pluginId):
if p . plugin . maxLinesPerAuthblob > 0 and ( authblob . rstrip ( ) . count ( " \n " ) + 1 ) > p . plugin . maxLinesPerAuthblob :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Der Authblob darf maximal %d Zeilen haben " % ( p . plugin . maxLinesPerAuthblob , )
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
# check, if this is equal to the old users plugin
pluginsWithAuthblob = PluginPermission . objects . filter ( plugin = plugin , user = request . user , authblob__exact = authblob )
if pluginsWithAuthblob . count ( ) > 0 :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Das ist der gleiche Authblob, den du vorher auch hattest. "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
# check for every authblob-line, if there is somebody who has it (if unique)
if p . plugin . uniqueAuthblob :
@ -173,13 +173,13 @@ def pluginAuthblob(request, pluginId):
else :
d = getPluginDict ( request )
d [ ' pluginerror ' ] = " Achtung! Dein Authblob (bzw. eine der Zeile davon) wird bereits von einer anderen Person benutzt. Bitte wähle einen anderen (eindeutigen) Authblob! "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
p . authblob = authblob
p . save ( )
d = getPluginDict ( request )
d [ ' pluginmsg ' ] = " Authblob erfolgreich geändert "
return render _to_response( " settings/settings.html " , d , RequestContext ( request ) )
return render ( request , " settings/settings.html " , d )
def login ( request ) :