amélioration gestion configuration
FossilOrigin-Name: dd08bb3079c4797c7944082ca9377c645a73f466048bd3928eb1e83973f4fba3
This commit is contained in:
parent
a988c131aa
commit
3e02319484
15
config.json
15
config.json
@ -1,8 +1,17 @@
|
||||
{
|
||||
"articlesCGI" : [
|
||||
"Article 200",
|
||||
"Article 228 bis",
|
||||
"Article 978"
|
||||
{
|
||||
"titre" : "Article 200",
|
||||
"valeur" : 0
|
||||
},
|
||||
{
|
||||
"titre" : "Article 228 bis",
|
||||
"valeur" : 0
|
||||
},
|
||||
{
|
||||
"titre" : "Article 978",
|
||||
"valeur" : 0
|
||||
}
|
||||
],
|
||||
"reduction" : [
|
||||
{
|
||||
|
@ -13,28 +13,30 @@
|
||||
|
||||
<form method="post" action="{$self_url}">
|
||||
<fieldset>
|
||||
<legend>Objet</legend>
|
||||
<dl>
|
||||
<dt><label>L'objet (but) de l'association doit tenir sur 3 lignes de 100 caractères maximum chacune.</label><b title="(Champ obligatoire)">obligatoire pour reçus fiscaux</b></dt>
|
||||
{input type="text" name="objet_0" source=$plugin.config label="Ligne 1" maxlength=95}
|
||||
{input type="text" name="objet_1" source=$plugin.config label="Ligne 2" maxlength=95}
|
||||
{input type="text" name="objet_2" source=$plugin.config label="Ligne 3" maxlength=95}
|
||||
</dl>
|
||||
<legend>Objet (but) de l'association</legend>
|
||||
<dl>
|
||||
<dt><label>Objet</label><b title="Champ obligatoire">obligatoire</b></dt>
|
||||
{input type="text" name="objet_asso" source=$plugin.config label="" maxlength=300}
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Droit à la réduction d'impôt</legend>
|
||||
<dl>
|
||||
<dt><label>Articles concernés par l'association : </label>
|
||||
<b title="(Champ obligatoire)">obligatoire pour reçus fiscaux</b>
|
||||
</dt>
|
||||
{foreach from=$plugin_config->articlesCGI key="num" item="article"}
|
||||
{input type="checkbox" name="cgi_art_%s"|args:$num value="1" source=$plugin.config label=$article}
|
||||
{/foreach}
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label>Articles concernés par l'association : </label>
|
||||
<b title="Champ obligatoire">obligatoire</b>
|
||||
</dt>
|
||||
{foreach from=$plugin_config->articlesCGI key="key" item="article"}
|
||||
{* {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.titre}</label>
|
||||
{/foreach}
|
||||
</dl>
|
||||
</fieldset>
|
||||
<p class="submit">
|
||||
{csrf_field key="recusfiscaux_config"}
|
||||
{button type="submit" name="save" label="Enregistrer" shape="right" class="main"}
|
||||
</p>
|
||||
</form>
|
||||
</form>
|
@ -78,12 +78,12 @@
|
||||
<td>
|
||||
<span class="radio-btn">
|
||||
<input type="radio" id="taux_normal_{$activite.idTarif}"
|
||||
name="taux_reduction_{$activite.idTarif}" value="taux_normal" disabled />
|
||||
name="taux_reduction_{$activite.idTarif}" value="{$plugin_config->reduction[0]->taux}" disabled />
|
||||
<label for="taux_normal_{$activite.idTarif}">normal</label>
|
||||
</span>
|
||||
<span class=" radio-btn">
|
||||
<input type="radio" id="taux_majore_{$activite.idTarif}"
|
||||
name="taux_reduction_{$activite.idTarif}" value="taux_majore" disabled />
|
||||
name="taux_reduction_{$activite.idTarif}" value="{$plugin_config->reduction[1]->taux}" disabled />
|
||||
<label for="taux_majore_{$activite.idTarif}">majoré</label>
|
||||
</span>
|
||||
</td>
|
||||
|
@ -3,16 +3,24 @@
|
||||
namespace Garradin;
|
||||
|
||||
$session->requireAccess($session::SECTION_CONFIG, $session::ACCESS_ADMIN);
|
||||
|
||||
$art_sel=f('articlesCGI');
|
||||
error_log("art sel=" . print_r($art_sel, true) . "\n");
|
||||
if (f('save') && $form->check('recusfiscaux_config'))
|
||||
{
|
||||
try {
|
||||
$plugin->setConfig('objet_0', trim(f('objet_0')));
|
||||
$plugin->setConfig('objet_1', trim(f('objet_1')));
|
||||
$plugin->setConfig('objet_2', trim(f('objet_2')));;
|
||||
$plugin->setConfig('cgi_art1', (bool)f('cgi_art_1'));
|
||||
$plugin->setConfig('cgi_art2', (bool)f('cgi_art_2'));
|
||||
$plugin->setConfig('cgi_art3', (bool)f('cgi_art_3'));
|
||||
$plugin->setConfig('objet_asso', trim(f('objet_asso')));
|
||||
$confArticles = $plugin->getConfig('articlesCGI');
|
||||
// effacer l'ancienne configuration
|
||||
for ($i = 0; $i < count($confArticles); ++$i) {
|
||||
$confArticles[$i]->valeur = 0;
|
||||
}
|
||||
// et copier la nouvelle
|
||||
foreach ($art_sel as $article) {
|
||||
$confArticles[$article]->valeur = 1;
|
||||
}
|
||||
error_log("confArticles=" . print_r($confArticles, true) . "\n");
|
||||
$plugin->setConfig("articlesCGI", $confArticles);
|
||||
error_log("plugin->config=" . print_r($plugin->getConfig("articlesCGI"), true) . "\n");
|
||||
\Garradin\Utils::redirect(PLUGIN_URL . 'config.php?ok');
|
||||
}
|
||||
catch (UserException $e)
|
||||
|
@ -21,6 +21,7 @@ $activitesTarifsComptes = Utils::getActivitesTarifsEtComptes();
|
||||
$tpl->assign('anneesFiscales', $anneesFiscales);
|
||||
$tpl->assign('anneeCourante', $anneeCourante);
|
||||
$tpl->assign('activitesTarifsComptes', $activitesTarifsComptes);
|
||||
$tpl->assign('plugin_config', $plugin->getConfig());
|
||||
$tpl->assign('plugin_css', ['style.css']);
|
||||
|
||||
// envoyer au template
|
||||
|
@ -4,9 +4,20 @@ namespace Garradin;
|
||||
|
||||
use Garradin\Plugin\RecusFiscaux\Utils;
|
||||
|
||||
// récupérer les tarifs sélectionnés
|
||||
// récupérer les infos du formulaire
|
||||
$lesTarifs = f('tarifs');
|
||||
$_SESSION['annee_recu'] = strip_tags($_POST['annee_recu']);
|
||||
$_SESSION['annee_recu'] = f('annee_recu');
|
||||
|
||||
// taux de réduction associés
|
||||
$lesTaux = array();
|
||||
foreach ($lesTarifs as $idTarif) {
|
||||
$nomRadio = "taux_reduction_" . $idTarif;
|
||||
$valRadio = f("$nomRadio");
|
||||
$lesTaux[] = $valRadio ? $valRadio: $plugin->getConfig()->reduction[0]->taux;
|
||||
}
|
||||
// error_log("Tarifs = " . print_r($lesTarifs, true) . "\n");
|
||||
// error_log("Réducs = " . print_r($lesTaux, true) . "\n");
|
||||
|
||||
// liste des versements correspondants
|
||||
$_SESSION['lesVersements'] = Utils::getVersementsActivite($_SESSION['annee_recu'], $lesTarifs);
|
||||
|
||||
|
@ -5,7 +5,7 @@ namespace Garradin;
|
||||
use Garradin\Plugin\RecusFiscaux\Utils;
|
||||
|
||||
// liste des versements totaux par personne
|
||||
$_SESSION['annee_recu'] = strip_tags($_POST['annee_recu']);
|
||||
$_SESSION['annee_recu'] = f('annee_recu');
|
||||
$_SESSION['lesVersementsTotaux'] = Utils::getVersementsTotaux($_SESSION['annee_recu']);
|
||||
|
||||
// préparation de l'affichage
|
||||
|
Loading…
Reference in New Issue
Block a user