3 from django.http import HttpResponse, HttpResponseRedirect, FileResponse
4 from django.shortcuts import render
5 from django.template import loader
7 from .AWK import config, routines
9 from .forms import EhmeldungForm, KassenbriefForm
11 # Create your views here.
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/")
24 def index(request, verein):
25 template = loader.get_template("vbasis.html")
26 return HttpResponse(template.render({"verein" : verein}, request))
28 def tex_bearbeiten(request, verein):
29 template = loader.get_template("brief.tex")
30 tex_bearbeitet = template.render({"Anrede" : 'Frau'}, {"Nachname" : 'Wagner'}, request)
33 def kassenbrief(request, verein):
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
42 briefpapier_label = "Kein Briefpapier ausgewäht"
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:
50 # bei Änderungen Konfiguration aktualisieren
51 routines.aktualisiere_config(vconf, form.cleaned_data)
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)
58 # prüfen ob Werte gefüllt
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."
70 routines.erstellepdf('Hallo Welt')
72 # redirect to a new URL:
73 return HttpResponseRedirect('erfolg')
75 # if a GET (or any other method) we'll create a blank form
77 form = KassenbriefForm(initial={'basisbeitrag': beitrag_basis, 'zusatzbeitrag': beitrag_zusatz})
79 return render(request, 'kassenbrief.html', {'form': form, 'verein': verein, 'briefpapier': briefpapier_label, 'fehlertext' : fehlertext})
82 template = loader.get_template("kassenbrief.html")
83 return HttpResponse(template.render({
85 "briefpapier" : briefpapier,
86 "beitrag_basis" : beitrag_basis,
87 "beitrag_zusatz" : beitrag_zusatz
92 def kassenbrief_erfolg(request, verein):
96 return HttpResponse("xxx")
98 def kassenbrief_download(request, verein):
99 response = FileResponse(open(r'G:\SVBaL\python\eh_util\eh_app\test.pdf', 'rb'))
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:
109 # bei Änderungen Konfiguration aktualisieren
110 routines.erstelle_ehmeldung(form.cleaned_data)
111 # redirect to a new URL:
112 return HttpResponseRedirect('/thanks/')
114 # if a GET (or any other method) we'll create a blank form
116 form = EhmeldungForm()
118 return render(request, 'ehmeldung.html', {'form': form, 'verein': verein})