diff --git a/recoverdir/forms.py b/recoverdir/forms.py index 7476f5f..f9ec44e 100644 --- a/recoverdir/forms.py +++ b/recoverdir/forms.py @@ -182,7 +182,18 @@ class OnlineBankF(forms.ModelForm): super(OnlineBankF, self).__init__(*args, **kwargs) self.fields['web_password'] = forms.CharField(widget=forms.PasswordInput, label="Passwort", required=False) self.fields['area'] = forms.CharField(initial="", required=False, widget=forms.HiddenInput()) - + +# RDELSE +class RDElseF(forms.ModelForm): + + class Meta: + model = RDElse + + fields = ['name','desc'] + labels = { + 'name' : "Name/Titel/Info", + 'desc' : "Beschreibung/Informationen etc." + } # Vertrauensperson class RDTrustPersonF(forms.ModelForm): diff --git a/recoverdir/models.py b/recoverdir/models.py index 2feb952..9ce0dcc 100644 --- a/recoverdir/models.py +++ b/recoverdir/models.py @@ -173,8 +173,11 @@ class Personal(models.Model): history = HistoricalRecords() - - +class RDElse(models.Model): + agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True) + name = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) + desc = encrypt(models.CharField(max_length=10000, blank=True, default="", null=True)) + history = HistoricalRecords() diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html index fad835b..f5c94ed 100644 --- a/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html +++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_6.html @@ -35,7 +35,7 @@ - {% for doc in area_5_doc %} + {% for doc in area_6_doc %} {{doc.document_name}} {{doc.document_date|date:"d.m.Y"|default:""}} diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_7.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_7.html index 163172b..7a7c5e3 100644 --- a/recoverdir/templates/recoverdir/rd_areas/rd_area_7.html +++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_7.html @@ -1 +1,54 @@ -SIEBTE \ No newline at end of file +

Dokumente + Dokument +

+ + + + + + + + + + + {% for doc in area_7_doc %} + + + + + + + {% endfor %} + +
NameDatumBeschreibung 
{{doc.document_name}}{{doc.document_date|date:"d.m.Y"|default:""}}{{doc.document_desc|default:""}} +   +   + +
+ + \ No newline at end of file diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_8.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_8.html index c9a0ad1..6e36fe8 100644 --- a/recoverdir/templates/recoverdir/rd_areas/rd_area_8.html +++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_8.html @@ -1 +1,54 @@ -ACHTE \ No newline at end of file +

Dokumente + Dokument +

+ + + + + + + + + + + {% for doc in area_8_doc %} + + + + + + + {% endfor %} + +
NameDatumBeschreibung 
{{doc.document_name}}{{doc.document_date|date:"d.m.Y"|default:""}}{{doc.document_desc|default:""}} +   +   + +
+ + \ No newline at end of file diff --git a/recoverdir/templates/recoverdir/rd_areas/rd_area_9.html b/recoverdir/templates/recoverdir/rd_areas/rd_area_9.html index 2cd0d2f..d628930 100644 --- a/recoverdir/templates/recoverdir/rd_areas/rd_area_9.html +++ b/recoverdir/templates/recoverdir/rd_areas/rd_area_9.html @@ -1 +1,101 @@ -NEUNTE \ No newline at end of file +

Sonstige Datenelemente + Information +

+ + + + + + + + + + {% for ele in area_9_else %} + + + + + + {% endfor %} + +
Name/Titel etc.Beschreibung 
{{ele.name}}{{ele.desc}} +   +   + +
+
+

Dokumente + Dokument +

+ + + + + + + + + + + {% for doc in area_9_doc %} + + + + + + + {% endfor %} + +
NameDatumBeschreibung 
{{doc.document_name}}{{doc.document_date|date:"d.m.Y"|default:""}}{{doc.document_desc|default:""}} +   +   + +
+ + \ No newline at end of file diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_addelse.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_addelse.html new file mode 100644 index 0000000..c7320f3 --- /dev/null +++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_addelse.html @@ -0,0 +1,20 @@ +{% extends "users/base.html" %} +{% load crispy_forms_tags %} +{% block content %} +{% if request.user.profile.agency.module_recoverdir %} +
+

Sonstige Information bearbeiten

+
+
+ {% csrf_token %} + {{form.media}} + {{form|crispy}} +
+ Abbrechen +   +
+
+{% else %} +

Das Modul Notfallhilfe wurden in ihrer Agentur deaktiviert.

+{% endif %} +{% endblock content %} diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_else_del.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_else_del.html new file mode 100644 index 0000000..b6e1a07 --- /dev/null +++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_else_del.html @@ -0,0 +1,20 @@ +{% extends "users/base.html" %} +{% load crispy_forms_tags %} +{% block content %} +{% if request.user.profile.agency.module_recoverdir %} +
+

Datenelement unter Sonstiges löschen

+
+
+ {% csrf_token %} + {{ form|crispy }} + Möchten Sie die Information {{ele.name}} wirklich endgültig löschen? +
+ Abbrechen +   +
+
+{% else %} +

Das Modul Notfallhilfe wurden in ihrer Agentur deaktiviert.

+{% endif %} +{% endblock content %} diff --git a/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_else_single.html b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_else_single.html new file mode 100644 index 0000000..f6a307e --- /dev/null +++ b/recoverdir/templates/recoverdir/rd_elements_forms/rd_area_9_else_single.html @@ -0,0 +1,27 @@ +{% extends "users/base.html" %} +{% block content %} +{% if request.user.profile.agency.module_recoverdir %} +
+

Sonstiges Datenelement {% if history == True %} - Version vom {{else.history_date|date:"d.m.Y"}}{% endif %} + + + +

+
+

Informationen

+ + + + + + + + + +
Name{{else.name|default:""}}
Beschreibung:{{else.desc|default:""}}
+
+
+{% else %} +

Auf dieses Modul haben Sie keinen Zugriff!

+{% endif %} +{% endblock content %} diff --git a/recoverdir/urls.py b/recoverdir/urls.py index 5ea2f47..3cfe267 100644 --- a/recoverdir/urls.py +++ b/recoverdir/urls.py @@ -83,6 +83,19 @@ urlpatterns = [ 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'), + # Bereich 6 übernimmt Datenfelder aus Bereich 2 + + # Bereich 7 TASK: Hier weiter + + # Bereich 8 TASK: Hier weiter + + # Bereich 9 + path('nine/else/add', permission_required('users.recoverdirmanager')(RDAnineAddelse.as_view()), name='rd-a9-addelse'), + path('nine/else/', permission_required('users.recoverdirmanager')(RDAnineViewelse.as_view()), name='rd-a9-viewelse'), + path('nine/else/del/', permission_required('users.recoverdirmanager')(RDAnineDelelse.as_view()), name='rd-a9-delelse'), + path('nine/else/update/', permission_required('users.recoverdirmanager')(RDAnineUpdateelse.as_view()), name='rd-a9-updateelse'), + + # HISTORY VIEWS # Persönliches Schreiben path('pl/ver//', permission_required('users.recoverdirmanager')(PLSingleHistory.as_view()), name='recoverdir-plsingle'), @@ -109,6 +122,8 @@ urlpatterns = [ # Personal Intern/Extern path('personal/ver//', permission_required('users.recoverdirmanager')(PersonalSingleHistory.as_view()), name='recoverdir-personalhistory-single'), + # ELSE + path('else/ver//', permission_required('users.recoverdirmanager')(ElseSingleHistory.as_view()), name='recoverdir-elsehistory-single'), ] diff --git a/recoverdir/views.py b/recoverdir/views.py index 91027bb..55aff0d 100644 --- a/recoverdir/views.py +++ b/recoverdir/views.py @@ -53,10 +53,12 @@ class RecoverDirManagement(LoginRequiredMixin, ListView): personal = Personal.objects.filter(agency=self.request.user.profile.agency) context.update({"area_5_personal" : personal}) + elseele = RDElse.objects.filter(agency=self.request.user.profile.agency) + context.update({"area_9_else" : elseele}) handlungsleitfadenvf = HandlungsleitfadenVF.objects.filter(agency=self.request.user.profile.agency) - finalupdatelist = chain(persletters, handlungsleitfaden, contactfc, contactstrust, handlungsleitfadenvf, depistvollmacht, ergodigi, onlinebank, streamingabo, digitalaccount, personal, onlinebank6) + finalupdatelist = chain(persletters, handlungsleitfaden, contactfc, contactstrust, handlungsleitfadenvf, depistvollmacht, ergodigi, onlinebank, streamingabo, digitalaccount, personal, onlinebank6, elseele) context.update({"history" : finalupdatelist}) # DOCUMENTS NOT WORKING Weil das "alte" nicht gespeichert wird sondern lediglich der Datensatz @@ -104,8 +106,16 @@ class RecoverDirManagement(LoginRequiredMixin, ListView): 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')}) + context.update({'area_6_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=6).order_by('-document_date')}) + # A7 + context.update({'area_7_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=7).order_by('-document_date')}) + + # A8 + context.update({'area_8_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=8).order_by('-document_date')}) + + # A9 + context.update({'area_9_doc' : Documents.objects.filter(agency=self.request.user.profile.agency, area=9).order_by('-document_date')}) return context @@ -709,6 +719,56 @@ class RDAfiveUpdatepersonal(UpdateView): context.update({'active_link' : 'recoverdir'}) return context + +# RDElse +class RDAnineViewelse(DetailView): + model = RDElse + success_url = reverse_lazy('recoverdir') + template_name = 'recoverdir/rd_elements_forms/rd_area_9_else_single.html' + context_object_name = 'else' + +class RDAnineDelelse(DeleteView): + model = RDElse + success_url = reverse_lazy('recoverdir') + template_name = 'recoverdir/rd_elements_forms/rd_area_9_else_del.html' + context_object_name = 'ele' + + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + context.update({'active_link' : 'recoverdir'}) + return context + +class RDAnineAddelse(CreateView): + model = RDElse + success_url = reverse_lazy('recoverdir') + form_class = RDElseF + template_name = "recoverdir/rd_elements_forms/rd_area_9_addelse.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 RDAnineUpdateelse(UpdateView): + model = RDElse + success_url = reverse_lazy('recoverdir') + form_class = RDElseF + template_name = "recoverdir/rd_elements_forms/rd_area_9_addelse.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 ########################################## @@ -991,3 +1051,26 @@ class PersonalSingleHistory(DetailView): return context + +# ELSE +class ElseSingleHistory(DetailView): + model = RDElse + template_name = 'recoverdir/rd_elements_forms/rd_area_9_else_single.html' + + # Gewünschte Revision aufrufen + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + context.update({'active_link' : 'recoverdir'}) + + historyelements = RDElse.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({ + 'ele' : 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 3ceac4b..b625b13 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 5a7d759..f743cc2 100644 --- a/standards/templatetags/counter_tag.py +++ b/standards/templatetags/counter_tag.py @@ -798,6 +798,10 @@ def getHistoryClassOfObject(value): elif(objectClass == 'HistoricalPersonal'): finalclass[0] = "Personal und Partner" finalclass[1] = 11 + # ELSE + elif(objectClass == 'HistoricalElse'): + finalclass[0] = "Sonstiges" + finalclass[1] = 20 return finalclass