Skip to content

Commit

Permalink
Makes participant treshold for stickers variable
Browse files Browse the repository at this point in the history
Fixes #10
  • Loading branch information
miterion committed Dec 23, 2016
1 parent 13645e6 commit a2cec17
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 10 deletions.
6 changes: 3 additions & 3 deletions src/feedback/tests/test_latex.py
Original file line number Diff line number Diff line change
Expand Up @@ -120,16 +120,16 @@ def test_post(self):
'vorlage': 'Anschreiben'}, **{'REMOTE_USER': 'super'})
self.assertEqual(response.templates[0].name, 'intern/generate_letters.html')

# test Aufkleber fuer grosse Veranstaltungen
# test Aufkleber with variable number
response = self.client.post(self.path,
{'semester': s.semester, 'erhebungswoche': '10. - 11. November 2011',
'vorlage': 'Grossaufkleber'}, **{'REMOTE_USER': 'super'})
'vorlage': 'Aufkleber', 'anzahlaufkleber':'85'}, **{'REMOTE_USER': 'super'})
self.assertEqual(response.status_code, 302)
v.anzahl = 86
v.save()
response = self.client.post(self.path,
{'semester': s.semester, 'erhebungswoche': '10. - 11. November 2011',
'vorlage': 'Grossaufkleber'}, **{'REMOTE_USER': 'super'})
'vorlage': 'Aufkleber', 'anzahlaufkleber': '85'}, **{'REMOTE_USER': 'super'})
self.assertEqual(response.status_code, 200)
self.assertRegexpMatches(response['Content-Disposition'],
r'^attachment; filename=[a-zA-Z0-9_-]+\.pdf$')
Expand Down
12 changes: 8 additions & 4 deletions src/feedback/views/intern/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ def generate_letters(request):
if vorlage == 'Anschreiben':
latexpath = settings.LATEX_PATH
templatename = 'anschreiben'
elif vorlage == 'Aufkleber' or vorlage == 'Grossaufkleber':
elif vorlage == 'Aufkleber':
latexpath = settings.LATEX_PATH+'../aufkleber/'
templatename = 'aufkleber'

Expand All @@ -171,12 +171,16 @@ def generate_letters(request):

response = HttpResponse(content_type='application/pdf')
response['Content-Disposition'] = 'attachment; filename=%s.pdf' % (templatename)
if vorlage != 'Grossaufkleber':
if vorlage != 'Aufkleber':
veranst = Veranstaltung.objects.filter(semester=semester, evaluieren=True, anzahl__gt=0).order_by('sprache','anzahl')
elif 'anzahlaufkleber' in request.POST and request.POST['anzahlaufkleber'].isdigit():
anzahl = request.POST['anzahlaufkleber']
anzahl = int(anzahl)
veranst = Veranstaltung.objects.filter(semester=semester, evaluieren=True, anzahl__gt=anzahl).order_by('sprache','anzahl')
else:
veranst = Veranstaltung.objects.filter(semester=semester, evaluieren=True, anzahl__gt=85).order_by('sprache','anzahl')
veranst = Veranstaltung.objects.filter(semester=semester, evaluieren=True, anzahl__gt=0).order_by('sprache','anzahl')
if not veranst.count():
messages.error(request, 'Für das ausgewählte Semester (%s) liegen keine Bestellungen vor!' % semester)
messages.error(request, 'Für das ausgewählte Semester (%s) liegen keine Bestellungen vor oder die Mindesteilnehmeranzahl ist zu hoch!' % semester)
return HttpResponseRedirect(reverse('generate_letters'))

lines = []
Expand Down
18 changes: 15 additions & 3 deletions src/templates/intern/generate_letters.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ <h1>Anschreiben erzeugen</h1>
<p>Zu erzeugende Datei:
<fieldset>
<input type="radio" id="anschreiben" name="vorlage" value="Anschreiben"><label for="anschreiben"> Anschreiben</label><br>
<input type="radio" id="aufkleber" name="vorlage" value="Aufkleber"><label for="aufkleber"> Aufkleber</label><br>
<input type="radio" id="grosseaufkleber" name="vorlage" value="Grossaufkleber"><label for="grosseaufkleber"> Aufkleber (nur für große Veranstaltungen >= 85)</label><br>
<input type="radio" id="aufkleber" name="vorlage" value="Aufkleber"><label for="aufkleber"> Aufkleber</label>
&nbsp;<label for="aufkleberanzahl">(Mindestteilnehmerzahl: </label> <input type="text" id="aufkleberanzahl" disabled name="anzahlaufkleber" value=0>)
</fieldset>
<p>
<input type="submit" name="submit" value="PDF erzeugen" />
Expand All @@ -26,5 +26,17 @@ <h1>Anschreiben erzeugen</h1>
<h2>Fehler bei der Ausführung von pdflatex</h2>
<pre>{{texlog}}</pre>
{% endif %}

<script>
let aufkleber = document.getElementById('aufkleber');
let anschreiben = document.getElementById('anschreiben');
let anzahl = document.getElementById('aufkleberanzahl');
aufkleber.onclick = function(){
let anzahl = document.getElementById('aufkleberanzahl');
if(aufkleber.checked)
anzahl.disabled = false;
}
anschreiben.onclick = function(){
anzahl.disabled = true;
}
</script>
{% endblock %}

0 comments on commit a2cec17

Please sign in to comment.