Update pdf_generator.py
Browse files- pdf_generator.py +7 -19
pdf_generator.py
CHANGED
@@ -32,26 +32,14 @@ def generate_pdf(contract_type, is_free, author_type, author_info,
|
|
32 |
additional_rights, remuneration, is_exclusive):
|
33 |
"""
|
34 |
Génère un PDF du contrat avec des champs interactifs.
|
35 |
-
Version optimisée pour une génération plus rapide.
|
36 |
-
|
37 |
-
Args:
|
38 |
-
contract_type (list): Liste des types de contrats sélectionnés
|
39 |
-
is_free (bool): True si la cession est gratuite, False sinon
|
40 |
-
author_type (str): Type d'auteur ("Personne physique" ou "Personne morale")
|
41 |
-
author_info (dict): Informations sur l'auteur
|
42 |
-
work_description (str): Description de l'œuvre
|
43 |
-
image_description (str): Description de l'image
|
44 |
-
supports (list): Liste des supports sélectionnés
|
45 |
-
additional_rights (list): Liste des droits supplémentaires sélectionnés
|
46 |
-
remuneration (str): Modalités de rémunération
|
47 |
-
is_exclusive (bool): True si la cession est exclusive, False sinon
|
48 |
-
|
49 |
-
Returns:
|
50 |
-
str: Chemin vers le fichier PDF généré
|
51 |
"""
|
52 |
# Conversion des paramètres
|
53 |
is_free_bool = (is_free == "Gratuite")
|
54 |
-
|
|
|
|
|
|
|
|
|
55 |
|
56 |
# Ajouter les supports par défaut
|
57 |
final_supports = ensure_default_supports(supports)
|
@@ -59,11 +47,11 @@ def generate_pdf(contract_type, is_free, author_type, author_info,
|
|
59 |
# Créer un nom de fichier temporaire pour le PDF
|
60 |
output_filename = create_temp_file(prefix="contrat_cession_", suffix=".pdf")
|
61 |
|
62 |
-
# Générer le contenu du contrat
|
63 |
contract_elements = ContractBuilder.build_contract_elements(
|
64 |
contract_type, is_free_bool, author_type, author_info,
|
65 |
work_description, image_description, final_supports,
|
66 |
-
|
67 |
)
|
68 |
|
69 |
# Créer un document PDF avec moins d'options pour accélérer la génération
|
|
|
32 |
additional_rights, remuneration, is_exclusive):
|
33 |
"""
|
34 |
Génère un PDF du contrat avec des champs interactifs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
"""
|
36 |
# Conversion des paramètres
|
37 |
is_free_bool = (is_free == "Gratuite")
|
38 |
+
# L'exclusivité n'est possible que si la cession est onéreuse
|
39 |
+
is_exclusive_bool = bool(is_exclusive) and not is_free_bool
|
40 |
+
|
41 |
+
# Filtrer les droits supplémentaires si la cession est gratuite
|
42 |
+
final_additional_rights = [] if is_free_bool else additional_rights
|
43 |
|
44 |
# Ajouter les supports par défaut
|
45 |
final_supports = ensure_default_supports(supports)
|
|
|
47 |
# Créer un nom de fichier temporaire pour le PDF
|
48 |
output_filename = create_temp_file(prefix="contrat_cession_", suffix=".pdf")
|
49 |
|
50 |
+
# Générer le contenu du contrat avec les paramètres mis à jour
|
51 |
contract_elements = ContractBuilder.build_contract_elements(
|
52 |
contract_type, is_free_bool, author_type, author_info,
|
53 |
work_description, image_description, final_supports,
|
54 |
+
final_additional_rights, remuneration, is_exclusive_bool
|
55 |
)
|
56 |
|
57 |
# Créer un document PDF avec moins d'options pour accélérer la génération
|