From c32e1533790886aed04669043bd235c5c8a6fe5c Mon Sep 17 00:00:00 2001 From: Jacek Lebioda <jacek.lebioda.001@student.uni.lu> Date: Thu, 12 Jan 2017 19:49:22 +0100 Subject: [PATCH] Saturated views with logged user information --- smash/web/views.py | 85 +++++++++++++++++++++++++--------------------- 1 file changed, 46 insertions(+), 39 deletions(-) diff --git a/smash/web/views.py b/smash/web/views.py index 0285bffd..9e5ae6b1 100644 --- a/smash/web/views.py +++ b/smash/web/views.py @@ -23,40 +23,48 @@ def login(request): context['state'] = request.GET.get('error') if request.method == "POST" and request.POST: - state = do_login(request) - if state[0] == True: + state, message = do_login(request) + if state == True: return redirect(assignments) else: - return redirect('/login?error=' + state[1]) + return redirect('/login?error=' + message) return render(request, "login.html", context) -def logout(request): - state = do_logout(request) - return redirect('/login?error=' + state[1]) +""" +Saturates response with information about logged user +""" +def wrap_response(request, template, params): + person, role = Worker.get_details(request.user) + final_params = params.copy() + final_params.update({ + 'person' : person, + 'role': role + }) -def assignments(request): - template = loader.get_template("assignments/index.html") - details = Worker.get_details(request.user) + template = loader.get_template(template) - # TODO: Make a details decorator + return HttpResponse(template.render(final_params), request) - return HttpResponse(template.render({ - 'person' : details[0], - 'role': details[1] - }), request) + +def logout(request): + state, message = do_logout(request) + return redirect('/login?error=' + message) + + +def assignments(request): + return wrap_response(request, 'assignments/index.html', {}) def subjects(request): subjects_list = Subject.objects.order_by('-lastName') - template = loader.get_template("subjects/index.html") context = { 'subjects_list': subjects_list } - return HttpResponse(template.render(context,request)) + return wrap_response(request, 'subjects/index.html', context) def subjectadd(request): @@ -68,14 +76,14 @@ def subjectadd(request): return redirect(subjects) else: formset = subjectFormSet(queryset=Subject.objects.none()) - return render(request, 'subjects/add.html', {'formset': formset}) + + return wrap_response(request, 'subjects/add.html', {'formset': formset}) def subjectdet(request, ids): form = SubjectDetailForm(instance=Subject.objects.get(id=ids)) - - - return render(request, 'subjects/details.html', {'form': form}) + + return wrap_response(request, 'subjects/details.html', {'form': form}) def subjectedit(request, ids): @@ -86,7 +94,7 @@ def subjectedit(request, ids): return redirect(subjects) else: form = SubjectEditForm(instance=Subject.objects.get(id=ids)) - return render(request, 'subjects/edit.html', {'form': form}) + return wrap_response(request, 'subjects/edit.html', {'form': form}) def subjectdelete(request, ids): @@ -95,17 +103,17 @@ def subjectdelete(request, ids): return redirect(subjects) else: form = SubjectEditForm(instance=Subject.objects.get(id=ids)) - return render(request, 'subjects/delete.html', {'form': form}) + return wrap_response(request, 'subjects/delete.html', {'form': form}) def doctors(request): doctors_list = Worker.objects.order_by('-lastName') - template = loader.get_template("doctors/index.html") context = { 'doctors_list': doctors_list } - return HttpResponse(template.render(context,request)) + return wrap_response(request, "doctors/index.html", context) + def doctoradd(request): WorkerFormSet = modelformset_factory(Worker , fields='__all__') @@ -116,10 +124,10 @@ def doctoradd(request): return redirect(doctors) else: formset = WorkerFormSet(queryset=Worker.objects.none()) - return render(request, 'doctors/add.html', {'formset': formset}) + return wrap_response(request, 'doctors/add.html', {'formset': formset}) + def doctoredit(request, ids): - WorkerFormSet = modelformset_factory(Worker , fields='__all__') if request.method == 'POST': formset = WorkerEditForm(request.POST, request.FILES, instance=Worker.objects.get(id=ids)) if formset.is_valid(): @@ -127,12 +135,14 @@ def doctoredit(request, ids): return redirect(doctors) else: formset = WorkerEditForm(instance=Worker.objects.get(id=ids)) - return render(request, 'doctors/edit.html', {'formset': formset}) + return wrap_response(request, 'doctors/edit.html', {'formset': formset}) + def doctordetails(request, ids): - WorkerFormSet = modelformset_factory(Worker , fields='__all__') formset = WorkerDetailForm(instance=Worker.objects.get(id=ids)) - return render(request, 'doctors/details.html', {'formset': formset}) + + return wrap_response(request, 'doctors/details.html', {'formset': formset}) + def doctoravail(request, ids): avall = Avaibility.objects.filter(person = ids) @@ -144,7 +154,6 @@ def doctoravail(request, ids): avfri = avall.filter(dayNo=5) avsat = avall.filter(dayNo=6) - template = loader.get_template("doctors/availdex.html") context = { 'avmon': avmon, 'avtue': avtue, @@ -155,28 +164,26 @@ def doctoravail(request, ids): 'ids': ids } - return HttpResponse(template.render(context,request)) + return wrap_response(request, "doctors/availdex.html", context) + def availdelete(request, id): return redirect(doctors) + def equipment_def(request): equipment_list = Item.objects.order_by('-name') - template = loader.get_template("eqdef/index.html") context = { 'equipment_list': equipment_list } - return HttpResponse(template.render(context,request)) + return wrap_response(request, "eqdef/index.html", context) def equipment_and_rooms(request): - template = loader.get_template("equipment_and_rooms/index.html") - return HttpResponse(template.render({ - }), request) + return wrap_response(request, "equipment_and_rooms/index.html", {}) def mail_templates(request): - template = loader.get_template("mail_templates/index.html") - return HttpResponse(template.render({ - }), request) + return wrap_response(request, "mail_templates/index.html", {}) + -- GitLab