for chunk in csv_file.chunks():
destination.write(chunk)
'''
- def aktualisiere_config(config, vorlagen_data, beitrag_data):
- '''
++
+ def aktualisiere_config(config, data, file):
+
if file:
uploaded_file = file.name
data_path = config.requireConfig("data_path")
for chunk in file.chunks():
destination.write(chunk)
config.setConfig("briefpapier", uploaded_file)
- '''
- if vorlagen_data["vorlage"]:
- config.setConfig("vorlage", vorlagen_data["vorlage"])
- if beitrag_data["basisbeitrag"]:
- config.setConfig("beitrag_basis", beitrag_data["basisbeitrag"])
--
- if beitrag_data["zusatzbeitrag"]:
- config.setConfig("beitrag_zusatz", beitrag_data["zusatzbeitrag"])
++ if data["vorlage"]:
++ config.setConfig("vorlage", data["vorlage"])
+ if data["basisbeitrag"]:
+ config.setConfig("beitrag_basis", data["basisbeitrag"])
-
+ if data["zusatzbeitrag"]:
+ config.setConfig("beitrag_zusatz", data["zusatzbeitrag"])
def erstelle_ehmeldung(data):
from PyPDF2 import PdfFileWriter, PdfFileReader
- Doku zu Fields:
https://docs.djangoproject.com/en/2.2/ref/forms/fields/
'''
- class MitgliederForm(forms.Form):
- vorlage = forms.ChoiceField(choices=())
- def __init__(self, *args, vorlagen=[('AB', 'ab'),('BC','bc')], **kwargs):
- #self.templates = templates
- super().__init__(*args, **kwargs)
- self.fields['vorlage'].choices = vorlagen
+
class VorlagenForm(forms.Form):
- template = forms.ChoiceField(choices=())
- def __init__(self, *args, templates=[('AB', 'ab'),('BC','bc')], **kwargs):
+ vorlage = forms.ChoiceField(choices=())
+ def __init__(self, *args, vorlagen=[('AB', 'ab'),('BC','bc')], **kwargs):
#self.templates = templates
super().__init__(*args, **kwargs)
- self.fields['template'].choices = templates
+ self.fields['vorlage'].choices = vorlagen
class VorlagenVerwaltungForm(forms.Form):
vorlagen_zu_loschen = forms.MultipleChoiceField(
from .AWK import config, routines
#import .forms
- from .forms import EhmeldungForm, VorlagenForm, BeitragForm, VorlagenVerwaltungForm, MitgliederForm
++
+ from .forms import EhmeldungForm, VorlagenForm, BeitragForm, VorlagenVerwaltungForm, MitgliederForm, MitgliederAuswahlForm
from eh_app.AWK.pdf_ersteller import PdfErsteller
# Create your views here.
Diese Methode liest aus der Config die Einstellungen und zeigt sie an.
POST:
++<<<<<<< HEAD
+ Diese Methode
+ - überprüft, ob an den Einstellungen was verändert wurde und falls ja, ändert die Config
+ - bearbeitet den finalen "Erstellen"
+
+ '''
+ fehlertext_vorlage = ""
+ fehlertext_beitrag = ""
+ vconf = config.getInstance(verein)
+ beitrag_basis = vconf.getConfig("beitrag_basis", 0)
+ beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
+ vorlage_selected = vconf.getConfig("vorlage", "")
+ vorlagen_liste = []
+ if os.path.isdir("eh_app/templates/"+verein):
+ dirlist = os.listdir("eh_app/templates/"+verein) # returns list
+ for t in dirlist:
+ vorlagen_liste.append((t,t))
+ if request.method == 'POST':
+ vorlagen_form = VorlagenForm(request.POST, request.FILES, vorlagen=vorlagen_liste)
+ beitrag_form = BeitragForm(request.POST, request.FILES)
+ if vorlagen_form.is_valid() and beitrag_form.is_valid():
+ routines.aktualisiere_config(vconf, vorlagen_form.cleaned_data, beitrag_form.cleaned_data)
+ return HttpResponseRedirect('erfolg')
+ '''
++=======
+ Diese Methode bearbeitet den finalen "Erstellen"
+
+ Die Unterformulare (z.B. Beitrag ändern) landen in einer eigenen Methode, die die
+ Einstellungen in der Config ändert und dann diese hier mit GET aufruft.
+ '''
+ '''
+ ---------------------------------------------------------------
+ Templateauswahl
+
+ Ausgewähltes Template: <Wert aus Config>
+ Klappliste <Knopf"Template ändern">
+ Link -> Neue Templates installieren
+ ---------------------------------------------------------------
+ '''
+ fehlertext_vorlage = ""
+ vconf = config.getInstance(verein)
+ beitrag_basis = vconf.getConfig("beitrag_basis", 0)
+ beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
+ vorlagen_liste = ['T1']
+ vorlagen_form = VorlagenForm(templates=vorlagen_liste)
+ beitrag_form = BeitragForm
+ mausw_form = MitgliederForm(zul="12,45,334")
+ if request.method == 'POST':
+ vorlagen_form = VorlagenForm(request.POST, request.FILES)
+ beitrag_form = BeitragForm(request.POST, request.FILES)
+ mausw_form = MitgliederForm(request.POST, request.FILES)
+ if vorlagen_form.is_valid() and beitrag_form.is_valid():
+ routines.aktualisiere_config(vconf, vorlagen_form.cleaned_data, beitrag_form.cleaned_data)
if not vorlagen_liste:
fehlertext_vorlage = "Bitte Kassenbriefvorlage auswählen"
else:
routines.pdfs_erstellen(request, verein)
return HttpResponseRedirect('erfolg')
+ '''
+ else:
+ beitrag_basis = vconf.getConfig("beitrag_basis", 0)
+ beitrag_zusatz = vconf.getConfig("beitrag_zusatz", 0)
+ # GET request
+ if vorlage_selected == "":
+ fehlertext_vorlage = "Bitte Vorlage auswählen"
+ if not vorlagen_liste:
+ fehlertext_vorlage = "Bitte Vorlagen in Vorlagenverzeichnis einfügen"
+ if beitrag_basis == 0 or beitrag_zusatz == 0:
+ fehlertext_beitrag = "Bitte Eingaben zu Basis- und Zusatzbeitrag vornehmen"
+ vorlagen_form = VorlagenForm(vorlagen=vorlagen_liste, initial={'vorlage':vorlage_selected})
+ beitrag_form = BeitragForm(initial={'basisbeitrag': beitrag_basis, 'zusatzbeitrag': beitrag_zusatz})
+ mitglieder_form = MitgliederForm()
+
+ return render(request,
+ 'kassenbrief.html',
+ {'vorlagen_form': vorlagen_form,
+ 'beitrag_form': beitrag_form,
+ 'mitglieder_form': mitglieder_form,
+ 'verein': verein,
+ 'fehlertext_vorlage' : fehlertext_vorlage,
+ 'fehlertext_beitrag' : fehlertext_beitrag})
++=======
+ return render(request, 'kassenbrief.html', {'vorlagen_form': vorlagen_form, 'beitrag_form': beitrag_form, 'mausw_form': mausw_form, 'verein': verein, 'fehlertext' : fehlertext_vorlage})
++>>>>>>> origin/michael
def kassenbrief_alt(request, verein):
fehlertext = ""