]> wagnertech.de Git - SVBaL.git/commitdiff
Bug 170 + check feature
authorMichael Wagner <mail@wagnertech.de>
Tue, 14 Jul 2026 18:23:15 +0000 (20:23 +0200)
committerMichael Wagner <mail@wagnertech.de>
Tue, 14 Jul 2026 18:23:15 +0000 (20:23 +0200)
python/eh_app/templates/kassenbrief_erfolg.html
python/eh_app/tests.py
python/eh_app/urls.py
python/eh_app/views.py

index 6cfe8c29bfe2a93664bde941f75387a1c5343bb1..56fa0fb46d37d8bbc685e7f9ffa4af2951bc6ceb 100644 (file)
@@ -4,15 +4,13 @@
        <link rel="stylesheet" type="text/css" href="{% static 'admin/css/base.css' %}">
 </head>
 <body>
        <link rel="stylesheet" type="text/css" href="{% static 'admin/css/base.css' %}">
 </head>
 <body>
-<h1>Erstellung Eigenheimer-Meldung</h1>
-<p>Die Meldung für den Eigenheimerverband wurde erfolgreich erstellt und kann jetzt heruntergeladen werden.</p>
-<form action="/eh-app/{{verein}}/ehmeldung/download" method="get">
+<h1>Erstellung Kassenbrief</h1>
+<p>Die Kassenbriefe wurden erfolgreich erstellt und können jetzt heruntergeladen werden.</p>
+<p>Anzahl: {{anzahl}}</p>
+<p>Gesamtbetrag: {{gesamtbetrag}}.-</p>
+<form action="/eh-app/{{verein}}/kassenbrief/download" method="get">
 {% csrf_token %}
 {% csrf_token %}
-<input type="submit" name="download" value="Meldung"/>
-</form>
-<form action="/eh-app/{{verein}}/ausweis/download" method="get">
-{% csrf_token %}
-<input type="submit" name="download" value="Ausweis"/>
+<input type="submit" name="download" value="Herunterladen"/>
 </form>
 </body>
 </html>
 </form>
 </body>
 </html>
index ad3c2a1e47df75a35e0b966ae856096c60641346..a2b3b0b4348acdc80732feb31b34456b2f332457 100644 (file)
@@ -61,5 +61,13 @@ class TestViews(TestCase):
         assert(response.status_code == 302)
         assert(response.url == '/eh-app/svbal/ehmeldung/erfolg')
         
         assert(response.status_code == 302)
         assert(response.url == '/eh-app/svbal/ehmeldung/erfolg')
         
+    def test_kassenbrief_bug_170(self):
+        client = Client()
+        client.force_login(self.user)
+        response = client.get('/eh-app/svbal/kassenbrief/erfolg')
+        assert(response.status_code == 200)
+        assert("Erstellung Kassenbrief" in response.content.decode("utf-8"))
+        
+        
         
         
\ No newline at end of file
         
         
\ No newline at end of file
index 9edc0a665cb5d66a50373a212d152383c55e37fb..dca91780fbc42c4118eb9747a6272c4cb0a3653b 100644 (file)
@@ -3,6 +3,7 @@ from django.urls import path
 from . import views
 
 urlpatterns = [
 from . import views
 
 urlpatterns = [
+    path('<slug:verein>/check/', views.check),
     path('<slug:verein>/datenquelle-andern/', views.datenquelle_andern),
     path('<slug:verein>/kassenbrief/', views.kassenbrief),
     path('<slug:verein>/vorlagen_verwalten/', views.vorlagen_verwalten),
     path('<slug:verein>/datenquelle-andern/', views.datenquelle_andern),
     path('<slug:verein>/kassenbrief/', views.kassenbrief),
     path('<slug:verein>/vorlagen_verwalten/', views.vorlagen_verwalten),
index 57ec14bc00cb420fe05aca90732c651eda31b964..b8315bba77585d2f6c8738905e1bf90f166245aa 100644 (file)
@@ -63,6 +63,34 @@ def erstelle_vorlagen_liste(verein):
             vorlagen_liste.append((t,tpl_name_wo_ext))
     return vorlagen_liste
 
             vorlagen_liste.append((t,tpl_name_wo_ext))
     return vorlagen_liste
 
+def check(request, verein):
+    # überprüft, ob für den gegebenen Verein alles angelegt ist
+    check_erg = {}
+    vconf = config.getInstance(verein)
+    data_path  = vconf.getConfig("data_path")
+    check_erg["data_path"] = "ok"
+    if not data_path:
+        data_path = f"auf /var/mysite/eh_app/{verein}"
+        vconf.setConfig("data_path", data_path)
+        check_erg["data_path"] = f"auf /var/mysite/eh_app/{verein} gesetzt"
+
+    ehappdir  = vconf.getConfig("ehappdir", "/opt/eh_app")
+    vereinchecker = f"{ehappdir}/bin/ehapp-verein-check.sh"
+    check_erg["vereinchecker"] = "ok"
+    if not os.path.exists(vereinchecker):
+        check_erg["vereinchecker"] = "ehapp-verein-check.sh nicht gefunden"
+
+    rc = os.system(f'{vereinchecker} {data_path}')
+    if rc != 0:
+        check_erg["vereinchecker"] = f"ehapp-verein-check.sh fehlgeschlagen: {rc}"
+    
+    template = loader.get_template("check.html")
+    return HttpResponse(template.render(
+        {
+            "verein"    : verein, 
+            "check_erg" : check_erg }, 
+        request))
+
 @login_required(login_url=LOGIN_URL)
 def vorlagen_verwalten(request, verein):
     vorlagen_liste = erstelle_vorlagen_liste(verein)
 @login_required(login_url=LOGIN_URL)
 def vorlagen_verwalten(request, verein):
     vorlagen_liste = erstelle_vorlagen_liste(verein)