From 3f83fd6ef3654a8ac6f8981d20ad0d2757e8fd47 Mon Sep 17 00:00:00 2001 From: Yohann D'ANELLO Date: Tue, 2 Jun 2020 22:32:10 +0200 Subject: [PATCH] Better tree --- .../management/commands/extract_solutions.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/apps/member/management/commands/extract_solutions.py b/apps/member/management/commands/extract_solutions.py index 713c420..7b59ad1 100644 --- a/apps/member/management/commands/extract_solutions.py +++ b/apps/member/management/commands/extract_solutions.py @@ -1,4 +1,5 @@ import os +from urllib.request import urlretrieve from shutil import copyfile from django.core.management import BaseCommand @@ -35,21 +36,23 @@ class Command(BaseCommand): Copy solutions elsewhere. """ d = options['dir'] + teams_dir = d + '/Par équipe' + os.makedirs(teams_dir, exist_ok=True) translation.activate(options['language']) copied = 0 for tournament in Tournament.objects.all(): - os.mkdir(d + '/' + tournament.name) + os.mkdir(teams_dir + '/' + tournament.name) for team in tournament.teams.filter(validation_status='2valid'): - os.mkdir(d + '/' + tournament.name + '/' + str(team)) + os.mkdir(teams_dir + '/' + tournament.name + '/' + str(team)) for sol in tournament.solutions: if not os.path.isfile('media/' + sol.file.name): self.stdout.write(self.style.WARNING(("Warning: solution '{sol}' is not found. Maybe the file" "was deleted?").format(sol=str(sol)))) continue - copyfile('media/' + sol.file.name, d + '/' + tournament.name + copyfile('media/' + sol.file.name, teams_dir + '/' + tournament.name + '/' + str(sol.team) + '/' + str(sol) + '.pdf') copied += 1 @@ -62,7 +65,11 @@ class Command(BaseCommand): pbdir = d + '/Par problème/Problème n°{number} — {problem}'.format(number=pb, problem=self.PROBLEMS[pb - 1]) os.mkdir(pbdir) for sol in sols: - os.symlink('../../' + sol.tournament.name + '/' + str(sol.team) + '/' + str(sol) + '.pdf', + os.symlink('../../Par équipe/' + sol.tournament.name + '/' + str(sol.team) + '/' + str(sol) + '.pdf', pbdir + '/' + str(sol) + '.pdf') self.stdout.write(self.style.SUCCESS("Symlinks by problem created!")) + + urlretrieve('https://tfjm.org/wp-content/uploads/2020/01/Problemes2020_23_01_v1_1.pdf', d + '/Énoncés.pdf') + + self.stdout.write(self.style.SUCCESS("Questions retrieved!"))