corrections erreurs désinstallation et génération reçus

FossilOrigin-Name: bf921ff8922652b165537fd1a2e9cf7661becaab65484213c9f93f9685ef66c4
This commit is contained in:
engel 2022-03-03 11:09:52 +00:00
parent cc6c46f59d
commit 95c8063083
8 changed files with 65 additions and 23 deletions

View File

@ -17,12 +17,14 @@
{
"taux" : "normal",
"ligne" : "UF",
"remarque" : ""
"remarque" : "",
"valeur" : 0
},
{
"taux" : "majoré",
"ligne" : "UD",
"remarque" : "aide aux personnes en difficulté"
"remarque" : "aide aux personnes en difficulté",
"valeur" : 0
}
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -4,4 +4,7 @@ use Garradin\Entities\Files\File;
// « signature » par défaut à remplacer (voir l'onglet de configuration)
$path = __DIR__ . '/data/default_signature.png';
$_SESSION['default_signature_file'] = (new File)->createAndStore('skel/plugin/recusfiscaux','default_signature.png', $path, null);
$default_signature_file = (new File)->createAndStore('skel/plugin/recusfiscaux',
'default_signature.png',
$path,
null);

View File

@ -92,7 +92,8 @@ FDD;
$nbArticles = count($this->articlesCGI);
if ($nbArticles == 1)
{
echo "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 à larticle $this->articlesCGI[0] du CGI</p>\n";
echo "<p>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 à larticle ";
printf("%s du code général des impôts</p>\n", $this->articlesCGI[0]);
}
else if ($nbArticles > 1)
{
@ -106,7 +107,7 @@ FDD;
echo " et ";
}
}
echo " du code général des impôts</p>";
echo " du code général des impôts</p>\n";
}
echo "</div>\n";

View File

@ -18,7 +18,10 @@
*}
<dl class="config">
<dt><label>Objet (but) de l'association</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
{input type="textarea" name="objet_asso" source=$plugin.config label="" required="required" cols="50" rows="6" maxlength=300}
{*
{input type="text" name="objet_asso" source=$plugin.config label="" required="required" maxlength=300}
*}
</dl>
{*
</fieldset>
@ -28,35 +31,50 @@
*}
<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 ; sélectionnez tous les articles qui s'appliquent à l'asociation)</b>
</dt>
{foreach from=$plugin_config->articlesCGI key="key" item="article"}
{*
À VÉRIFIER : {input : checked ne fonctionne pas si l'attribut name est un tableau...
{input type="checkbox" name="articlesCGI[]" value=$key label=$article.titre}
*}
<input type="checkbox" name="articlesCGI[]" value="{$key}"
{if $article.valeur == 1}checked{/if}><label>Article {$article.titre}</label>
<div>
<input type="checkbox" name="articlesCGI[]" value="{$key}" class="choix"
{if $article.valeur == 1}checked{/if}>
<label>Article {$article.titre}</label>
</div>
{/foreach}
</dl>
<dl class="config">
<dt><label>Taux de réduction applicables : </label>
<b title="Champ obligatoire">(obligatoire ; sélectionnez tous les taux qui s'appliquent à l'asociation)</b>
</dt>
{foreach from=$plugin_config->reduction key="key" item="taux"}
<div>
<input type="checkbox" name="tauxReduction[]" value="{$key}" class="choix"
{if $taux.valeur == 1}checked{/if}>
<label>Taux {$taux.taux}, ligne {$taux.ligne} de la déclaration
{if $taux.remarque !== ""}({$taux.remarque})</label>{/if}
</div>
{/foreach}
</dl>
{*
</fieldset>
<fieldset>
<legend>Nom, fonction et signature du responsable</legend>
*}
<dl class="config">
<dt><label>Nom du responsable</label> <b title="Champ obligatoire">(obligatoire)</b></dt>
<dt><label>Nom</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>
<dt><label>Fonction</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>
<dt><label>Signature</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>
{if $plugin_config.signature != ''}
<img id="signature" src="/{$plugin_config.signature}" />

View File

@ -5,7 +5,11 @@ use Garradin\Entities\Files\File;
// supprimer les fichiers créés
// signature par défaut
$_SESSION['default_signature_file']->delete();
$default_signature_file = \Garradin\Files\Files::get('skel/plugin/recusfiscaux/default_signature.png');
$default_signature_file->delete();
// signature réelle
$_SESSION['sig_file'][0]->delete();
$signature = $plugin->getConfig('signature');
if (null !== $signature) {
\Garradin\Files\Files::get($signature)->delete();
}

View File

@ -6,6 +6,7 @@ use Garradin\Entities\Files\File;
$session->requireAccess($session::SECTION_CONFIG, $session::ACCESS_ADMIN);
$art_sel=f('articlesCGI') ? : [];
$taux_sel = f('tauxReduction') ? : [];
$path = qg('path') ?: File::CONTEXT_CONFIG;
$context = Files::getContext($path);
@ -21,7 +22,7 @@ if (f('save') && $form->check('recusfiscaux_config'))
$confArticles = $plugin->getConfig('articlesCGI');
// effacer l'ancienne configuration
for ($i = 0; $i < count($confArticles); ++$i) {
$confArticles[$i]->valeur = 0;
$confArticles[$i]->valeur = 0;
}
// et copier la nouvelle
foreach ($art_sel as $article) {
@ -29,10 +30,29 @@ if (f('save') && $form->check('recusfiscaux_config'))
}
$plugin->setConfig("articlesCGI", $confArticles);
// taux de réduction
$confTaux = $plugin->getConfig('reduction');
// effacer l'ancienne configuration
for ($i = 0; $i < count($confTaux); ++$i) {
$confTaux[$i]->valeur = 0;
}
// et copier la nouvelle
foreach ($taux_sel as $taux) {
$confTaux[$taux]->valeur = 1;
}
$plugin->setConfig("reduction", $confTaux);
// 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']) && count($_SESSION['sig_file']) > 0) {
if (isset($_SESSION['sig_file']) && count($_SESSION['sig_file']) > 0)
{
// supprimer la signature précédente, si besoin
if (null !== $plugin->getConfig('signature'))
{
\Garradin\Files\Files::get($plugin->getConfig('signature'))->delete();
}
// puis installer la nouvelle
$plugin->setConfig('signature', $_SESSION['sig_file'][0]->path);
}

View File

@ -11,9 +11,6 @@ fieldset {
-webkit-border-radius:8px;
border-radius:8px;
}
fieldset label {
font-weight:bold;
}
div span {
padding-left : 0.5em;
padding-right : 0.5em;
@ -27,9 +24,6 @@ summary.activite {
h3.personne {
background: rgba(var(--gSecondColor), 0.35);
}
input[type="text"] {
width: 50em;
}
#signature
{
max-width: 300px;