Bugs
This commit is contained in:
parent
e107a2cf7a
commit
afc9c27a06
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -13,22 +13,22 @@ class News(models.Model):
|
||||||
name = models.CharField(max_length=200, blank=False, default="")
|
name = models.CharField(max_length=200, blank=False, default="")
|
||||||
#content = RichTextUploadingField(blank=True, verbose_name='Inhalt')
|
#content = RichTextUploadingField(blank=True, verbose_name='Inhalt')
|
||||||
content = models.TextField(blank=True, verbose_name='Inhalt', default="")
|
content = models.TextField(blank=True, verbose_name='Inhalt', default="")
|
||||||
|
|
||||||
created_by = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
|
created_by = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
|
||||||
created_date = models.DateTimeField(default=timezone.now, blank=True)
|
created_date = models.DateTimeField(default=timezone.now, blank=True)
|
||||||
|
|
||||||
go_online_on = models.DateTimeField(default=timezone.now, blank=True)
|
go_online_on = models.DateTimeField(default=timezone.now, blank=True)
|
||||||
# Default date plus two weeks
|
# Default date plus two weeks
|
||||||
go_offline_on = models.DateTimeField(default=timezone.now()+timedelta(days=14), blank=True)
|
go_offline_on = models.DateTimeField(default=timezone.now()+timedelta(days=14), blank=True, null=True)
|
||||||
|
|
||||||
last_modified_by = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, related_name='news_mod_by', default=None)
|
last_modified_by = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, related_name='news_mod_by', default=None)
|
||||||
last_modified_on = models.DateTimeField(default=timezone.now, blank=True)
|
last_modified_on = models.DateTimeField(default=timezone.now, blank=True)
|
||||||
|
|
||||||
agnotify = models.BooleanField(default=True)
|
agnotify = models.BooleanField(default=True)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f'{self.name}'
|
return f'{self.name}'
|
||||||
|
|
||||||
# Hier Path für Templates des Models mit Parametern
|
# Hier Path für Templates des Models mit Parametern
|
||||||
def get_absolute_url(self):
|
def get_absolute_url(self):
|
||||||
return reverse('news-update', kwargs={'pk':self.pk})
|
return reverse('news-update', kwargs={'pk':self.pk})
|
||||||
|
|
|
||||||
|
|
@ -16,8 +16,8 @@ class NewsManagement(LoginRequiredMixin, ListView):
|
||||||
# Adding active_link
|
# Adding active_link
|
||||||
# Loading only user same agency
|
# Loading only user same agency
|
||||||
# Change context and return for template-data
|
# Change context and return for template-data
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
filterdate = timezone.now()
|
filterdate = timezone.now()
|
||||||
news = News.objects.filter(agency__pk=self.request.user.profile.agency.pk).filter(go_online_on__lt=filterdate).filter(go_offline_on__gt=filterdate).order_by('-created_date')
|
news = News.objects.filter(agency__pk=self.request.user.profile.agency.pk).filter(go_online_on__lt=filterdate).filter(go_offline_on__gt=filterdate).order_by('-created_date')
|
||||||
news_arch = News.objects.filter(agency__pk=self.request.user.profile.agency.pk).filter(go_offline_on__lt=filterdate).order_by('-created_date')
|
news_arch = News.objects.filter(agency__pk=self.request.user.profile.agency.pk).filter(go_offline_on__lt=filterdate).order_by('-created_date')
|
||||||
|
|
||||||
|
|
@ -28,7 +28,7 @@ class NewsManagement(LoginRequiredMixin, ListView):
|
||||||
return context
|
return context
|
||||||
'''
|
'''
|
||||||
class NewsAddNews(LoginRequiredMixin, CreateView):
|
class NewsAddNews(LoginRequiredMixin, CreateView):
|
||||||
model = News
|
model = News
|
||||||
fields = ['name', 'content','go_online_on', 'go_offline_on']
|
fields = ['name', 'content','go_online_on', 'go_offline_on']
|
||||||
success_url = '/dashboard/news/'
|
success_url = '/dashboard/news/'
|
||||||
'''
|
'''
|
||||||
|
|
@ -37,18 +37,18 @@ def NewsAdd(request):
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
normalForm = NewsAddNews(request.POST, instance=request.user)
|
normalForm = NewsAddNews(request.POST, instance=request.user)
|
||||||
#editorForm = NewsAddNewsEditor(request.POST, instance=request.user)
|
#editorForm = NewsAddNewsEditor(request.POST, instance=request.user)
|
||||||
|
|
||||||
#if editorForm.is_valid() and normalForm.is_valid():
|
#if editorForm.is_valid() and normalForm.is_valid():
|
||||||
if normalForm.is_valid():
|
if normalForm.is_valid():
|
||||||
normalForm.agency = request.user.profile.agency
|
normalForm.agency = request.user.profile.agency
|
||||||
normalForm.created_by = request.user
|
normalForm.created_by = request.user
|
||||||
normalForm.last_modified_by = request.user
|
normalForm.last_modified_by = request.user
|
||||||
normalForm.save()
|
normalForm.save()
|
||||||
#editorForm.save()
|
#editorForm.save()
|
||||||
new_news = News()
|
new_news = News()
|
||||||
new_news.agency = request.user.profile.agency
|
new_news.agency = request.user.profile.agency
|
||||||
new_news.created_by = request.user
|
new_news.created_by = request.user
|
||||||
|
|
||||||
new_news.last_modified_by = request.user
|
new_news.last_modified_by = request.user
|
||||||
new_news.created_date = datetime.now()
|
new_news.created_date = datetime.now()
|
||||||
new_news.last_modified_on = datetime.now()
|
new_news.last_modified_on = datetime.now()
|
||||||
|
|
@ -57,15 +57,15 @@ def NewsAdd(request):
|
||||||
new_news.content = normalForm.cleaned_data['content']
|
new_news.content = normalForm.cleaned_data['content']
|
||||||
new_news.go_online_on = normalForm.cleaned_data['go_online_on']
|
new_news.go_online_on = normalForm.cleaned_data['go_online_on']
|
||||||
new_news.go_offline_on = normalForm.cleaned_data['go_offline_on']
|
new_news.go_offline_on = normalForm.cleaned_data['go_offline_on']
|
||||||
|
|
||||||
new_news.save()
|
new_news.save()
|
||||||
messages.success(request, f'News gespeichert!')
|
messages.success(request, f'News gespeichert!')
|
||||||
return redirect('users-dashboard')
|
return redirect('users-dashboard')
|
||||||
|
|
||||||
else:
|
else:
|
||||||
normalForm = NewsAddNews(instance=request.user)
|
normalForm = NewsAddNews(instance=request.user)
|
||||||
#editorForm = NewsAddNewsEditor(instance=request.user)
|
#editorForm = NewsAddNewsEditor(instance=request.user)
|
||||||
|
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
'normalForm' : normalForm,
|
'normalForm' : normalForm,
|
||||||
|
|
@ -80,23 +80,23 @@ def NewsUpdate(request, id):
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
normalForm = NewsAddNews(request.POST, instance=news)
|
normalForm = NewsAddNews(request.POST, instance=news)
|
||||||
#editorForm = NewsAddNewsEditor(request.POST, instance=news)
|
#editorForm = NewsAddNewsEditor(request.POST, instance=news)
|
||||||
|
|
||||||
if normalForm.is_valid():
|
if normalForm.is_valid():
|
||||||
news = News.objects.get(pk=id, agency=request.user.profile.agency)
|
news = News.objects.get(pk=id, agency=request.user.profile.agency)
|
||||||
news.last_modified_by = request.user
|
news.last_modified_by = request.user
|
||||||
news.last_modified_on = datetime.now()
|
news.last_modified_on = datetime.now()
|
||||||
news.go_online_on = normalForm.cleaned_data['go_online_on']
|
news.go_online_on = normalForm.cleaned_data['go_online_on']
|
||||||
news.go_offline_on = normalForm.cleaned_data['go_offline_on']
|
news.go_offline_on = normalForm.cleaned_data['go_offline_on']
|
||||||
news.name = normalForm.cleaned_data['name']
|
news.name = normalForm.cleaned_data['name']
|
||||||
news.content = normalForm.cleaned_data['content']
|
news.content = normalForm.cleaned_data['content']
|
||||||
news.save()
|
news.save()
|
||||||
messages.success(request, f'News aktualisiert!')
|
messages.success(request, f'News aktualisiert!')
|
||||||
return redirect('/news')
|
return redirect('/news')
|
||||||
|
|
||||||
else:
|
else:
|
||||||
normalForm = NewsAddNews(instance=news)
|
normalForm = NewsAddNews(instance=news)
|
||||||
#editorForm = NewsAddNewsEditor(instance=news)
|
#editorForm = NewsAddNewsEditor(instance=news)
|
||||||
|
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
'normalForm' : normalForm,
|
'normalForm' : normalForm,
|
||||||
|
|
@ -109,20 +109,20 @@ def NewsUpdate(request, id):
|
||||||
class NewsDeleteView(LoginRequiredMixin, DeleteView):
|
class NewsDeleteView(LoginRequiredMixin, DeleteView):
|
||||||
model = News
|
model = News
|
||||||
success_url = '/news'
|
success_url = '/news'
|
||||||
template_name = 'news/news_confirm_delete.html'
|
template_name = 'news/news_confirm_delete.html'
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
context = super(NewsDeleteView, self).get_context_data(**kwargs)
|
context = super(NewsDeleteView, self).get_context_data(**kwargs)
|
||||||
context['active_link'] = 'newsmanagement'
|
context['active_link'] = 'newsmanagement'
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
def NewsSingle(request, pk):
|
def NewsSingle(request, pk):
|
||||||
news = News.objects.get(pk=pk, agency=request.user.profile.agency)
|
news = News.objects.get(pk=pk, agency=request.user.profile.agency)
|
||||||
context = {
|
context = {
|
||||||
'active_link':'dashboard',
|
'active_link':'dashboard',
|
||||||
'news' : news
|
'news' : news
|
||||||
}
|
}
|
||||||
|
|
||||||
return render(request, 'news/news_single.html', context)
|
return render(request, 'news/news_single.html', context)
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -427,15 +427,16 @@ def isfreedayname(user, daytocheck):
|
||||||
# RETURN ALL ABSENCE ELEMENTS FOR THAT DAY
|
# RETURN ALL ABSENCE ELEMENTS FOR THAT DAY
|
||||||
@register.simple_tag
|
@register.simple_tag
|
||||||
def getabscenceday(loggeduser, user, daytocheck):
|
def getabscenceday(loggeduser, user, daytocheck):
|
||||||
|
|
||||||
returnstat = False
|
returnstat = False
|
||||||
if(loggeduser.has_perm("users.absencemanager")):
|
if(loggeduser.has_perm("users.absencemanager")):
|
||||||
absencedays = Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, start=daytocheck) | (Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, start__lt=daytocheck) & Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, end__gt=daytocheck)) | Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, end=daytocheck)
|
absencedays = Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, start=daytocheck) | (Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, start__lt=daytocheck) & Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, end__gt=daytocheck)) | Absence.objects.filter(confirm_status=0, agency=user.profile.agency, user=user, end=daytocheck)
|
||||||
else:
|
else:
|
||||||
absencedays = (Absence.objects.filter(agency=user.profile.agency, user=loggeduser, confirm_status=1) | Absence.objects.filter(agency=user.profile.agency, user=user, confirm_status=0)) & (Absence.objects.filter(agency=user.profile.agency, user=user, start=daytocheck) | (Absence.objects.filter(agency=user.profile.agency, user=user, start__lt=daytocheck, confirm_status=0) & Absence.objects.filter(agency=user.profile.agency, user=user, end__gt=daytocheck)) | Absence.objects.filter(agency=user.profile.agency, user=user, end=daytocheck, confirm_status=0) )
|
absencedays = (Absence.objects.filter(agency=user.profile.agency, user=loggeduser, confirm_status=1) | Absence.objects.filter(agency=user.profile.agency, user=user, confirm_status=0)) & (Absence.objects.filter(agency=user.profile.agency, user=user, start=daytocheck) | (Absence.objects.filter(agency=user.profile.agency, user=user, start__lt=daytocheck, confirm_status=0) & Absence.objects.filter(agency=user.profile.agency, user=user, end__gt=daytocheck)) | Absence.objects.filter(agency=user.profile.agency, user=user, end=daytocheck, confirm_status=0)) | ((Absence.objects.filter(agency=user.profile.agency, user=user, start__lt=daytocheck, confirm_status=1) & Absence.objects.filter(agency=user.profile.agency, user=user, end__gt=daytocheck)) | Absence.objects.filter(agency=user.profile.agency, user=user, end=daytocheck, confirm_status=1))
|
||||||
if(len(absencedays) > 0):
|
if(len(absencedays) > 0):
|
||||||
returnstat = list(absencedays)[0]
|
returnstat = list(absencedays)[0]
|
||||||
|
|
||||||
|
print(absencedays)
|
||||||
|
|
||||||
return returnstat
|
return returnstat
|
||||||
|
|
||||||
@register.simple_tag
|
@register.simple_tag
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -239,7 +239,7 @@
|
||||||
|
|
||||||
<div style="" class="sidebar-heading ">
|
<div style="" class="sidebar-heading ">
|
||||||
<!--<span style="float: left"><small>poweder by </small><img src="{% static 'users/img/VVE-Logo.png' %}" width="27%" class="mb-2"></span>-->
|
<!--<span style="float: left"><small>poweder by </small><img src="{% static 'users/img/VVE-Logo.png' %}" width="27%" class="mb-2"></span>-->
|
||||||
<img src="{% static 'users/img/VVE-Logo.png' %}" width="27%" class="mb-2">
|
<a href="https://www.myvve.de/" target="_blank"><img src="{% static 'users/img/VVE-Logo.png' %}" width="27%" class="mb-2"></a>
|
||||||
<br />
|
<br />
|
||||||
<a style="color: #999; text-decoration: none;" href="{% url 'datenschutzda' %}">Datenschutz</a><br />
|
<a style="color: #999; text-decoration: none;" href="{% url 'datenschutzda' %}">Datenschutz</a><br />
|
||||||
<a style="color: #999; text-decoration: none;" href="{% url 'impressumda' %}">Impressum</a>
|
<a style="color: #999; text-decoration: none;" href="{% url 'impressumda' %}">Impressum</a>
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@
|
||||||
<h4>Passwörter</h4>
|
<h4>Passwörter</h4>
|
||||||
{% if res_pass|length > 0 %}
|
{% if res_pass|length > 0 %}
|
||||||
{% for s in res_pass %}
|
{% for s in res_pass %}
|
||||||
<i class="fas fa-key"></i> <a onclick="javascript:$('#infos_searchres_pass_{{s.pk}}').modal('toggle');" href="#\"><b>{{s.name}}</b></a><br /><br />
|
<i class="fas fa-key"></i> <a onclick="javascript:$('#infos_searchres_pass_{{s.pk}}').modal('toggle');" href="#\"><b>{{s.name}}</b></a><br /><br />
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% else %}
|
{% else %}
|
||||||
<p>Keine Ergebnisse in Passwörtern</p>
|
<p>Keine Ergebnisse in Passwörtern</p>
|
||||||
|
|
@ -101,10 +101,10 @@
|
||||||
<span aria-hidden="true">×</span>
|
<span aria-hidden="true">×</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
{% if agc.personname|length > 0 %}
|
{% if agc.personname|length > 0 %}
|
||||||
Ansprechpartner: {{agc.personname}}<br/>
|
Ansprechpartner: {{agc.personname}}<br/>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if agc.mail|length > 0 %}
|
{% if agc.mail|length > 0 %}
|
||||||
E-Mailadresse: <a href="mailto:{{agc.mail}}">{{agc.mail}}</a><br />
|
E-Mailadresse: <a href="mailto:{{agc.mail}}">{{agc.mail}}</a><br />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
@ -121,7 +121,7 @@
|
||||||
Anmerkungen: {{agc.desc}}<br />
|
Anmerkungen: {{agc.desc}}<br />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-success" data-dismiss="modal">Schließen</button>
|
<button type="button" class="btn btn-success" data-dismiss="modal">Schließen</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -129,8 +129,6 @@
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{% for pass in res_pass %}
|
{% for pass in res_pass %}
|
||||||
<div class="modal fade " id="infos_searchres_pass_{{pass.pk}}" tabindex="-1" role="dialog" data-backdrop="static" aria-hidden="true">
|
<div class="modal fade " id="infos_searchres_pass_{{pass.pk}}" tabindex="-1" role="dialog" data-backdrop="static" aria-hidden="true">
|
||||||
<div class="modal-dialog " role="document">
|
<div class="modal-dialog " role="document">
|
||||||
|
|
@ -141,30 +139,30 @@
|
||||||
<span aria-hidden="true">×</span>
|
<span aria-hidden="true">×</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
{% setbool False %}
|
{% setbool False %}
|
||||||
|
|
||||||
{% for passgroup in pass.visibleby.all %}
|
{% for passgroup in pass.visibleby.all %}
|
||||||
{% if user|has_group:passgroup.group.name %}
|
{% if user|has_group:passgroup.group.name %}
|
||||||
{% setbool True %}
|
{% setbool True %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
{% if pass.visibleby.all|length == 0 %}
|
{% if pass.visibleby.all|length == 0 %}
|
||||||
{% setbool True %}
|
{% setbool True %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% getbool as groupchecker %}
|
{% getbool as groupchecker %}
|
||||||
|
|
||||||
{% if groupchecker %}
|
{% if groupchecker %}
|
||||||
Name: <b>{{pass.name }}</b><br />
|
Name: <b>{{pass.name }}</b><br />
|
||||||
Benutzername: <b/>{{pass.agpass_username }}</b><br />
|
Benutzername: <b/>{{pass.agpass_username }}</b><br />
|
||||||
Passwort: <b/>{{pass.agpass_username }}</b><br />
|
Passwort: <b/>{{pass.compass }}</b><br />
|
||||||
{% else %}
|
{% else %}
|
||||||
Sie dürfen keine Informationen dieses Passwortes einsehen.
|
Sie dürfen keine Informationen dieses Passwortes einsehen.
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-primary" data-dismiss="modal">Schließen</button>
|
<button type="button" class="btn btn-primary" data-dismiss="modal">Schließen</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue