implémentation impression reçus

FossilOrigin-Name: 81f54c69ca30c343f75b4190728e55d7679b6580724471ec69a6cca70f8f94ea
This commit is contained in:
engel 2023-01-31 18:35:27 +00:00
parent f5130172f0
commit 0e3c356d1a
7 changed files with 609 additions and 267 deletions

View file

@ -8,15 +8,12 @@
size: A4 portrait;
margin: 1cm;
}
body
body.print
{
width : 19cm;
font-family: Serif;
font-size: 11pt;
background-color: white;
width : 19cm;
}
#entete
{
}
#logo
{
@ -24,14 +21,13 @@
}
#titre
{
margin : 0 2.5cm 0 2.5cm;
margin : 0 2cm 0 2cm;
text-align : center;
font-size : 14pt;
font-weight: bold;
}
#articles
{
margin : 0 2.5cm 0.5cm 2.5cm;
text-align : center;
}
#numRecu
@ -39,20 +35,6 @@
text-align : right;
margin-right: 1em;
}
#beneficiaire, #donateur
{
}
#beneficiaire, #donateur, #versements, #final
{
}
#beneficiaire > h3
{
}
#donateur > h3
{
}
#versements
{
@ -84,22 +66,10 @@
margin: 0 auto;
padding-bottom : 2mm;
}
#final
{
page-break-after: auto;
}
/*
@media print
{
div#imprimer {
display:none;
}
}
*/
</style>
</head>
<body>
<body class="print">
<div class="cartouche" id="entete">
<img id="logo" src="{{$logo_asso}}" />
<p id="titre">Reçu au titre des dons à certains organismes d'intérêt général</p>

128
templates/recu_html.tpl Normal file
View file

@ -0,0 +1,128 @@
<!-- nav bar -->
{include file="%s/templates/_nav.tpl"|args:$plugin_root current_nav="activite"}
<?php
$fmt = new \NumberFormatter('fr_FR', \NumberFormatter::SPELLOUT);
if ($numero_sequentiel) { $numero_courant = $numero_sequentiel; }
?>
<div id="global" onload="changerStyle(this.document)">
{* Itération sur les personnes *}
{foreach from=$totalPersonnes key="idPersonne" item="personne"}
<div class="previs_recu">
<div class="cartouche" id="entete">
<img id="logo" src="{$logo_asso}" />
<p id="titre">Reçu au titre des dons à certains organismes d'intérêt général</p>
<p id="articles">Articles 200, 238 bis et 978 du code général des impôts</p>
<div id="numRecu">
{if $numero_sequentiel}
{afficher_numero_recu prefixe=$prefixeNum membre=$membre numero_personne=$personne->numero numero_sequentiel=$numero_courant}
<?php
++$numero_courant;
?>
{else}
{afficher_numero_recu prefixe=$prefixeNum membre=$membre numero_personne=$personne->numero numero_sequentiel=$numero_sequentiel}
{/if}
</div>
</div>
<div class="cartouche" id="beneficiaire">
<h3 class="rubrique">Bénéficiaire des versements</h3>
<p class="important">Association « {$nom_asso} »<br />
{$adresse_asso}<br />
<span class="titre">Objet&nbsp;:&nbsp;</span><span class="libelle">{$objet_asso}</span>
</p>
</div>
<div class="cartouche" id="donateur">
<h3 class="rubrique">Donateur</h3>
<p>
{$personne.nomPrenom}<br />
{$personne.adresse}<br />
{$personne.code} {$personne.ville}
{if $courriel && $personne.courriel != ""}
<br />courriel : <a href="mailto:{$personne.courriel}">{$personne.courriel}</a>
{/if}
</p>
</div>
<div class="cartouche" id="versements">
<p>Le bénéficiaire reconnaît avoir reçu au titre des dons et versements ouvrant droit à réduction d'impôt :</p>
<ul>
{foreach from=$personne.versements key="taux" item="versement"}
<li>
la somme de <b>***{$versement.montant|raw|money}*** euros</b>
<?php
$euros = $fmt->format((int)($versement->montant / 100));
if ($versement->montant % 100 != 0) {
$cents = $fmt->format($versement->montant % 100);
} else {
$cents = "";
}
?>
{if $cents != ""}
(<b>{$euros} euros et {$cents} cents</b>)
{else}
(<b>{$euros} euros</b>)
{/if}
<?php
$libelle = $libelles_taux[$taux];
?>
{if $libelle != ""}
({$libelle})
{/if}
<br /><span id="date_versements">date des versements&nbsp;:
{if $versement.dateMin == $versement.dateMax}
le {$versement.dateMin|date_format:"%d/%m/%Y"}
{else}
du {$versement.dateMin|date_format:"%d/%m/%Y"} au {$versement.dateMax|date_format:"%d/%m/%Y"}
{/if}
</span>
</li>
{/foreach}
</ul>
{foreach from=$complements item="elem"}
<p class="complements"><span class="titre">{$elem.titre}</span>&nbsp;<span class="libelle">{$elem.libelle}</span></p>
{/foreach}
<p class="complements">Le bénéficiaire certifie sur lhonneur que les dons et versements quil reçoit ouvrent droit à la réduction d'impôt prévue {$texteArticles} du code général des impôts.</p>
</div>
<div class="cartouche" id="final">
<p id="ville">{$ville_asso} le {$date}
<img id="signature" src="{$signature}" />
</p>
<div>
<span id="nom">{$nom_responsable}</span><br />
<span id="fonction">{$fonction_responsable}</span>
</div>
</div>
</div>
{/foreach} {* Itération sur les personnes *}
<div>
{* scripts divers *}
<script src="script.js"></script>
{*
* remplacer la feuille de style d'impression de paheko par la mienne
* puis déclencher l'impression
*}
{literal}
<script type="text/javascript">
document.addEventListener('DOMContentLoaded',
function() {
changerStyle(document);
setTimeout(function() {
window.print()
}, 750);
});
</script>
{/literal}
<!-- footer -->
{include file="admin/_foot.tpl"}