diff --git a/recoverdir/forms.py b/recoverdir/forms.py
index a58c840..7476f5f 100644
--- a/recoverdir/forms.py
+++ b/recoverdir/forms.py
@@ -90,7 +90,7 @@ class StreamingAboF(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(StreamingAboF, self).__init__(*args, **kwargs)
- self.fields['password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort")
+ self.fields['password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort", required=False)
# DigitalAccountsF
class DigitalAccountsF(forms.ModelForm):
@@ -109,7 +109,25 @@ class DigitalAccountsF(forms.ModelForm):
}
def __init__(self, *args, **kwargs):
super(DigitalAccountsF, self).__init__(*args, **kwargs)
- self.fields['password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort")
+ self.fields['password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort", required=False)
+
+
+class PersonalF(forms.ModelForm):
+
+ class Meta:
+ model = Personal
+ fields = ['name','function','inorex','mail','pnr','onr','adresse','tel']
+ labels = {
+ 'name':"Name",
+ 'function':"Funktion",
+ 'inorex':"Intern/Extern",
+ 'pnr':"Personalnummer",
+ 'onr': "ONR-Nummer",
+ 'adresse':"Adresse",
+ 'tel':"Telefon",
+ 'mail':"E-Mailadresse"
+ }
+
# Familienkontakte
@@ -142,26 +160,28 @@ class ErgoVerDirF(forms.ModelForm):
}
def __init__(self, *args, **kwargs):
super(ErgoVerDirF, self).__init__(*args, **kwargs)
- self.fields['ergo_password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort")
+ self.fields['ergo_password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort", required=False)
class OnlineBankF(forms.ModelForm):
class Meta:
model = OnlineBank
- fields = ['web_address','web_username', 'web_password', 'accountactivity', 'vollmacht_doc']
+ fields = ['web_address','web_username', 'web_password', 'bic', 'iban', 'accountactivity', 'vollmacht_doc', 'area']
labels = {
- 'web_address':"Internetadresse",
+ 'web_address':"Internetadresse/Bankname",
'web_username':"Benutzername",
'web_password':"Passwort",
+ 'bic' : "BIC",
+ 'iban' : "IBAN",
'accountactivity':"Was soll mit dem Account geschehen?",
'vollmacht_doc':"Vollmacht als Dokument"
}
-
def __init__(self, *args, **kwargs):
super(OnlineBankF, self).__init__(*args, **kwargs)
- self.fields['web_password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort")
+ self.fields['web_password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort", required=False)
+ self.fields['area'] = forms.CharField(initial="", required=False, widget=forms.HiddenInput())
# Vertrauensperson
@@ -215,4 +235,10 @@ class DocumentForm(forms.ModelForm):
}
def __init__(self, *args, **kwargs):
super(DocumentForm, self).__init__(*args, **kwargs)
- self.fields['area'] = forms.CharField(initial="", required=False, widget=forms.HiddenInput())
\ No newline at end of file
+ self.fields['area'] = forms.CharField(initial="", required=False, widget=forms.HiddenInput())
+
+
+
+
+
+
diff --git a/recoverdir/models.py b/recoverdir/models.py
index c449c8a..2feb952 100644
--- a/recoverdir/models.py
+++ b/recoverdir/models.py
@@ -125,6 +125,9 @@ class ErgoVerDir(models.Model):
class OnlineBank(models.Model):
agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True)
web_address = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ area = models.IntegerField(default=0)
+ bic = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ iban = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
web_username = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
web_password = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
accountactivity = encrypt(models.CharField(max_length=5000, blank=True, default="", null=True))
@@ -153,6 +156,25 @@ class DigitalAccounts(models.Model):
+PERS_CHOICE = (
+ ("ex", "Intern"),
+ ("in", "Extern"),
+ )
+class Personal(models.Model):
+ agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True)
+ name = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ function = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ inorex = encrypt(models.CharField(max_length=500, blank=True, default=1, choices =PERS_CHOICE, null=True))
+ pnr = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ onr = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ adresse = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ tel = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ mail = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
+ history = HistoricalRecords()
+
+
+
+
diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_2.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_2.html
index 9bc75db..c5e06b9 100644
--- a/recoverdir/templates/recoverdir/rd_areas/rd_area_2.html
+++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_2.html
@@ -61,12 +61,12 @@
- | Internetadresse |
+ Internetadresse/Bankname |
|
diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_5.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_5.html
index 38b3d8d..6f295d8 100644
--- a/recoverdir/templates/recoverdir/rd_areas/rd_area_5.html
+++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_5.html
@@ -1 +1,106 @@
-FÜNFTE
\ No newline at end of file
+Personal, interne und externe Partner inkl. Funktionen usw.
+ Online-Account
+
+
+
+
+ | Name |
+ Funktion |
+ Intern/Extern |
+ |
+
+
+
+ {% for ele in area_5_personal %}
+
+ | {{ele.name|default:""}} |
+ {{ele.function|default:""}} |
+
+ {% if ele.inorex == "in" %} Intern
+ {% elif ele.inorex == "ex" %} Extern
+ {% else %} {% endif %}
+ |
+
+
+
+
+ |
+
+ {% endfor %}
+
+
+
+Dokumente, Vertretungsregeln & Zugriffsberechtigungen
+ Dokument
+
+
+
+
+ | Name |
+ Datum |
+ Beschreibung |
+ |
+
+
+
+ {% for doc in area_5_doc %}
+
+ | {{doc.document_name}} |
+ {{doc.document_date|date:"d.m.Y"|default:""}} |
+ {{doc.document_desc|default:""}} |
+
+
+
+
+ |
+
+ {% endfor %}
+
+
+
+
\ No newline at end of file
diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html
index a79236c..fad835b 100644
--- a/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html
+++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html
@@ -1 +1,97 @@
-SECHSTE
\ No newline at end of file
+Bankkonten und Online-Bankzugänge
+ Online-Banking
+
+
+
+
+ | Internetadresse/Bankname |
+ |
+
+
+
+ {% for ele in area_6_onlinebank %}
+
+ | {{ele.web_address}} |
+
+
+
+
+ |
+
+ {% endfor %}
+
+
+
+
+
+
+
+ | Name |
+ Datum |
+ Beschreibung |
+ |
+
+
+
+ {% for doc in area_5_doc %}
+
+ | {{doc.document_name}} |
+ {{doc.document_date|date:"d.m.Y"|default:""}} |
+ {{doc.document_desc|default:""}} |
+
+
+
+
+ |
+
+ {% endfor %}
+
+
+
+
\ No newline at end of file
diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_addonlinebank.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_addonlinebank.html
index 4e568a3..b89e2bc 100644
--- a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_addonlinebank.html
+++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_addonlinebank.html
@@ -3,7 +3,7 @@
{% block content %}
{% if request.user.profile.agency.module_recoverdir %}
-
Zugang zur Online-Bank bearbeiten
+
Zugang zur Bank/Online-Bankaccount bearbeiten
{% else %}
diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_onlinebank_single.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_onlinebank_single.html
index 35f4784..dfa2990 100644
--- a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_onlinebank_single.html
+++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_2_onlinebank_single.html
@@ -21,6 +21,14 @@
| Passwort: |
{{onlinebank.web_password|default:""}} |
+
+
+ | BIC: |
+ {{onlinebank.bic|default:""}} |
+
+
+ | IBAN: |
+ {{onlinebank.iban|default:""}} |
| Mit meinem Account soll Folgendes passieren: |
diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_addpersonal.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_addpersonal.html
new file mode 100644
index 0000000..e4c1788
--- /dev/null
+++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_addpersonal.html
@@ -0,0 +1,20 @@
+{% extends "users/base.html" %}
+{% load crispy_forms_tags %}
+{% block content %}
+{% if request.user.profile.agency.module_recoverdir %}
+
+
Personal-Account bearbeiten
+
+
+
+{% else %}
+Das Modul Notfallhilfe wurden in ihrer Agentur deaktiviert.
+{% endif %}
+{% endblock content %}
diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_personal_del.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_personal_del.html
new file mode 100644
index 0000000..f323e63
--- /dev/null
+++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_personal_del.html
@@ -0,0 +1,20 @@
+{% extends "users/base.html" %}
+{% load crispy_forms_tags %}
+{% block content %}
+{% if request.user.profile.agency.module_recoverdir %}
+
+
Personal-Partner-Account löschen
+
+
+
+{% else %}
+Das Modul Notfallhilfe wurden in ihrer Agentur deaktiviert.
+{% endif %}
+{% endblock content %}
diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_personal_single.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_personal_single.html
new file mode 100644
index 0000000..ef28649
--- /dev/null
+++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_5_personal_single.html
@@ -0,0 +1,55 @@
+{% extends "users/base.html" %}
+{% block content %}
+{% if request.user.profile.agency.module_recoverdir %}
+
+
Personalaccount {% if history == True %} - Version vom {{personal.history_date|date:"d.m.Y"}}{% endif %}
+
+
+
+
+
+
Personal und Partner
+
+
+ | Name: |
+ {{personal.name}} |
+
+
+ | Function: |
+ {{personal.function|default:""}} |
+
+
+ | Intern/Extern: |
+
+ {% if personal.inorex == "in" %} Intern
+ {% elif personal.inorex == "ex" %} Extern
+ {% else %} {% endif %}
+ |
+
+
+ | PNR: |
+ {{personal.pnr|default:""}} |
+
+
+ | ONR: |
+ {{personal.onr|default:""}} |
+
+
+ | Email-Adresse: |
+ {{personal.mail|default:""}} |
+
+
+ | Telefon: |
+ {{personal.tel|default:""}} |
+
+
+ | Adresse: |
+ {{personal.adresse|default:""}} |
+
+
+
+
+{% else %}
+Auf dieses Modul haben Sie keinen Zugriff!
+{% endif %}
+{% endblock content %}
diff --git a/recoverdir/templates/recoverdir/rd_updates.html b/recoverdir/templates/recoverdir/rd_updates.html
index e80c434..6663774 100644
--- a/recoverdir/templates/recoverdir/rd_updates.html
+++ b/recoverdir/templates/recoverdir/rd_updates.html
@@ -19,6 +19,7 @@
8 = OnlineBank
9 = Streaming-Abo
10 = Digitaler Account
+ 11 = Personal
-->
{% for ele in history %}
@@ -57,6 +58,9 @@
{% elif hisotryelementinfo.1 == 10 %}
{{hisotryelementinfo.0}}
+ {% elif hisotryelementinfo.1 == 11 %}
+ {{hisotryelementinfo.0}}
+
{% endif %}
{{rdele.history_date|date:"d.m.Y H:i"}} |
diff --git a/recoverdir/urls.py b/recoverdir/urls.py
index 3317a06..5ea2f47 100644
--- a/recoverdir/urls.py
+++ b/recoverdir/urls.py
@@ -57,7 +57,7 @@ urlpatterns = [
path('two/ergo/update/', permission_required('users.recoverdirmanager')(RDAtwoUpdateergo.as_view()), name='rd-a2-updateergo'),
# OnlineBank
- path('two/onlinebank/add', permission_required('users.recoverdirmanager')(RDAtwoAddonlinebank.as_view()), name='rd-a2-addonlinebank'),
+ path('two/onlinebank/add/', permission_required('users.recoverdirmanager')(RDAtwoAddonlinebank.as_view()), name='rd-a2-addonlinebank'),
path('two/onlinebank/', permission_required('users.recoverdirmanager')(RDAtwoViewonlinebank.as_view()), name='rd-a2-viewonlinebank'),
path('two/onlinebank/del/', permission_required('users.recoverdirmanager')(RDAtwoDelonlinebank.as_view()), name='rd-a2-delonlinebank'),
path('two/onlinebank/update/', permission_required('users.recoverdirmanager')(RDAtwoUpdateonlinebank.as_view()), name='rd-a2-updateonlinebank'),
@@ -68,12 +68,20 @@ urlpatterns = [
path('three/streaming/', permission_required('users.recoverdirmanager')(RDAthreeViewstreaming.as_view()), name='rd-a3-viewstreaming'),
path('three/streaming/del/', permission_required('users.recoverdirmanager')(RDAthreeDelstreaming.as_view()), name='rd-a3-delstreaming'),
path('three/streaming/update/', permission_required('users.recoverdirmanager')(RDAthreeUpdatestreaming.as_view()), name='rd-a3-updatestreaming'),
-
+
+ # Bereich 4
+ # Digitale Accounts
path('four/digitalaccount/add', permission_required('users.recoverdirmanager')(RDAfourAdddigitalaccount.as_view()), name='rd-a4-adddigitalaccount'),
path('four/digitalaccount/', permission_required('users.recoverdirmanager')(RDAfourViewdigitalaccount.as_view()), name='rd-a4-viewdigitalaccount'),
path('four/digitalaccount/del/', permission_required('users.recoverdirmanager')(RDAfourDeldigitalaccount.as_view()), name='rd-a4-deldigitalaccount'),
path('four/digitalaccount/update/', permission_required('users.recoverdirmanager')(RDAfourUpdatedigitalaccount.as_view()), name='rd-a4-updatedigitalaccount'),
+ # Bereich 5
+ # Personaldaten
+ path('five/personal/add', permission_required('users.recoverdirmanager')(RDAfiveAddpersonal.as_view()), name='rd-a5-addpersonal'),
+ path('five/personal/', permission_required('users.recoverdirmanager')(RDAfiveViewpersonal.as_view()), name='rd-a5-viewpersonal'),
+ path('five/personal/del/', permission_required('users.recoverdirmanager')(RDAfiveDelpersonal.as_view()), name='rd-a5-delpersonal'),
+ path('five/personal/update/', permission_required('users.recoverdirmanager')(RDAfiveUpdatepersonal.as_view()), name='rd-a5-updatepersonal'),
# HISTORY VIEWS
# Persönliches Schreiben
@@ -96,8 +104,10 @@ urlpatterns = [
path('onlinebank/ver//', permission_required('users.recoverdirmanager')(OnlinebankSingleHistory.as_view()), name='recoverdir-onlinebankhistory-single'),
# STREAMINGABO
path('streaming/ver//', permission_required('users.recoverdirmanager')(StreamingSingleHistory.as_view()), name='recoverdir-streaminghistory-single'),
-
+ # Digitale Accounts
path('digitalaccount/ver//', permission_required('users.recoverdirmanager')(DigitalAccountSingleHistory.as_view()), name='recoverdir-digitalaccounthistory-single'),
+ # Personal Intern/Extern
+ path('personal/ver//', permission_required('users.recoverdirmanager')(PersonalSingleHistory.as_view()), name='recoverdir-personalhistory-single'),
diff --git a/recoverdir/views.py b/recoverdir/views.py
index 666c73f..91027bb 100644
--- a/recoverdir/views.py
+++ b/recoverdir/views.py
@@ -38,19 +38,25 @@ class RecoverDirManagement(LoginRequiredMixin, ListView):
ergodigi = ErgoVerDir.objects.filter(agency=self.request.user.profile.agency)
context.update({"area_2_ergo" : ergodigi})
- onlinebank = OnlineBank.objects.filter(agency=self.request.user.profile.agency)
+ onlinebank = OnlineBank.objects.filter(agency=self.request.user.profile.agency, area=2)
context.update({"area_2_onlinebank" : onlinebank})
+ onlinebank6 = OnlineBank.objects.filter(agency=self.request.user.profile.agency, area=6)
+ context.update({"area_6_onlinebank" : onlinebank6})
+
streamingabo = StreamingAbo.objects.filter(agency=self.request.user.profile.agency)
context.update({"area_3_abos" : streamingabo})
digitalaccount = DigitalAccounts.objects.filter(agency=self.request.user.profile.agency)
context.update({"area_4_digitalaccount" : digitalaccount})
+ personal = Personal.objects.filter(agency=self.request.user.profile.agency)
+ context.update({"area_5_personal" : personal})
+
handlungsleitfadenvf = HandlungsleitfadenVF.objects.filter(agency=self.request.user.profile.agency)
- finalupdatelist = chain(persletters, handlungsleitfaden, contactfc, contactstrust, handlungsleitfadenvf, depistvollmacht, ergodigi, onlinebank, streamingabo, digitalaccount)
+ finalupdatelist = chain(persletters, handlungsleitfaden, contactfc, contactstrust, handlungsleitfadenvf, depistvollmacht, ergodigi, onlinebank, streamingabo, digitalaccount, personal, onlinebank6)
context.update({"history" : finalupdatelist})
# DOCUMENTS NOT WORKING Weil das "alte" nicht gespeichert wird sondern lediglich der Datensatz
@@ -94,6 +100,13 @@ class RecoverDirManagement(LoginRequiredMixin, ListView):
# A4
context.update({'area_4_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=4).order_by('-document_date')})
+ # A5
+ context.update({'area_5_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=5).order_by('-document_date')})
+
+ # A6
+ context.update({'area_6_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=5).order_by('-document_date')})
+
+
return context
class RecoverDirAddPL(CreateView):
@@ -483,6 +496,7 @@ class RDAtwoAddonlinebank(CreateView):
def form_valid(self, form):
form.instance.agency = self.request.user.profile.agency
+ form.instance.area = self.kwargs["area"]
if(self.request.FILES and self.request.FILES['vollmacht_doc']):
# Randomize File-Name keeping extension
file = self.request.FILES['vollmacht_doc']
@@ -646,6 +660,55 @@ class RDAfourUpdatedigitalaccount(UpdateView):
context.update({'active_link' : 'recoverdir'})
return context
+# Personalaccount
+class RDAfiveViewpersonal(DetailView):
+ model = Personal
+ success_url = reverse_lazy('recoverdir')
+ template_name = 'recoverdir/rd_elements_forms/rd_area_5_personal_single.html'
+ context_object_name = 'personal'
+
+class RDAfiveDelpersonal(DeleteView):
+ model = Personal
+ success_url = reverse_lazy('recoverdir')
+ template_name = 'recoverdir/rd_elements_forms/rd_area_5_personal_del.html'
+ context_object_name = 'personal'
+
+ def get_context_data(self, **kwargs):
+ context = super().get_context_data(**kwargs)
+ context.update({'active_link' : 'recoverdir'})
+ return context
+
+class RDAfiveAddpersonal(CreateView):
+ model = Personal
+ success_url = reverse_lazy('recoverdir')
+ form_class = PersonalF
+ template_name = "recoverdir/rd_elements_forms/rd_area_5_addpersonal.html"
+
+ def form_valid(self, form):
+ form.instance.agency = self.request.user.profile.agency
+ return super().form_valid(form)
+
+
+ def get_context_data(self, **kwargs):
+ context = super().get_context_data(**kwargs)
+ context.update({'active_link' : 'recoverdir'})
+ return context
+
+class RDAfiveUpdatepersonal(UpdateView):
+ model = Personal
+ success_url = reverse_lazy('recoverdir')
+ form_class = PersonalF
+ template_name = "recoverdir/rd_elements_forms/rd_area_5_addpersonal.html"
+
+ def form_valid(self, form):
+ form.instance.agency = self.request.user.profile.agency
+ return super().form_valid(form)
+
+ def get_context_data(self, **kwargs):
+ context = super().get_context_data(**kwargs)
+ context.update({'active_link' : 'recoverdir'})
+ return context
+
################################################## HISTORY ELEMENT VIEW ##########################################
@@ -904,5 +967,27 @@ class DigitalAccountSingleHistory(DetailView):
})
return context
+# Personal
+class PersonalSingleHistory(DetailView):
+ model = Personal
+ template_name = 'recoverdir/rd_elements_forms/rd_area_5_personal_single.html'
+
+ # Gewünschte Revision aufrufen
+ def get_context_data(self, **kwargs):
+ context = super().get_context_data(**kwargs)
+ context.update({'active_link' : 'recoverdir'})
+
+ historyelements = Personal.objects.get(pk=self.kwargs['pk']).history.all()
+
+ shown_element = None
+ for he in historyelements:
+ if he.pk == self.kwargs["rev"]:
+ shown_element = he
+
+ context.update({
+ 'personal' : shown_element,
+ 'history' : True
+ })
+ return context
diff --git a/standards/templatetags/__pycache__/counter_tag.cpython-38.pyc b/standards/templatetags/__pycache__/counter_tag.cpython-38.pyc
index b61647c..3ceac4b 100644
Binary files a/standards/templatetags/__pycache__/counter_tag.cpython-38.pyc and b/standards/templatetags/__pycache__/counter_tag.cpython-38.pyc differ
diff --git a/standards/templatetags/counter_tag.py b/standards/templatetags/counter_tag.py
index 212dcd6..5a7d759 100644
--- a/standards/templatetags/counter_tag.py
+++ b/standards/templatetags/counter_tag.py
@@ -793,8 +793,11 @@ def getHistoryClassOfObject(value):
finalclass[0] = "Streaming-Abo"
finalclass[1] = 9
elif(objectClass == 'HistoricalDigitalAccounts'):
- finalclass[0] = "Onine-Account"
+ finalclass[0] = "Online-Account"
finalclass[1] = 10
+ elif(objectClass == 'HistoricalPersonal'):
+ finalclass[0] = "Personal und Partner"
+ finalclass[1] = 11
return finalclass