From 057357a58d59834b5d580249c38f1e9646f2c6cb Mon Sep 17 00:00:00 2001 From: engel <> Date: Sat, 19 Feb 2022 19:06:22 +0000 Subject: [PATCH 1/3] =?UTF-8?q?g=C3=A9n=C3=A9ration=20pdf=20depuis=20html?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit FossilOrigin-Name: ae0bb1a96a743b32009fb9198051568278f05a15148ca6141c9576b6956929ec --- lib/HtmlPDF.php | 217 ++++++++++++++++++++++++++++++++ www/admin/generer_activites.php | 16 +-- www/admin/generer_personnes.php | 22 ++-- 3 files changed, 232 insertions(+), 23 deletions(-) create mode 100644 lib/HtmlPDF.php diff --git a/lib/HtmlPDF.php b/lib/HtmlPDF.php new file mode 100644 index 0000000..ffdf87c --- /dev/null +++ b/lib/HtmlPDF.php @@ -0,0 +1,217 @@ +nomAsso = $nomAsso; + $this->adresseAsso = $adresseAsso; + $this->objetAsso = $objetAsso; + $this->logoCerfa = $logo; + $this->signature = $signature; + $this->html = $this->debut(); + } + + function get() + { + return $this->html; + } + + // Header + function Header() + { + // Logo + $this->Image($this->logoCerfa, 10, 6, 30); + + // document title + $this->SetTextColor(0, 0, 0); + $this->SetFont('DejaVu','B',12); + $titre = "Reçu au titre des dons à certains organismes d'intérêt général"; + $this->SetXY(50, 10); + // Titre + $this->MultiCell(100, + 6, + $titre, + 0, + 'C'); + + // numéro de Cerfa + $cerfa = "N° 11580*3"; + $this->SetFont('DejaVu', 'B', 10); + $this->SetXY(10, 25); + $this->Cell(100, 0, $cerfa); + + // Articles + $this->SetFont('DejaVu', '', 9); + $this->SetXY(50, 25); + $this->Cell(100, 0, 'Article 200, 238 bis et 885-0 V bis A du code général des impôts'); + } + + // imprimer le reçu + function imprimer_recu($annee_recu, + $numero, + $nom, + $lesMontants, + $adresse, + $code_postal, + $ville) + { + // Numéro de reçu + $this->html .= " +
Reçu numéro {$annee_recu}/{$numero}

+
+"; + // Donateur + $this->html .= " +
+

Donateur

+

{$nom}

+

{$adresse}

+

{$code_postal} {$ville}

+
+"; + + $this->html .= " +
+

Le bénéficiaire reconnaît avoir reçu au titre des dons et versements ouvrant droit à réduction d'impôt :

+
+ +"; + + $this->html .= " +
+

Date des versements : année {$annee_recu}

+

Le bénéficiaire certifie sur l’honneur que les dons et versements qu’il reçoit ouvrent droit à la réduction +d'impôt prévue à l’article 200 du CGI

+

Forme du don : Autre

+

Nature du don : Numéraire

+

Mode de versement : chèque et/ou virement

+
+"; + + // cartouche final + $date = date("j/m/Y"); +$this->html .= " +
+

Rennes le {$date}

+
+signature\" /> +"; +/* + $this->Ln(10); + $this->Cell(0, 6, "", 'LRT', 1); + $this->Cell(0, 6, "Rennes le " . date("j/m/Y"), 'LR', 1, 'R'); + $this->Cell(0, 36, "", 'LR', 1); + $this->Cell(0, 0, "", 'LBR', 1); + $this->SetXY(100, 220); + $this->Image($this->signature, null, null, 50); + */ + $this->fin(); + } + + // imprimer les informations du bénéficiaire + function imprimer_beneficiaire($nom, $adresse) + { + $this->titre_rubrique("Bénéficiaire des versements"); + $this->SetFont('DejaVu', 'B', 11); + $this->Cell(0, 6, 'Association « ' . $nom . ' »', 'LR', 1); + $this->Cell(0, 6, str_replace(array("\r\n", "\n", "\r"), " ", $adresse), 'LR', 1); + $this->imprimer_description("Objet : ", + "célébrer le culte protestant évangélique et pourvoir aux frais et besoins de ce culte."); + $this->Cell(0, 6, "", 'LRB', 1); + } + + // imprimer un libellé précédé de son titre en gras + function imprimer_description($titre, $libelle) + { + $this->SetFont('DejaVu', 'B', 11); + $this->Cell($this->GetStringWidth($titre), 6, $titre, 'L', 0); + $this->SetFont('DejaVu', '', 11); + $this->Cell(0, 6, $libelle, 'R', 1); + } + + // imprimer le montant de la réduction et un libellé + function imprimer_montant($texte, $montant, $libelle = "") + { + $valeur = number_format($montant, 2, ',', ''); + $this->html .= " +
  • {$texte} {$valeur} euros +"; + if ($libelle != "") { + $this->html .= " + : {$libelle} +"; + } +$this->html .= " +
  • +"; + } + + function titre_rubrique($texte) + { + $this->SetFont('DejaVu','B',12); + $largeur_texte = $this->GetStringWidth($texte); + $this->setX(10); + $this->SetFillColor(0, 255, 255); + $this->Cell(0, 6, $texte, 'LTR', 1, 'C', true); + $this->Cell(0, 6, "", 'LR', 1); + } + + protected function debut() + { + ob_start(); + echo << + + + + {$this->nomAsso} + + + +

    Reçu au titre des dons à certains organismes d'intérêt général

    +

    Bénéficiaire des versements

    +

    Association « {$this->nomAsso} »

    +

    {$this->adresseAsso}

    +

    Objet : {$this->objetAsso}

    +FDD; + return ob_get_clean(); + } + + protected function fin() + { + $this->html .= +' + + +'; + } +} // class RecusPDF diff --git a/www/admin/generer_activites.php b/www/admin/generer_activites.php index 5249958..72c5b03 100644 --- a/www/admin/generer_activites.php +++ b/www/admin/generer_activites.php @@ -2,7 +2,7 @@ namespace Garradin; -use Garradin\Plugin\RecusFiscaux\RecusPDF; +use Garradin\Plugin\RecusFiscaux\HtmlPDF; use Garradin\Plugin\RecusFiscaux\Utils; use Garradin\Plugin\RecusFiscaux\Personne; @@ -31,11 +31,10 @@ $listeFichiers = []; foreach ($totalPersonnes as $idPersonne => $personne) { // générer un fichier par reçu - $pdf = new RecusPDF( - 'DejaVu', - 'SerifCondensed', + $pdf = new HtmlPDF( $nomAsso, $adresseAsso, + $plugin->getConfig('objet_asso'), $logoCERFA, $signature ); @@ -59,13 +58,8 @@ foreach ($totalPersonnes as $idPersonne => $personne) { $personne->codePostal, $personne->ville ); - // fabriquer le nom du fichier PDF - $nom = str_replace(' ', '_', $personne->nomPrenom); - $nom = str_replace("'", "", $nom); - // $nomFichier = Utils::getPDFDirectory() . "/" . 'recu_' . $annee_recu . '_' . $nom . '.pdf'; - $nomFichier = PLUGIN_ROOT . '/pdf/recu_' . $_SESSION['annee_recu'] . '_' . $nom . '.pdf'; - - $pdf->Output('F', $nomFichier); + // fabriquer le fichier PDF + $nomFichier = \Garradin\Utils::filePDF($pdf->get()); // ajouter le nom du fichier à la liste pour mettre dans une archive $listeFichiers[] = $nomFichier; } diff --git a/www/admin/generer_personnes.php b/www/admin/generer_personnes.php index 696410d..424ab08 100644 --- a/www/admin/generer_personnes.php +++ b/www/admin/generer_personnes.php @@ -2,7 +2,7 @@ namespace Garradin; -use Garradin\Plugin\RecusFiscaux\RecusPDF; +use Garradin\Plugin\RecusFiscaux\HtmlPDF; use Garradin\Plugin\RecusFiscaux\Utils; use Garradin\Plugin\RecusFiscaux\Personne; @@ -23,16 +23,17 @@ $logoCERFA = PLUGIN_ROOT . "/data/logoCerfa.png"; $signature = PLUGIN_ROOT . "/data/default_signature.png"; $listeFichiers = []; -foreach ($versementsSelectionnes as $ligne) { +foreach ($versementsSelectionnes as $ligne) +{ // générer un fichier par reçu - $pdf = new RecusPDF( - 'DejaVu', - 'SerifCondensed', + $pdf = new HtmlPDF( $nomAsso, $adresseAsso, + $plugin->getConfig('objet_asso'), $logoCERFA, $signature ); + // extraire les montants des versements $lesMontants[$_SESSION['taux_reduction']] = $ligne->versement/100; $pdf->imprimer_recu( @@ -44,19 +45,16 @@ foreach ($versementsSelectionnes as $ligne) { $_SESSION['membresDonateurs'][$ligne->idUser]->codePostal, $_SESSION['membresDonateurs'][$ligne->idUser]->ville ); - // fabriquer le nom du fichier PDF - $nom = str_replace(' ', '_', $_SESSION['membresDonateurs'][$ligne->idUser]->nomPrenom); - $nom = str_replace("'", "", $nom); - // $nomFichier = Utils::getPDFDirectory() . "/" . 'recu_' . $annee_recu . '_' . $nom . '.pdf'; - $nomFichier = PLUGIN_ROOT . '/pdf/recu_' . $_SESSION['annee_recu'] . '_' . $nom . '.pdf'; - - $pdf->Output('F', $nomFichier); + // fabriquer le fichier PDF + $nomFichier = \Garradin\Utils::filePDF($pdf->get()); // ajouter le nom du fichier à la liste pour mettre dans une archive $listeFichiers[] = $nomFichier; } + // faire une archive zip $fichierZip = Utils::makeArchive( $listeFichiers, $_SESSION['annee_recu'], PLUGIN_ROOT . "/zip" ); + From 5d439d25af91dbd1731f363af873571dbf54d7c9 Mon Sep 17 00:00:00 2001 From: engel <> Date: Tue, 22 Feb 2022 09:47:54 +0000 Subject: [PATCH 2/3] =?UTF-8?q?am=C3=A9lioration=20g=C3=A9n=C3=A9ration=20?= =?UTF-8?q?pdf=20depuis=20html?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit FossilOrigin-Name: 996c3a9ad1c56e94c83b77c74aa804ccc3ff2eb7e0f4ea90f885882a801a6a32 --- lib/HtmlPDF.php | 217 -------------------------------- lib/RecusHTML.php | 153 ++++++++++++++++++++++ lib/pdf.css | 121 ++++++++++++++++++ www/admin/generer_activites.php | 26 ++-- www/admin/generer_personnes.php | 13 +- 5 files changed, 297 insertions(+), 233 deletions(-) delete mode 100644 lib/HtmlPDF.php create mode 100644 lib/RecusHTML.php create mode 100644 lib/pdf.css diff --git a/lib/HtmlPDF.php b/lib/HtmlPDF.php deleted file mode 100644 index ffdf87c..0000000 --- a/lib/HtmlPDF.php +++ /dev/null @@ -1,217 +0,0 @@ -nomAsso = $nomAsso; - $this->adresseAsso = $adresseAsso; - $this->objetAsso = $objetAsso; - $this->logoCerfa = $logo; - $this->signature = $signature; - $this->html = $this->debut(); - } - - function get() - { - return $this->html; - } - - // Header - function Header() - { - // Logo - $this->Image($this->logoCerfa, 10, 6, 30); - - // document title - $this->SetTextColor(0, 0, 0); - $this->SetFont('DejaVu','B',12); - $titre = "Reçu au titre des dons à certains organismes d'intérêt général"; - $this->SetXY(50, 10); - // Titre - $this->MultiCell(100, - 6, - $titre, - 0, - 'C'); - - // numéro de Cerfa - $cerfa = "N° 11580*3"; - $this->SetFont('DejaVu', 'B', 10); - $this->SetXY(10, 25); - $this->Cell(100, 0, $cerfa); - - // Articles - $this->SetFont('DejaVu', '', 9); - $this->SetXY(50, 25); - $this->Cell(100, 0, 'Article 200, 238 bis et 885-0 V bis A du code général des impôts'); - } - - // imprimer le reçu - function imprimer_recu($annee_recu, - $numero, - $nom, - $lesMontants, - $adresse, - $code_postal, - $ville) - { - // Numéro de reçu - $this->html .= " -
    Reçu numéro {$annee_recu}/{$numero}

    -
    -"; - // Donateur - $this->html .= " -
    -

    Donateur

    -

    {$nom}

    -

    {$adresse}

    -

    {$code_postal} {$ville}

    -
    -"; - - $this->html .= " -
    -

    Le bénéficiaire reconnaît avoir reçu au titre des dons et versements ouvrant droit à réduction d'impôt :

    -
    - -"; - - $this->html .= " -
    -

    Date des versements : année {$annee_recu}

    -

    Le bénéficiaire certifie sur l’honneur que les dons et versements qu’il reçoit ouvrent droit à la réduction -d'impôt prévue à l’article 200 du CGI

    -

    Forme du don : Autre

    -

    Nature du don : Numéraire

    -

    Mode de versement : chèque et/ou virement

    -
    -"; - - // cartouche final - $date = date("j/m/Y"); -$this->html .= " -
    -

    Rennes le {$date}

    -
    -signature\" /> -"; -/* - $this->Ln(10); - $this->Cell(0, 6, "", 'LRT', 1); - $this->Cell(0, 6, "Rennes le " . date("j/m/Y"), 'LR', 1, 'R'); - $this->Cell(0, 36, "", 'LR', 1); - $this->Cell(0, 0, "", 'LBR', 1); - $this->SetXY(100, 220); - $this->Image($this->signature, null, null, 50); - */ - $this->fin(); - } - - // imprimer les informations du bénéficiaire - function imprimer_beneficiaire($nom, $adresse) - { - $this->titre_rubrique("Bénéficiaire des versements"); - $this->SetFont('DejaVu', 'B', 11); - $this->Cell(0, 6, 'Association « ' . $nom . ' »', 'LR', 1); - $this->Cell(0, 6, str_replace(array("\r\n", "\n", "\r"), " ", $adresse), 'LR', 1); - $this->imprimer_description("Objet : ", - "célébrer le culte protestant évangélique et pourvoir aux frais et besoins de ce culte."); - $this->Cell(0, 6, "", 'LRB', 1); - } - - // imprimer un libellé précédé de son titre en gras - function imprimer_description($titre, $libelle) - { - $this->SetFont('DejaVu', 'B', 11); - $this->Cell($this->GetStringWidth($titre), 6, $titre, 'L', 0); - $this->SetFont('DejaVu', '', 11); - $this->Cell(0, 6, $libelle, 'R', 1); - } - - // imprimer le montant de la réduction et un libellé - function imprimer_montant($texte, $montant, $libelle = "") - { - $valeur = number_format($montant, 2, ',', ''); - $this->html .= " -
  • {$texte} {$valeur} euros -"; - if ($libelle != "") { - $this->html .= " - : {$libelle} -"; - } -$this->html .= " -
  • -"; - } - - function titre_rubrique($texte) - { - $this->SetFont('DejaVu','B',12); - $largeur_texte = $this->GetStringWidth($texte); - $this->setX(10); - $this->SetFillColor(0, 255, 255); - $this->Cell(0, 6, $texte, 'LTR', 1, 'C', true); - $this->Cell(0, 6, "", 'LR', 1); - } - - protected function debut() - { - ob_start(); - echo << - - - - {$this->nomAsso} - - - -

    Reçu au titre des dons à certains organismes d'intérêt général

    -

    Bénéficiaire des versements

    -

    Association « {$this->nomAsso} »

    -

    {$this->adresseAsso}

    -

    Objet : {$this->objetAsso}

    -FDD; - return ob_get_clean(); - } - - protected function fin() - { - $this->html .= -' - - -'; - } -} // class RecusPDF diff --git a/lib/RecusHTML.php b/lib/RecusHTML.php new file mode 100644 index 0000000..a4124b8 --- /dev/null +++ b/lib/RecusHTML.php @@ -0,0 +1,153 @@ +nomAsso = $nomAsso; + $this->adresseAsso = $adresseAsso; + $this->objetAsso = $objetAsso; + $this->signature = $signature; + $this->html = $this->entete(); + } + + function get() + { + //echo $this->html; + return $this->html; + } + + protected function entete() + { + $styleSheet = \Garradin\PLUGIN_ROOT . "/lib/pdf.css"; + ob_start(); +echo << + + + + {$this->nomAsso} + + + +
    +
    + Cerfa +
    +
    + N° 11580*4 +
    +

    Reçu au titre des dons à certains organismes d'intérêt général

    +

    Article 200, 238 bis et 885-0 V bis A du code général des impôts

    + +FDD; + return ob_get_clean(); + } + + // imprimer le reçu + function imprimer_recu($annee_recu, + $numero, + $nom, + $lesMontants, + $adresse, + $code_postal, + $ville) + { + ob_start(); +echo << +

    Reçu numéro {$annee_recu}/{$numero}

    +
    + +
    +

    Bénéficiaire des versements

    +

    Association « {$this->nomAsso} »

    +

    {$this->adresseAsso}

    +

    Objet : {$this->objetAsso}

    +
    + +
    +

    Donateur

    +

    {$nom}

    +

    {$adresse}

    +

    {$code_postal} {$ville}

    +
    + +
    +

    Le bénéficiaire reconnaît avoir reçu au titre des dons et versements ouvrant droit à réduction d'impôt :

    +
      + +FDD; + + foreach ($lesMontants as $taux => $montant) + { + $this->imprimer_montant("la somme de ", + $montant, + Utils::getLigneReduction($taux)); + } + echo "
    \n"; + + $this->imprimer_description("Date des versements :", + "année {$annee_recu}"); +echo <<Le bénéficiaire certifie sur l’honneur que les dons et versements qu’il reçoit ouvrent droit à la réduction d'impôt prévue à l’article 200 du CGI

    + +FDD; + $this->imprimer_description("Forme du don : ", + "Autre"); + $this->imprimer_description("Nature du don : ", + "Numéraire"); + $this->imprimer_description("Mode de versement : ", + "chèque et/ou virement"); + echo "
    \n"; + + // cartouche final + $date = date("j/m/Y"); +echo << +

    Rennes le {$date}

    + +

    Président

    + + + +FDD; + $this->html .= ob_get_clean(); + } + + // imprimer un libellé précédé de son titre en gras + function imprimer_description($titre, $libelle) + { + echo <<{$titre} {$libelle}

    + +FDD; + } + + // imprimer le montant de la réduction et un libellé + function imprimer_montant($texte, $montant, $libelle = "") + { + $valeur = number_format($montant, 2, ',', ''); + echo "
  • {$texte} {$valeur} euros"; + if ($libelle != "") { + echo " : {$libelle}"; + } + echo "
  • \n"; + } + +} diff --git a/lib/pdf.css b/lib/pdf.css new file mode 100644 index 0000000..a3a92ed --- /dev/null +++ b/lib/pdf.css @@ -0,0 +1,121 @@ +/* organisation spatiale */ +body +{ + width : 21cm; + padding : 1cm 1cm; + display: grid; + grid-template-areas: + 'entete' + 'beneficiaire' + 'donateur' + 'versements' + 'signature'; +} + +#entete +{ + grid-area: entete; + width: 100%; +} + +#logoCerfa +{ + line-height: 40px; + width: 100px; + background-color: rgb(0, 0, 128); + border-radius : 50%; + text-align : center; + margin : 0.5em; +} + +.centre +{ + display : inline-block; + vertical-align : middle; + line-height: 20px; /* moitié de la hauteur du logo */ + color : white; + font-weight: bold; + font-size : 14pt; +} + +#numCerfa +{ + width: 100px; /* largeur du logo */ + text-align: center; +} + +#titre +{ + margin : 0 4cm 0 4cm; + text-align : center; + font-size : 140%; + font-weight: bold; +} + +#articles +{ + margin : 0 4cm 0 4cm; /* idem titre */ +} + +#numRecu +{ + text-align : right; +/* display : inline;*/ +} + +#beneficiaire +{ + grid-area: beneficiaire; + width: 100%; +} + +#donateur +{ + grid-area: donateur; + width: 100%; +} + +#versements +{ + grid-area: versements; + width: 100%; +} + +#final +{ + grid-area: signature; + width: 100%; +} + +.rubrique +{ + background-color : rgb(200, 200, 250); + padding : 0.5em; +} + +.cartouche +{ + margin : 0.5em auto; + padding : 0 0.5em; + border : 1px solid rgb(0, 0, 128); + border-radius : 8px; +} + +.titre, .important +{ + font-weight:bold; +} + +#signature +{ + display: block; + width : 7cm; + margin: 0 auto; + padding-bottom : 0.5em; +} + +#fonction +{ + text-align : center; + padding-bottom : 2em; +} diff --git a/www/admin/generer_activites.php b/www/admin/generer_activites.php index 72c5b03..9985a77 100644 --- a/www/admin/generer_activites.php +++ b/www/admin/generer_activites.php @@ -2,7 +2,7 @@ namespace Garradin; -use Garradin\Plugin\RecusFiscaux\HtmlPDF; +use Garradin\Plugin\RecusFiscaux\RecusHTML; use Garradin\Plugin\RecusFiscaux\Utils; use Garradin\Plugin\RecusFiscaux\Personne; @@ -21,21 +21,16 @@ $totalPersonnes = cumulerVersements($versementsSelectionnes); $nomAsso = Utils::getNomAsso(); $adresseAsso = Utils::getAdresseAsso(); -// TODO -// - associer le taux de réduction à chaque montant total - -// récupérer le logo CERFA (bôf) et la signature -$logoCERFA = PLUGIN_ROOT . "/data/logoCerfa.png"; $signature = PLUGIN_ROOT . "/data/default_signature.png"; $listeFichiers = []; -foreach ($totalPersonnes as $idPersonne => $personne) { +foreach ($totalPersonnes as $idPersonne => $personne) +{ // générer un fichier par reçu - $pdf = new HtmlPDF( + $html = new RecusHTML( $nomAsso, $adresseAsso, $plugin->getConfig('objet_asso'), - $logoCERFA, $signature ); // extraire les montants des versements @@ -49,7 +44,7 @@ foreach ($totalPersonnes as $idPersonne => $personne) { $lesMontants[$versement->tauxReduction] = $versement->montant; } } - $pdf->imprimer_recu( + $html->imprimer_recu( $_SESSION['annee_recu'], $personne->id, $personne->nomPrenom, @@ -58,10 +53,19 @@ foreach ($totalPersonnes as $idPersonne => $personne) { $personne->codePostal, $personne->ville ); + /* + $html->get(); + */ // fabriquer le fichier PDF - $nomFichier = \Garradin\Utils::filePDF($pdf->get()); + $nomPDF = \Garradin\Utils::filePDF($html->get()); + // changer le nom du fichier + $nom = str_replace(' ', '_', $personne->nomPrenom); + $nom = str_replace("'", "", $nom); + $nomFichier = "recu_" . $_SESSION['annee_recu'] . "_" . $nom . ".pdf"; + rename($nomPDF, $nomFichier); // ajouter le nom du fichier à la liste pour mettre dans une archive $listeFichiers[] = $nomFichier; + } // faire une archive zip diff --git a/www/admin/generer_personnes.php b/www/admin/generer_personnes.php index 424ab08..803b2a6 100644 --- a/www/admin/generer_personnes.php +++ b/www/admin/generer_personnes.php @@ -2,7 +2,7 @@ namespace Garradin; -use Garradin\Plugin\RecusFiscaux\HtmlPDF; +use Garradin\Plugin\RecusFiscaux\RecusHTML; use Garradin\Plugin\RecusFiscaux\Utils; use Garradin\Plugin\RecusFiscaux\Personne; @@ -19,18 +19,16 @@ foreach ($lesLignes as $ligne) { $nomAsso = Utils::getNomAsso(); $adresseAsso = Utils::getAdresseAsso(); -$logoCERFA = PLUGIN_ROOT . "/data/logoCerfa.png"; $signature = PLUGIN_ROOT . "/data/default_signature.png"; $listeFichiers = []; foreach ($versementsSelectionnes as $ligne) { // générer un fichier par reçu - $pdf = new HtmlPDF( + $pdf = new RecusHTML( $nomAsso, $adresseAsso, $plugin->getConfig('objet_asso'), - $logoCERFA, $signature ); @@ -46,7 +44,12 @@ foreach ($versementsSelectionnes as $ligne) $_SESSION['membresDonateurs'][$ligne->idUser]->ville ); // fabriquer le fichier PDF - $nomFichier = \Garradin\Utils::filePDF($pdf->get()); + $nomPDF = \Garradin\Utils::filePDF($pdf->get()); + // changer le nom du fichier + $nom = str_replace(' ', '_', $_SESSION['membresDonateurs'][$ligne->idUser]->nomPrenom); + $nom = str_replace("'", "", $nom); + $nomFichier = "recu_" . $_SESSION['annee_recu'] . "_" . $nom . ".pdf"; + rename($nomPDF, $nomFichier); // ajouter le nom du fichier à la liste pour mettre dans une archive $listeFichiers[] = $nomFichier; } From acd824e866df0ca9b12610df1eaedfccfe78b872 Mon Sep 17 00:00:00 2001 From: engel <> Date: Tue, 22 Feb 2022 10:26:45 +0000 Subject: [PATCH 3/3] =?UTF-8?q?petites=20modifications=20cosm=C3=A9tiques?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit FossilOrigin-Name: c91fc5987116ebe7e954079b465a15dfa43829cd32d608a03c4f03854834828a --- lib/RecusHTML.php | 52 ++++++++++++++++----------------- www/admin/generer_activites.php | 4 --- www/admin/generer_personnes.php | 19 ++++++------ 3 files changed, 35 insertions(+), 40 deletions(-) diff --git a/lib/RecusHTML.php b/lib/RecusHTML.php index a4124b8..b5db027 100644 --- a/lib/RecusHTML.php +++ b/lib/RecusHTML.php @@ -32,33 +32,6 @@ class RecusHTML return $this->html; } - protected function entete() - { - $styleSheet = \Garradin\PLUGIN_ROOT . "/lib/pdf.css"; - ob_start(); -echo << - - - - {$this->nomAsso} - - - -
    -
    - Cerfa -
    -
    - N° 11580*4 -
    -

    Reçu au titre des dons à certains organismes d'intérêt général

    -

    Article 200, 238 bis et 885-0 V bis A du code général des impôts

    - -FDD; - return ob_get_clean(); - } - // imprimer le reçu function imprimer_recu($annee_recu, $numero, @@ -150,4 +123,29 @@ FDD; echo "\n"; } + protected function entete() + { + $styleSheet = \Garradin\PLUGIN_ROOT . "/lib/pdf.css"; + ob_start(); +echo << + + + + + + +
    +
    + Cerfa +
    +
    + N° 11580*4 +
    +

    Reçu au titre des dons à certains organismes d'intérêt général

    +

    Article 200, 238 bis et 885-0 V bis A du code général des impôts

    + +FDD; + return ob_get_clean(); + } } diff --git a/www/admin/generer_activites.php b/www/admin/generer_activites.php index 9985a77..a6278d6 100644 --- a/www/admin/generer_activites.php +++ b/www/admin/generer_activites.php @@ -53,9 +53,6 @@ foreach ($totalPersonnes as $idPersonne => $personne) $personne->codePostal, $personne->ville ); - /* - $html->get(); - */ // fabriquer le fichier PDF $nomPDF = \Garradin\Utils::filePDF($html->get()); // changer le nom du fichier @@ -65,7 +62,6 @@ foreach ($totalPersonnes as $idPersonne => $personne) rename($nomPDF, $nomFichier); // ajouter le nom du fichier à la liste pour mettre dans une archive $listeFichiers[] = $nomFichier; - } // faire une archive zip diff --git a/www/admin/generer_personnes.php b/www/admin/generer_personnes.php index 803b2a6..15de5f6 100644 --- a/www/admin/generer_personnes.php +++ b/www/admin/generer_personnes.php @@ -25,7 +25,7 @@ $listeFichiers = []; foreach ($versementsSelectionnes as $ligne) { // générer un fichier par reçu - $pdf = new RecusHTML( + $html = new RecusHTML( $nomAsso, $adresseAsso, $plugin->getConfig('objet_asso'), @@ -34,19 +34,20 @@ foreach ($versementsSelectionnes as $ligne) // extraire les montants des versements $lesMontants[$_SESSION['taux_reduction']] = $ligne->versement/100; - $pdf->imprimer_recu( + $personne = $_SESSION['membresDonateurs'][$ligne->idUser]; + $html->imprimer_recu( $_SESSION['annee_recu'], - $ligne->idUser, - $_SESSION['membresDonateurs'][$ligne->idUser]->nomPrenom, + $personne->id, + $personne->nomPrenom, $lesMontants, - $_SESSION['membresDonateurs'][$ligne->idUser]->adresse, - $_SESSION['membresDonateurs'][$ligne->idUser]->codePostal, - $_SESSION['membresDonateurs'][$ligne->idUser]->ville + $personne->adresse, + $personne->codePostal, + $personne->ville ); // fabriquer le fichier PDF - $nomPDF = \Garradin\Utils::filePDF($pdf->get()); + $nomPDF = \Garradin\Utils::filePDF($html->get()); // changer le nom du fichier - $nom = str_replace(' ', '_', $_SESSION['membresDonateurs'][$ligne->idUser]->nomPrenom); + $nom = str_replace(' ', '_', $personne->nomPrenom); $nom = str_replace("'", "", $nom); $nomFichier = "recu_" . $_SESSION['annee_recu'] . "_" . $nom . ".pdf"; rename($nomPDF, $nomFichier);