From 475d7637a168afbc7a75481e22eb48c10d9d03de Mon Sep 17 00:00:00 2001 From: Place Jean-Marie Date: Fri, 5 Nov 2021 10:39:02 +0100 Subject: [PATCH] adapt sco_pdf ; discard BACKGROUNF_PREFIX_FILE --- app/scodoc/sco_logos.py | 3 ++- app/scodoc/sco_pdf.py | 19 +++++++------------ app/scodoc/sco_utils.py | 1 - 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/app/scodoc/sco_logos.py b/app/scodoc/sco_logos.py index db3b1ff9..982d268d 100644 --- a/app/scodoc/sco_logos.py +++ b/app/scodoc/sco_logos.py @@ -129,11 +129,12 @@ class Logo: def __init__(self, logoname, dept_id=None, prefix=scu.LOGO_FILE_PREFIX): """Initialisation des noms et département des logos. + if prefix = None on recherche simplement une image 'logoname.*' Le format est renseigné au moment de la lecture (read) ou de la création (create) de l'objet """ self.logoname = secure_filename(logoname) self.scodoc_dept = dept_id - self.prefix = prefix + self.prefix = prefix or "" self.suffix = None self.dimensions = None if self.scodoc_dept: diff --git a/app/scodoc/sco_pdf.py b/app/scodoc/sco_pdf.py index 77e6f4e1..856d954f 100755 --- a/app/scodoc/sco_pdf.py +++ b/app/scodoc/sco_pdf.py @@ -60,6 +60,7 @@ from reportlab.lib.pagesizes import letter, A4, landscape from flask import g import app.scodoc.sco_utils as scu +from app.scodoc.sco_logos import find_logo from app.scodoc.sco_utils import ( CONFIG, SCODOC_LOGOS_DIR, @@ -221,18 +222,12 @@ class ScolarsPageTemplate(PageTemplate): self.logo = None # XXX COPIED from sco_pvpdf, to be refactored (no time now) # Search background in dept specific dir, then in global config dir - for image_dir in ( - SCODOC_LOGOS_DIR + "/logos_" + g.scodoc_dept + "/", - SCODOC_LOGOS_DIR + "/", # global logos - ): - for suffix in LOGOS_IMAGES_ALLOWED_TYPES: - fn = image_dir + "/bul_pdf_background" + "." + suffix - if not self.background_image_filename and os.path.exists(fn): - self.background_image_filename = fn - # Also try to use PV background - fn = image_dir + "/letter_background" + "." + suffix - if not self.background_image_filename and os.path.exists(fn): - self.background_image_filename = fn + logo = find_logo(logoname="bul_pdf_background", dept_id=g.scodoc_dept_id, global_if_not_found=, prefix=None) + if logo is None: + # Also try to use PV background + logo = find_logo(logoname="letter_background", dept_id=g.scodoc_dept_id, global_if_not_found=, prefix=None) + if logo is not None: + self.background_image_filename = logo.filepath def beforeDrawPage(self, canvas, doc): """Draws (optional) background, logo and contribution message on each page. diff --git a/app/scodoc/sco_utils.py b/app/scodoc/sco_utils.py index ec85b3da..548820a3 100644 --- a/app/scodoc/sco_utils.py +++ b/app/scodoc/sco_utils.py @@ -230,7 +230,6 @@ SCODOC_LOGOS_DIR = os.path.join(SCODOC_CFG_DIR, "logos") LOGOS_IMAGES_ALLOWED_TYPES = ("jpg", "jpeg", "png") # remind that PIL does not read pdf LOGOS_DIR_PREFIX = "logos_" LOGO_FILE_PREFIX = "logo_" -BACKGROUND_FILE_PREFIX = "" # forme générale des noms des fichiers logos/background: # SCODOC_LOGO_DIR/LOGO_FILE_PREFIX. (fichier global) ou