Zwei Bugs und Modul Organizer angepasst

This commit is contained in:
holger.trampe 2020-03-26 21:37:00 +01:00
parent a83616b0fd
commit ce19fc3a3d
7 changed files with 47 additions and 23 deletions

View File

@ -11,6 +11,7 @@ from .models import Message
from django.contrib import messages
from django.http import JsonResponse
from notificsys.models import UserNotification
from django.urls import reverse_lazy
# ALLE STANDARDS EINER AGENTUR
@login_required
@ -118,4 +119,4 @@ def delsinglemessagefromsingle(request, pk):
'usermessages' : Message.objects.filter(target_user=request.user, agency=request.user.profile.agency).order_by('-created_date')
}
return render (request, 'message/message.html', context)
return redirect ("messages")

View File

@ -4,14 +4,14 @@
<div class="content-section">
<h3>Bereiche und Aufgaben von {{user_first_name}} {{user_last_name}}<span style="float: right">
{% if user|usergperm:"usermanager" %}
<button type="button" style="float: right" class="btn btn-secondary btn-sm" onclick="javascript:activateChangeTaskOrder()" data-toggle="tooltip" data-placement="top" title="Reihenfolge der Tätigkeiten anpassen"><small><i class="fas fa-pen"></i></small></button>
<button type="button" id="activatechangingorder" style="float: right" class="btn btn-secondary btn-sm" onclick="javascript:activateChangeTaskOrder()" data-toggle="tooltip" data-placement="top" title="Reihenfolge der Tätigkeiten anpassen"><small><i class="fas fa-pen"></i></small></button>
<button type="button" id="changingorder" style="float: right; display: none" class="btn btn-primary btn-sm" onclick="javascript:activateChangeTaskOrder()" data-toggle="tooltip" data-placement="top" title="Reihenfolge der Tätigkeiten anpassen"><small><i class="fas fa-check"></i></small></button>
{% endif %}
</span></h3>
<hr>
<div class="media">
<img class="img-profile" width="12%" src="{{ imageurl }}" >
<div class="media-body">
<div class="row ml-2">
<div class="col-3">
<h6><b>Name</b></h6>
@ -120,6 +120,8 @@ var sortablearea_ids = [{% for area in areas %} {{area.pk}},{% endfor %}];
if(sortstatus == false){
sortstatus = true;
for(i = 0; i < sortablearea_ids.length; i++){
$("#changingorder").show();
$("#activatechangingorder").hide();
$(".arrows_area_" + sortablearea_ids[i]).show();
$( "#sortarea_" + sortablearea_ids[i] ).sortable("enable");
}
@ -127,6 +129,8 @@ var sortablearea_ids = [{% for area in areas %} {{area.pk}},{% endfor %}];
else{
sortstatus = false;
for(i = 0; i < sortablearea_ids.length; i++){
$("#changingorder").hide();
$("#activatechangingorder").show();
$(".arrows_area_" + sortablearea_ids[i]).hide();
$( "#sortarea_" + sortablearea_ids[i]).sortable("disable");
}
@ -136,6 +140,13 @@ var sortablearea_ids = [{% for area in areas %} {{area.pk}},{% endfor %}];
{% endif %}
$( document ).ready(function() {
for(i = 0; i < sortablearea_ids.length; i++){
$(".arrows_area_" + sortablearea_ids[i]).hide();
$( "#sortarea_" + sortablearea_ids[i]).sortable("disable");
}
});
</script>

View File

@ -22,8 +22,8 @@ class OrganizerAddContact(forms.ModelForm):
class Meta:
model = AGContacts
labels = {
'first_name' : "Vorname",
'last_name' : "Nachname",
'personname' : "Ansprechpartner",
'company' : "Organisation",
'mail' : "E-Mailadresse",
'phone1' : "Telefon 1",
'phone2' : "Telefon 2",
@ -33,12 +33,15 @@ class OrganizerAddContact(forms.ModelForm):
'desc' : "Anmerkungen"
}
fields = ['first_name', 'last_name', 'mail', 'phone1', 'phone2', 'street', 'plz', 'city', 'desc']
fields = ['company', 'personname', 'mail', 'phone1', 'phone2', 'street', 'plz', 'city', 'desc']
def __init__(self, *args, **kwargs):
super(OrganizerAddContact, self).__init__(*args, **kwargs)
self.fields['company'].required = False
self.fields['personname'].required = False
self.fields['mail'].required = False
self.fields['phone1'].required = False
self.fields['phone2'].required = False
self.fields['desc'].widget.attrs['rows'] = 4
@ -50,8 +53,8 @@ class OrganizerUpdateContact(forms.ModelForm):
class Meta:
model = AGContacts
labels = {
'first_name' : "Vorname",
'last_name' : "Nachname",
'personname' : "Ansprechpartner",
'company' : "Organisation",
'mail' : "E-Mailadresse",
'phone1' : "Telefon 1",
'phone2' : "Telefon 2",
@ -61,11 +64,14 @@ class OrganizerUpdateContact(forms.ModelForm):
'desc' : "Anmerkungen"
}
fields = ['first_name', 'last_name', 'mail', 'phone1', 'phone2', 'street', 'plz', 'city', 'desc']
fields = ['company', 'personname', 'mail', 'phone1', 'phone2', 'street', 'plz', 'city', 'desc']
def __init__(self, *args, **kwargs):
super(OrganizerUpdateContact, self).__init__(*args, **kwargs)
self.fields['company'].required = False
self.fields['personname'].required = False
self.fields['mail'].required = False
self.fields['phone1'].required = False
self.fields['phone2'].required = False
self.fields['desc'].widget.attrs['rows'] = 4

View File

@ -40,8 +40,8 @@ class QuickLinks(models.Model):
class AGContacts(models.Model):
agency = models.ForeignKey(Agency, on_delete=models.PROTECT)
first_name = models.CharField(default="", max_length=200, blank=False)
last_name = models.CharField(default="", max_length=200, blank=False)
personname = models.CharField(default="", max_length=200, blank=False)
company = models.CharField(default="", max_length=200, blank=False)
mail = models.CharField(default="", max_length=200, blank=False)
phone1 = models.CharField(default="", max_length=200, blank=False)
phone2 = models.CharField(default="", max_length=200, blank=False)
@ -51,7 +51,7 @@ class AGContacts(models.Model):
desc = models.TextField(max_length=3000, blank=True)
def __str__(self):
return f'{self.first_name + " " + self.last_name}'
return f'{self.first_name}'
def get_absolute_url(self):
return reverse('cont-update', kwargs={'pk':self.pk})

View File

@ -5,7 +5,7 @@
<div class="content-section">
<div class="media">
<div class="media-body">
<h2 class="account-heading">Kontakt {{ object.first_name }} {{ object.last_name }} löschen?</h2>
<h2 class="account-heading">Kontakt {{ object.personname }} löschen?</h2>
<hr>
</div>
</div>

View File

@ -14,12 +14,15 @@
{% for agc in contacts %}
<div class="card col-3 mr-1 mb-2 contactscards" style="float: left;" id="card_{{agc.pk}}" name="{{agc.first_name}} {{agc.last_name}}">
<div class="card col-3 mr-1 mb-2 contactscards" style="float: left;" id="card_{{agc.pk}}" name="{{agc.personname}} {{agc.company}}">
<div class="card-body">
<h5 class="card-title" data-toggle="modal" data-target="#infos_{{agc.pk}}"><a href="#">{{agc.first_name}} {{agc.last_name}}
<h5 class="card-title" data-toggle="modal" data-target="#infos_{{agc.pk}}"><a href="#">{{agc.company}}
</a>
</h5>
<p class="card-text">
{% if agc.personname|length > 0 %}
Ansprechpartner: {{agc.personname}}<br/>
{% endif %}
{% if agc.mail|length > 0 %}
E-Mailadresse: <a href="mailto:{{agc.mail}}">{{agc.mail}}</a><br/>
{% endif %}
@ -44,13 +47,16 @@
<div class="modal-dialog " role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLongTitle">{{agc.first_name}} {{agc.last_name}}</h5>
<h5 class="modal-title" id="exampleModalLongTitle">{{agc.company}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Schließen">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
{% if agc.mail|length > 0 %}
{% if agc.personname|length > 0 %}
Ansprechpartner: {{agc.personname}}<br/>
{% endif %}
{% if agc.mail|length > 0 %}
E-Mailadresse: <a href="mailto:{{agc.mail}}">{{agc.mail}}</a><br />
{% endif %}
{% if agc.phone1|length > 0 %}

View File

@ -20,7 +20,7 @@ class OrganizerManagement(LoginRequiredMixin, ListView):
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
quicklinks = QuickLinks.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('name')
context.update({'active_link' : 'organizer', 'quicklinks' : quicklinks, 'contacts' : AGContacts.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('last_name'), 'agpass' : AGPassword.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('name'), 'agencygroups' : AgencyGroup.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('agencygroupname') })
context.update({'active_link' : 'organizer', 'quicklinks' : quicklinks, 'contacts' : AGContacts.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('personname'), 'agpass' : AGPassword.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('name'), 'agencygroups' : AgencyGroup.objects.filter(agency__pk=self.request.user.profile.agency.pk).order_by('agencygroupname') })
return context
class OrganizerAdd(LoginRequiredMixin, CreateView):