]> wagnertech.de Git - SVBaL.git/blob - python/eh_util/eh_app/views.py
Merge remote-tracking branch 'origin/michael' into simon
[SVBaL.git] / python / eh_util / eh_app / views.py
1 import os,sys
2
3 from django.http import HttpResponse, HttpResponseRedirect, FileResponse
4 from django.shortcuts import render
5 from django.template import loader
6
7 from .AWK import config, routines
8 #import .forms 
9 from .forms import EhmeldungForm, KassenbriefForm
10
11 # Create your views here.
12
13 try:
14     home = os.environ["HOME"]
15     if os.path.exists(f"{home}/.eclipse/org.eclipse.platform_4.18.0_1473617060_linux_gtk_x86_64/plugins/org.python.pydev.core_8.3.0.202104101217/pysrc/"):
16         # its a eclipse development environment
17         sys.path.append(f"{home}/.eclipse/org.eclipse.platform_4.18.0_1473617060_linux_gtk_x86_64/plugins/org.python.pydev.core_8.3.0.202104101217/pysrc/")
18         import pydevd
19         pydevd.settrace()
20
21 except:
22     pass
23
24 def index(request, verein):
25     template = loader.get_template("vbasis.html")
26     return HttpResponse(template.render({"verein" : verein}, request))
27
28 def tex_bearbeiten(request, verein):
29     template = loader.get_template("brief.tex")
30     tex_bearbeitet = template.render({"Anrede" : 'Frau'}, {"Nachname" : 'Wagner'}, request)
31                    
32
33 def kassenbrief(request, verein):
34     fehlertext = ""
35     # Hole Daten aus der Config
36     vconf = config.getInstance(verein)
37     briefpapier    = vconf.getConfig("briefpapier")
38     beitrag_basis  = vconf.getConfig("beitrag_basis", 0)
39     beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
40     briefpapier_label = briefpapier
41     if not briefpapier:
42         briefpapier_label = "Kein Briefpapier ausgewäht"
43     
44     # if this is a POST request we need to process the form data
45     if request.method == 'POST':
46         # create a form instance and populate it with data from the request:
47         form = KassenbriefForm(request.POST, request.FILES)
48         # check whether it's valid:
49         if form.is_valid():
50             # bei Änderungen Konfiguration aktualisieren
51             routines.aktualisiere_config(vconf, form.cleaned_data)
52             
53             #Stammdaten neu aus Datenbank lesen und prüfen
54             briefpapier    = vconf.getConfig("briefpapier")
55             beitrag_basis  = vconf.getConfig("beitrag_basis", 0)
56             beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
57                         
58             # prüfen ob Werte gefüllt
59             if briefpapier == "":
60                 fehlertext = "Bitte Briefpapier auswählen."
61             elif beitrag_basis == 0 and beitrag_zusatz == 0:
62                 fehlertext = "Bitte Basisbeitrag und Zusatzbeitrag ausfüllen."
63             elif beitrag_basis == 0:
64                 fehlertext = "Bitte Basisbeitrag ausfüllen."
65             elif beitrag_zusatz == 0:
66                 fehlertext = "Bitte Zusatzbeitrag ausfüllen."
67             
68             # wenn Werte gefüllt 
69             else:
70                 routines.erstellepdf('Hallo Welt')
71                 
72                 # redirect to a new URL:
73                 return HttpResponseRedirect('erfolg')
74
75     # if a GET (or any other method) we'll create a blank form
76     else:
77         form = KassenbriefForm(initial={'basisbeitrag': beitrag_basis, 'zusatzbeitrag': beitrag_zusatz})
78
79     return render(request, 'kassenbrief.html', {'form': form, 'verein': verein, 'briefpapier': briefpapier_label, 'fehlertext' : fehlertext})
80     
81     '''
82     template = loader.get_template("kassenbrief.html")
83     return HttpResponse(template.render({
84         "verein"         : verein,
85         "briefpapier"    : briefpapier,
86         "beitrag_basis"  : beitrag_basis,
87         "beitrag_zusatz" : beitrag_zusatz
88         }, request))
89
90     '''
91
92 def kassenbrief_erfolg(request, verein):
93     # Hole Formulardaten
94     print (request.POST)
95     print (request.FILES)
96     return HttpResponse("xxx")
97
98 def kassenbrief_download(request, verein):
99     response = FileResponse(open(r'G:\SVBaL\python\eh_util\eh_app\test.pdf', 'rb'))
100     return response
101
102 def ehmeldung(request, verein):
103     # if this is a POST request we need to process the form data
104     if request.method == 'POST':
105         # create a form instance and populate it with data from the request:
106         form = EhmeldungForm(request.POST, request.FILES)
107         # check whether it's valid:
108         if form.is_valid():
109             # bei Änderungen Konfiguration aktualisieren
110             routines.erstelle_ehmeldung(form.cleaned_data)
111             # redirect to a new URL:
112             return HttpResponseRedirect('/thanks/')
113
114     # if a GET (or any other method) we'll create a blank form
115     else:
116         form = EhmeldungForm()
117
118     return render(request, 'ehmeldung.html', {'form': form, 'verein': verein})
119     
120