diff --git a/dasettings/templates/dasettings/freedays_management.html b/dasettings/templates/dasettings/freedays_management.html index 0f9c528..911568a 100644 --- a/dasettings/templates/dasettings/freedays_management.html +++ b/dasettings/templates/dasettings/freedays_management.html @@ -29,7 +29,7 @@ {% if user|usergperm:"moduleorganizer" %} - + {% endif %} diff --git a/dasettings/views.py b/dasettings/views.py index 2601387..29fb9a3 100644 --- a/dasettings/views.py +++ b/dasettings/views.py @@ -393,9 +393,21 @@ def FreeDayAdd(request): freedayform = AddFreeDayForm(request.POST, instance=request.user.profile.agency) if freedayform.is_valid(): - fd = FreeDays(agency=request.user.profile.agency, day=freedayform.cleaned_data['day'], year=freedayform.cleaned_data['day'].year, name=freedayform.cleaned_data['name']).save() + allfreedays = FreeDays.objects.filter(agency=request.user.profile.agency) - messages.success(request, f'Freier Tag hinzugefügt') + for day in allfreedays: + double = False + if day.day == freedayform.cleaned_data['day'] and day.year == freedayform.cleaned_data['day'].year: + double = True + + + if double == False: + fd = FreeDays(agency=request.user.profile.agency, day=freedayform.cleaned_data['day'], year=freedayform.cleaned_data['day'].year, name=freedayform.cleaned_data['name']).save() + + messages.success(request, f'Freier Tag hinzugefügt') + else: + messages.warning(request, f'Am ' + str(freedayform.cleaned_data['day']) + " gibt es bereits einen Eintrag!") + context = { "active_link" : "dasettings", } diff --git a/timemanagement/views.py b/timemanagement/views.py index 2571212..2d5fe88 100644 --- a/timemanagement/views.py +++ b/timemanagement/views.py @@ -1066,6 +1066,7 @@ Berücksichtigt sowohl Wochenende als auch in der Agentur hinterlegte Freitage/S def calculateHolidays(request, start, end, start_half, end_half, user): restdays = 0 + #allfreedays = FreeDays.objects.filter(agency=request.user.profile.agency).distinct('start', 'year') allfreedays = FreeDays.objects.filter(agency=request.user.profile.agency) if(end == start): if(start_half): diff --git a/users/views.py b/users/views.py index 548a292..b5316a5 100644 --- a/users/views.py +++ b/users/views.py @@ -41,7 +41,7 @@ from channels_presence.models import Room from channels_presence.models import Presence import channels.layers from datetime import date, timedelta -from timemanagement.models import Workday, Absence, Breaks +from timemanagement.models import Workday, Absence, Breaks, FreeDays import base64 import filetype from django.db.models.signals import m2m_changed @@ -500,7 +500,6 @@ class AgencyCreateView(CreateView): @login_required def dashboard(request): - # UPDATE FUNCTIONS BY NEW MODEL-CHANGES FOR COPIEN SOME DATA toUpdate(request)