paramétrage articles CGI, nom et fonction responsable
FossilOrigin-Name: be718016fdbe18eb51c7245ea996fffc6a1cce1ce4eb694a38042acd8356f782
This commit is contained in:
parent
b819562bc6
commit
c6515e18e4
@ -1,15 +1,15 @@
|
|||||||
{
|
{
|
||||||
"articlesCGI" : [
|
"articlesCGI" : [
|
||||||
{
|
{
|
||||||
"titre" : "Article 200",
|
"titre" : "200",
|
||||||
"valeur" : 0
|
"valeur" : 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"titre" : "Article 228 bis",
|
"titre" : "228 bis",
|
||||||
"valeur" : 0
|
"valeur" : 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"titre" : "Article 978",
|
"titre" : "978",
|
||||||
"valeur" : 0
|
"valeur" : 0
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -9,6 +9,9 @@ class RecusHTML
|
|||||||
private $nomAsso;
|
private $nomAsso;
|
||||||
private $adresseAsso;
|
private $adresseAsso;
|
||||||
private $objetAsso;
|
private $objetAsso;
|
||||||
|
private $nomResponsable;
|
||||||
|
private $fonctionResponsable;
|
||||||
|
private $articlesCGI;
|
||||||
private $signature;
|
private $signature;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -17,18 +20,23 @@ class RecusHTML
|
|||||||
function __construct($nomAsso,
|
function __construct($nomAsso,
|
||||||
$adresseAsso,
|
$adresseAsso,
|
||||||
$objetAsso,
|
$objetAsso,
|
||||||
|
$nomResponsable,
|
||||||
|
$fonctionResponsable,
|
||||||
|
$articlesCGI,
|
||||||
$signature)
|
$signature)
|
||||||
{
|
{
|
||||||
$this->nomAsso = $nomAsso;
|
$this->nomAsso = $nomAsso;
|
||||||
$this->adresseAsso = $adresseAsso;
|
$this->adresseAsso = $adresseAsso;
|
||||||
$this->objetAsso = $objetAsso;
|
$this->objetAsso = $objetAsso;
|
||||||
|
$this->nomResponsable = $nomResponsable;
|
||||||
|
$this->fonctionResponsable = $fonctionResponsable;
|
||||||
$this->signature = $signature;
|
$this->signature = $signature;
|
||||||
|
$this->articlesCGI = $articlesCGI;
|
||||||
$this->html = $this->entete();
|
$this->html = $this->entete();
|
||||||
}
|
}
|
||||||
|
|
||||||
function get()
|
function get()
|
||||||
{
|
{
|
||||||
//echo $this->html;
|
|
||||||
return $this->html;
|
return $this->html;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,24 +77,37 @@ FDD;
|
|||||||
|
|
||||||
foreach ($lesMontants as $taux => $montant)
|
foreach ($lesMontants as $taux => $montant)
|
||||||
{
|
{
|
||||||
$this->imprimer_montant("la somme de ",
|
$this->imprimer_montant($montant,
|
||||||
$montant,
|
|
||||||
Utils::getLigneReduction($taux));
|
Utils::getLigneReduction($taux));
|
||||||
}
|
}
|
||||||
echo "</ul>\n";
|
echo "</ul>\n";
|
||||||
|
|
||||||
$this->imprimer_description("Date des versements :",
|
$this->imprimer_description("Date des versements :",
|
||||||
"année {$annee_recu}");
|
"année {$annee_recu}");
|
||||||
echo <<<FDD
|
|
||||||
<p>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</p>
|
|
||||||
|
|
||||||
FDD;
|
|
||||||
$this->imprimer_description("Forme du don : ",
|
|
||||||
"Autre");
|
|
||||||
$this->imprimer_description("Nature du don : ",
|
$this->imprimer_description("Nature du don : ",
|
||||||
"Numéraire");
|
"Numéraire");
|
||||||
$this->imprimer_description("Mode de versement : ",
|
$this->imprimer_description("Mode de versement : ",
|
||||||
"chèque et/ou virement");
|
"chèque et/ou virement");
|
||||||
|
|
||||||
|
// articles du CGI
|
||||||
|
$nbArticles = count($this->articlesCGI);
|
||||||
|
if ($nbArticles == 1)
|
||||||
|
{
|
||||||
|
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 $this->articlesCGI[0] du CGI</p>\n";
|
||||||
|
}
|
||||||
|
else if ($nbArticles > 1)
|
||||||
|
{
|
||||||
|
echo "<p>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 aux articles ";
|
||||||
|
for ($i = 0; $i < $nbArticles; ++$i) {
|
||||||
|
printf("%s", $this->articlesCGI[$i]);
|
||||||
|
if ($i < $nbArticles - 2) {
|
||||||
|
echo ", ";
|
||||||
|
}
|
||||||
|
else if ($i == $nbArticles - 2) {
|
||||||
|
echo " et ";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
echo " du code général des impôts</p>";
|
||||||
|
}
|
||||||
echo "</div>\n";
|
echo "</div>\n";
|
||||||
|
|
||||||
// cartouche final
|
// cartouche final
|
||||||
@ -95,7 +116,8 @@ echo <<<FDD
|
|||||||
<div class="cartouche" id="final">
|
<div class="cartouche" id="final">
|
||||||
<p>Rennes le {$date}</p>
|
<p>Rennes le {$date}</p>
|
||||||
<img id="signature" src="$this->signature" />
|
<img id="signature" src="$this->signature" />
|
||||||
<p id="fonction">Président</p>
|
<p id="nom">$this->nomResponsable</p>
|
||||||
|
<p id="fonction">$this->fonctionResponsable</p>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@ -112,13 +134,13 @@ FDD;
|
|||||||
FDD;
|
FDD;
|
||||||
}
|
}
|
||||||
|
|
||||||
// imprimer le montant de la réduction et un libellé
|
// imprimer le montant du versement et un libellé
|
||||||
function imprimer_montant($texte, $montant, $libelle = "")
|
function imprimer_montant($montant, $libelle = "")
|
||||||
{
|
{
|
||||||
$valeur = number_format($montant, 2, ',', '');
|
$valeur = number_format($montant, 2, ',', '');
|
||||||
echo "<li>{$texte} {$valeur} euros";
|
echo "<li>la somme de <b>{$valeur} euros</b>";
|
||||||
if ($libelle != "") {
|
if ($libelle != "") {
|
||||||
echo " : {$libelle}";
|
echo " ({$libelle})";
|
||||||
}
|
}
|
||||||
echo "</li>\n";
|
echo "</li>\n";
|
||||||
}
|
}
|
||||||
@ -143,7 +165,7 @@ echo <<<FDD
|
|||||||
<span>N° 11580*4</span>
|
<span>N° 11580*4</span>
|
||||||
</div>
|
</div>
|
||||||
<p id="titre">Reçu au titre des dons à certains organismes d'intérêt général</p>
|
<p id="titre">Reçu au titre des dons à certains organismes d'intérêt général</p>
|
||||||
<p id="articles">Article 200, 238 bis et 885-0 V bis A du code général des impôts</p>
|
<p id="articles">Articles 200, 238 bis et 978 du code général des impôts</p>
|
||||||
|
|
||||||
FDD;
|
FDD;
|
||||||
return ob_get_clean();
|
return ob_get_clean();
|
||||||
|
@ -141,11 +141,14 @@ class Utils
|
|||||||
{
|
{
|
||||||
foreach ($lesTaux as $elem)
|
foreach ($lesTaux as $elem)
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
$ligne = "taux " . $elem->taux . ", ligne " . $elem->ligne;
|
$ligne = "taux " . $elem->taux . ", ligne " . $elem->ligne;
|
||||||
if ($elem->remarque != "") {
|
if ($elem->remarque != "") {
|
||||||
$ligne .= ", " . $elem->remarque;
|
$ligne .= ", " . $elem->remarque;
|
||||||
}
|
}
|
||||||
$lignes[$elem->taux] = $ligne;
|
$lignes[$elem->taux] = $ligne;
|
||||||
|
*/
|
||||||
|
$lignes[$elem->taux] = $elem->remarque;
|
||||||
}
|
}
|
||||||
return $lignes;
|
return $lignes;
|
||||||
}
|
}
|
||||||
|
11
lib/pdf.css
11
lib/pdf.css
@ -24,7 +24,6 @@ body
|
|||||||
#entete
|
#entete
|
||||||
{
|
{
|
||||||
grid-area: entete;
|
grid-area: entete;
|
||||||
width: 100%;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#logoCerfa
|
#logoCerfa
|
||||||
@ -70,31 +69,26 @@ body
|
|||||||
#numRecu
|
#numRecu
|
||||||
{
|
{
|
||||||
text-align : right;
|
text-align : right;
|
||||||
/* display : inline;*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#beneficiaire
|
#beneficiaire
|
||||||
{
|
{
|
||||||
grid-area: beneficiaire;
|
grid-area: beneficiaire;
|
||||||
width: 100%;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#donateur
|
#donateur
|
||||||
{
|
{
|
||||||
grid-area: donateur;
|
grid-area: donateur;
|
||||||
width: 100%;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#versements
|
#versements
|
||||||
{
|
{
|
||||||
grid-area: versements;
|
grid-area: versements;
|
||||||
width: 100%;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#final
|
#final
|
||||||
{
|
{
|
||||||
grid-area: signature;
|
grid-area: signature;
|
||||||
width: 100%;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.rubrique
|
.rubrique
|
||||||
@ -106,7 +100,7 @@ body
|
|||||||
.cartouche
|
.cartouche
|
||||||
{
|
{
|
||||||
margin : 2mm auto;
|
margin : 2mm auto;
|
||||||
padding : 0 1mm;
|
padding : 0 2mm;
|
||||||
border : 1px solid rgb(0, 0, 128);
|
border : 1px solid rgb(0, 0, 128);
|
||||||
border-radius : 8px;
|
border-radius : 8px;
|
||||||
}
|
}
|
||||||
@ -124,8 +118,7 @@ body
|
|||||||
padding-bottom : 2mm;
|
padding-bottom : 2mm;
|
||||||
}
|
}
|
||||||
|
|
||||||
#fonction
|
#fonction, #nom
|
||||||
{
|
{
|
||||||
text-align : center;
|
text-align : center;
|
||||||
padding-bottom : 0.5cm;
|
|
||||||
}
|
}
|
||||||
|
@ -11,19 +11,23 @@
|
|||||||
|
|
||||||
{form_errors}
|
{form_errors}
|
||||||
|
|
||||||
<form method="post" action="{$self_url}" enctype="multipart/form-data" data-focus="1">
|
<form method="post" action="{$self_url}" enctype="multipart/form-data">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
|
{*
|
||||||
<legend>Objet (but) de l'association</legend>
|
<legend>Objet (but) de l'association</legend>
|
||||||
<dl>
|
*}
|
||||||
<dt><label>Objet</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
|
<dl class="config">
|
||||||
|
<dt><label>Objet (but) de l'association</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
|
||||||
{input type="text" name="objet_asso" source=$plugin.config label="" required="required" maxlength=300}
|
{input type="text" name="objet_asso" source=$plugin.config label="" required="required" maxlength=300}
|
||||||
</dl>
|
</dl>
|
||||||
|
{*
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend>Droit à la réduction d'impôt</legend>
|
<legend>Droit à la réduction d'impôt</legend>
|
||||||
<dl>
|
*}
|
||||||
<dt><label>Articles concernés par l'association : </label>
|
<dl class="config">
|
||||||
|
<dt><label>Articles du code général des impôts concernés par l'association : </label>
|
||||||
<b title="Champ obligatoire">(obligatoire)</b>
|
<b title="Champ obligatoire">(obligatoire)</b>
|
||||||
</dt>
|
</dt>
|
||||||
{foreach from=$plugin_config->articlesCGI key="key" item="article"}
|
{foreach from=$plugin_config->articlesCGI key="key" item="article"}
|
||||||
@ -32,14 +36,27 @@
|
|||||||
{input type="checkbox" name="articlesCGI[]" value=$key label=$article.titre}
|
{input type="checkbox" name="articlesCGI[]" value=$key label=$article.titre}
|
||||||
*}
|
*}
|
||||||
<input type="checkbox" name="articlesCGI[]" value="{$key}"
|
<input type="checkbox" name="articlesCGI[]" value="{$key}"
|
||||||
{if $article.valeur == 1}checked{/if}><label>{$article.titre}</label>
|
{if $article.valeur == 1}checked{/if}><label>Article {$article.titre}</label>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
</dl>
|
</dl>
|
||||||
|
{*
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend>Signature du responsable</legend>
|
<legend>Nom, fonction et signature du responsable</legend>
|
||||||
<dl>
|
*}
|
||||||
|
<dl class="config">
|
||||||
|
<dt><label>Nom du responsable</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
|
||||||
|
{input type="text" name="nom_responsable" source=$plugin.config label="" required="required" maxlength=50}
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<dl class="config">
|
||||||
|
<dt><label>Fonction du responsable</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
|
||||||
|
{input type="text" name="fonction_responsable" source=$plugin.config label="" required="required" maxlength=50}
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<dl class="config">
|
||||||
|
<dt><label>Signature du responsable</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
|
||||||
<p>L'image de la signature doit être d'une taille « raisonnable » et avoir un fond transparent</p>
|
<p>L'image de la signature doit être d'une taille « raisonnable » et avoir un fond transparent</p>
|
||||||
{if $plugin_config.signature != ''}
|
{if $plugin_config.signature != ''}
|
||||||
<img id="signature" src="/{$plugin_config.signature}" />
|
<img id="signature" src="/{$plugin_config.signature}" />
|
||||||
|
@ -29,7 +29,9 @@ if (f('save') && $form->check('recusfiscaux_config'))
|
|||||||
}
|
}
|
||||||
$plugin->setConfig("articlesCGI", $confArticles);
|
$plugin->setConfig("articlesCGI", $confArticles);
|
||||||
|
|
||||||
// signature
|
// nom, fonction et signature du responsable
|
||||||
|
$plugin->setConfig('nom_responsable', trim(f('nom_responsable')));
|
||||||
|
$plugin->setConfig('fonction_responsable', trim(f('fonction_responsable')));
|
||||||
if (isset($_SESSION['sig_file'])) {
|
if (isset($_SESSION['sig_file'])) {
|
||||||
$plugin->setConfig('signature', $_SESSION['sig_file'][0]->path);
|
$plugin->setConfig('signature', $_SESSION['sig_file'][0]->path);
|
||||||
}
|
}
|
||||||
|
@ -26,8 +26,15 @@ $signature =
|
|||||||
\Garradin\Files\Files::get($plugin->getConfig('signature'))->fullpath() :
|
\Garradin\Files\Files::get($plugin->getConfig('signature'))->fullpath() :
|
||||||
\Garradin\WWW_URL . "plugin/recusFiscaux/default_signature.png";
|
\Garradin\WWW_URL . "plugin/recusFiscaux/default_signature.png";
|
||||||
|
|
||||||
$listeFichiers = []; // fichiers pdf générés
|
// articles du CGI
|
||||||
|
$articlesCGI = array();
|
||||||
|
foreach ($plugin->getConfig('articlesCGI') as $article)
|
||||||
|
{
|
||||||
|
if ($article->valeur == 1) {
|
||||||
|
$articlesCGI[] = $article->titre;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$listeFichiers = array(); // fichiers pdf générés
|
||||||
foreach ($totalPersonnes as $idPersonne => $personne)
|
foreach ($totalPersonnes as $idPersonne => $personne)
|
||||||
{
|
{
|
||||||
// générer un fichier par reçu
|
// générer un fichier par reçu
|
||||||
@ -35,6 +42,9 @@ foreach ($totalPersonnes as $idPersonne => $personne)
|
|||||||
$nomAsso,
|
$nomAsso,
|
||||||
$adresseAsso,
|
$adresseAsso,
|
||||||
$plugin->getConfig('objet_asso'),
|
$plugin->getConfig('objet_asso'),
|
||||||
|
$plugin->getConfig('nom_responsable'),
|
||||||
|
$plugin->getConfig('fonction_responsable'),
|
||||||
|
$articlesCGI,
|
||||||
$signature
|
$signature
|
||||||
);
|
);
|
||||||
// extraire les montants des versements
|
// extraire les montants des versements
|
||||||
|
@ -24,8 +24,15 @@ $signature =
|
|||||||
\Garradin\Files\Files::get($plugin->getConfig('signature'))->fullpath() :
|
\Garradin\Files\Files::get($plugin->getConfig('signature'))->fullpath() :
|
||||||
\Garradin\WWW_URL . "plugin/recusFiscaux/default_signature.png";
|
\Garradin\WWW_URL . "plugin/recusFiscaux/default_signature.png";
|
||||||
|
|
||||||
$listeFichiers = []; // fichiers pdf générés
|
// articles du CGI
|
||||||
|
$articlesCGI = array();
|
||||||
|
foreach ($plugin->getConfig('articlesCGI') as $article)
|
||||||
|
{
|
||||||
|
if ($article->valeur == 1) {
|
||||||
|
$articlesCGI[] = $article->titre;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$listeFichiers = array(); // fichiers pdf générés
|
||||||
foreach ($versementsSelectionnes as $ligne)
|
foreach ($versementsSelectionnes as $ligne)
|
||||||
{
|
{
|
||||||
// générer un fichier par reçu
|
// générer un fichier par reçu
|
||||||
@ -33,6 +40,9 @@ foreach ($versementsSelectionnes as $ligne)
|
|||||||
$nomAsso,
|
$nomAsso,
|
||||||
$adresseAsso,
|
$adresseAsso,
|
||||||
$plugin->getConfig('objet_asso'),
|
$plugin->getConfig('objet_asso'),
|
||||||
|
$plugin->getConfig('nom_responsable'),
|
||||||
|
$plugin->getConfig('fonction_responsable'),
|
||||||
|
$articlesCGI,
|
||||||
$signature
|
$signature
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -34,3 +34,7 @@ input[type="text"] {
|
|||||||
{
|
{
|
||||||
width:300px;
|
width:300px;
|
||||||
}
|
}
|
||||||
|
dl.config
|
||||||
|
{
|
||||||
|
padding : 1ex 0;
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user