From fa7b4ec2976ec3cef5c0fb8daac7ae799f8ea20b Mon Sep 17 00:00:00 2001 From: "holger.trampe" Date: Fri, 29 Jan 2021 08:11:23 +0100 Subject: [PATCH] Kalenderterror die dritte --- users/views.py | 82 ++++++++++++++++++++++++++++---------------------- 1 file changed, 46 insertions(+), 36 deletions(-) diff --git a/users/views.py b/users/views.py index a422065..c27744e 100644 --- a/users/views.py +++ b/users/views.py @@ -133,59 +133,69 @@ def getICSFileAll(request, ag): def getICSFileEx(request, code, ag): - try: - agency = Agency.objects.get(pk=ag) + if(request.user.is_anonymous and request.method == "GET"): + try: + agency = Agency.objects.get(pk=ag) - if agency != None and agency.agencycal_publicstatus == 1 and code == agency.agencycalurl: - c = Calendar() - absencedays = Absence.objects.filter(agency=ag) - for ab in absencedays: - e = Event() - e.name = ab.user.first_name + " " + ab.user.last_name + " abwesend " - e.uid = "da-ab-" + str(ab.pk) - e.begin = ab.start - e.end = ab.end - e.allday = True - c.events.add(e) - return HttpResponse(c, content_type='text/calendar') - else: - print("AG NICHT GEFUNDEN!") + if agency != None and agency.agencycal_publicstatus == 1 and code == agency.agencycalurl: + c = Calendar() + absencedays = Absence.objects.filter(agency=ag) + for ab in absencedays: + e = Event() + e.name = ab.user.first_name + " " + ab.user.last_name + " abwesend " + e.uid = "da-ab-" + str(ab.pk) + e.begin = ab.start + e.end = ab.end + e.allday = True + c.events.add(e) + return HttpResponse(c, content_type='text/calendar') + else: + realm = "" + response = HttpResponse() + response.status_code = 401 + return response + except: realm = "" response = HttpResponse() response.status_code = 401 return response - except: + else: realm = "" response = HttpResponse() - response.status_code = 401 + response.status_code = 404 return response def getICSFileExAll(request, code, ag): - try: - agency = Agency.objects.get(pk=ag) - if agency != None and agency.agencycal_publicstatus == 1 and code == agency.agencycalurl_all: - c = Calendar() - absencedays = Absence.objects.filter(agency=ag) - for ab in absencedays: - e = Event() - e.name = ab.user.first_name + " " + ab.user.last_name + " | " + ab.reason.name - e.uid = "da-ab-" + str(ab.pk) - e.begin = ab.start - e.end = ab.end - e.allday = True - c.events.add(e) - return HttpResponse(c, content_type='text/calendar') - else: - print("AG NICHT GEFUNDEN!") + if(request.user.is_anonymous and request.method == "GET"): + try: + agency = Agency.objects.get(pk=ag) + if agency != None and agency.agencycal_publicstatus == 1 and code == agency.agencycalurl_all: + c = Calendar() + absencedays = Absence.objects.filter(agency=ag) + for ab in absencedays: + e = Event() + e.name = ab.user.first_name + " " + ab.user.last_name + " | " + ab.reason.name + e.uid = "da-ab-" + str(ab.pk) + e.begin = ab.start + e.end = ab.end + e.allday = True + c.events.add(e) + return HttpResponse(c, content_type='text/calendar') + else: + realm = "" + response = HttpResponse() + response.status_code = 401 + return response + except: realm = "" response = HttpResponse() response.status_code = 401 return response - except: + else: realm = "" response = HttpResponse() - response.status_code = 401 + response.status_code = 404 return response