+def login(request):
+ from django.contrib.auth import authenticate
+ from .forms import LoginForm
+
+ fehlertext = ""
+ # if this is a POST request we need to process the form data
+ if request.method == 'POST':
+ # create a form instance and populate it with data from the request:
+ form = LoginForm(request.POST, request.FILES)
+ # check whether it's valid:
+ if form.is_valid():
+ user = authenticate(
+ username = request.POST["name"],
+ password = request.POST["password"],
+ )
+ if user is None:
+ # login fehlgeschlagen
+ fehlertext = "Login fehlgeschlagen"
+
+ else:
+ next = request.POST.get("next", None)
+ if next:
+ return HttpResponseRedirect(next)
+ else:
+ return HttpResponseRedirect('/')
+
+ # if a GET (or any other method) we'll create a blank form
+ else:
+ next = None
+ verein = ""
+ next = request.GET.get("next", None)
+ if next:
+ path_elems = next.split("/")
+ verein = path_elems[1]
+ form = LoginForm(initial={'next': next, 'verein': verein})
+
+ return render(request, 'login.html', {'form': form, 'fehlertext': fehlertext})
+