Obtain date from user to print update forms
This commit is contained in:
parent
56f49d0af4
commit
5bb96189ec
4 changed files with 29 additions and 6 deletions
|
|
@ -185,16 +185,16 @@ class UpdateDataFormPDF(EpcBaseDocTemplate):
|
|||
"""
|
||||
Génération des formulaires PDF de mise à jour des données.
|
||||
"""
|
||||
def __init__(self, filename):
|
||||
def __init__(self, filename, return_date):
|
||||
super().__init__(filename)
|
||||
self.text = (
|
||||
"Afin de mettre à jour nos bases de données, nous vous serions reconnaissant "
|
||||
"de contrôler les données ci-dessous qui vous concernent selon votre filière "
|
||||
"et de retourner le présent document corrigé et complété à votre maître de classe jusqu'au "
|
||||
"vendredi 9 septembre prochain.<br/><br/>"
|
||||
"%s prochain.<br/><br/>"
|
||||
"Nous vous remercions de votre précieuse collaboration.<br/><br/>"
|
||||
"Le secrétariat"
|
||||
)
|
||||
) % django_format(return_date, 'l j F')
|
||||
self.underline = '__________________________________'
|
||||
|
||||
def produce(self, klass):
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ class StagesTest(TestCase):
|
|||
|
||||
def test_export_update_forms(self):
|
||||
self.client.login(username='me', password='mepassword')
|
||||
response = self.client.get(reverse('print_update_form'))
|
||||
response = self.client.get(reverse('print_update_form') + '?date=14.09.2018')
|
||||
self.assertEqual(
|
||||
response['Content-Disposition'], 'attachment; filename="modification.zip"'
|
||||
)
|
||||
|
|
|
|||
|
|
@ -748,10 +748,18 @@ class PrintUpdateForm(ZippedFilesBaseView):
|
|||
"""
|
||||
filename = 'modification.zip'
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
try:
|
||||
self.return_date = date(*reversed([int(num) for num in self.request.GET.get('date').split('.')]))
|
||||
except (AttributeError, ValueError):
|
||||
messages.error(request, "La date fournie n'est pas valable")
|
||||
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))
|
||||
return super().get(request, *args, **kwargs)
|
||||
|
||||
def generate_files(self):
|
||||
for klass in Klass.objects.filter(level__gte=2
|
||||
).exclude(section__name='MP_ASSC').exclude(section__name='MP_ASE'):
|
||||
pdf = UpdateDataFormPDF('{0}.pdf'.format(klass.name))
|
||||
pdf = UpdateDataFormPDF('{0}.pdf'.format(klass.name), self.return_date)
|
||||
pdf.produce(klass)
|
||||
yield pdf.filename
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue