]> wagnertech.de Git - SVBaL.git/blobdiff - python/eh_app/views.py
Bug 170 + check feature
[SVBaL.git] / python / eh_app / views.py
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
 
+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)