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" : [
|
"articlesCGI" : [
|
||||||
"Article 200",
|
{
|
||||||
"Article 228 bis",
|
"titre" : "Article 200",
|
||||||
"Article 978"
|
"valeur" : 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"titre" : "Article 228 bis",
|
||||||
|
"valeur" : 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"titre" : "Article 978",
|
||||||
|
"valeur" : 0
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"reduction" : [
|
"reduction" : [
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,12 +13,10 @@
|
||||||
|
|
||||||
<form method="post" action="{$self_url}">
|
<form method="post" action="{$self_url}">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend>Objet</legend>
|
<legend>Objet (but) de l'association</legend>
|
||||||
<dl>
|
<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>
|
<dt><label>Objet</label><b title="Champ obligatoire">obligatoire</b></dt>
|
||||||
{input type="text" name="objet_0" source=$plugin.config label="Ligne 1" maxlength=95}
|
{input type="text" name="objet_asso" source=$plugin.config label="" maxlength=300}
|
||||||
{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>
|
</dl>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
|
@ -26,10 +24,14 @@
|
||||||
<legend>Droit à la réduction d'impôt</legend>
|
<legend>Droit à la réduction d'impôt</legend>
|
||||||
<dl>
|
<dl>
|
||||||
<dt><label>Articles concernés par l'association : </label>
|
<dt><label>Articles concernés par l'association : </label>
|
||||||
<b title="(Champ obligatoire)">obligatoire pour reçus fiscaux</b>
|
<b title="Champ obligatoire">obligatoire</b>
|
||||||
</dt>
|
</dt>
|
||||||
{foreach from=$plugin_config->articlesCGI key="num" item="article"}
|
{foreach from=$plugin_config->articlesCGI key="key" item="article"}
|
||||||
{input type="checkbox" name="cgi_art_%s"|args:$num value="1" source=$plugin.config label=$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}
|
{/foreach}
|
||||||
</dl>
|
</dl>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
|
@ -78,12 +78,12 @@
|
||||||
<td>
|
<td>
|
||||||
<span class="radio-btn">
|
<span class="radio-btn">
|
||||||
<input type="radio" id="taux_normal_{$activite.idTarif}"
|
<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>
|
<label for="taux_normal_{$activite.idTarif}">normal</label>
|
||||||
</span>
|
</span>
|
||||||
<span class=" radio-btn">
|
<span class=" radio-btn">
|
||||||
<input type="radio" id="taux_majore_{$activite.idTarif}"
|
<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>
|
<label for="taux_majore_{$activite.idTarif}">majoré</label>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
|
|
|
@ -3,16 +3,24 @@
|
||||||
namespace Garradin;
|
namespace Garradin;
|
||||||
|
|
||||||
$session->requireAccess($session::SECTION_CONFIG, $session::ACCESS_ADMIN);
|
$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'))
|
if (f('save') && $form->check('recusfiscaux_config'))
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$plugin->setConfig('objet_0', trim(f('objet_0')));
|
$plugin->setConfig('objet_asso', trim(f('objet_asso')));
|
||||||
$plugin->setConfig('objet_1', trim(f('objet_1')));
|
$confArticles = $plugin->getConfig('articlesCGI');
|
||||||
$plugin->setConfig('objet_2', trim(f('objet_2')));;
|
// effacer l'ancienne configuration
|
||||||
$plugin->setConfig('cgi_art1', (bool)f('cgi_art_1'));
|
for ($i = 0; $i < count($confArticles); ++$i) {
|
||||||
$plugin->setConfig('cgi_art2', (bool)f('cgi_art_2'));
|
$confArticles[$i]->valeur = 0;
|
||||||
$plugin->setConfig('cgi_art3', (bool)f('cgi_art_3'));
|
}
|
||||||
|
// 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');
|
\Garradin\Utils::redirect(PLUGIN_URL . 'config.php?ok');
|
||||||
}
|
}
|
||||||
catch (UserException $e)
|
catch (UserException $e)
|
||||||
|
|
|
@ -21,6 +21,7 @@ $activitesTarifsComptes = Utils::getActivitesTarifsEtComptes();
|
||||||
$tpl->assign('anneesFiscales', $anneesFiscales);
|
$tpl->assign('anneesFiscales', $anneesFiscales);
|
||||||
$tpl->assign('anneeCourante', $anneeCourante);
|
$tpl->assign('anneeCourante', $anneeCourante);
|
||||||
$tpl->assign('activitesTarifsComptes', $activitesTarifsComptes);
|
$tpl->assign('activitesTarifsComptes', $activitesTarifsComptes);
|
||||||
|
$tpl->assign('plugin_config', $plugin->getConfig());
|
||||||
$tpl->assign('plugin_css', ['style.css']);
|
$tpl->assign('plugin_css', ['style.css']);
|
||||||
|
|
||||||
// envoyer au template
|
// envoyer au template
|
||||||
|
|
|
@ -4,9 +4,20 @@ namespace Garradin;
|
||||||
|
|
||||||
use Garradin\Plugin\RecusFiscaux\Utils;
|
use Garradin\Plugin\RecusFiscaux\Utils;
|
||||||
|
|
||||||
// récupérer les tarifs sélectionnés
|
// récupérer les infos du formulaire
|
||||||
$lesTarifs = f('tarifs');
|
$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
|
// liste des versements correspondants
|
||||||
$_SESSION['lesVersements'] = Utils::getVersementsActivite($_SESSION['annee_recu'], $lesTarifs);
|
$_SESSION['lesVersements'] = Utils::getVersementsActivite($_SESSION['annee_recu'], $lesTarifs);
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ namespace Garradin;
|
||||||
use Garradin\Plugin\RecusFiscaux\Utils;
|
use Garradin\Plugin\RecusFiscaux\Utils;
|
||||||
|
|
||||||
// liste des versements totaux par personne
|
// 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']);
|
$_SESSION['lesVersementsTotaux'] = Utils::getVersementsTotaux($_SESSION['annee_recu']);
|
||||||
|
|
||||||
// préparation de l'affichage
|
// préparation de l'affichage
|
||||||
|
|
Loading…
Reference in New Issue