Amélioration navigation ; correction erreur date

FossilOrigin-Name: 21a10381cd0e6acfae85483ee95ca78652bf5671d731f7fb289e225626c26fdb
This commit is contained in:
engel 2023-02-04 15:32:03 +00:00
parent 44d37ae3bd
commit 6b000bc5bd
3 changed files with 64 additions and 26 deletions

View File

@ -1,5 +1,8 @@
<?php
$nav = $_GET['type'];
?>
<!-- nav bar --> <!-- nav bar -->
{include file="%s/templates/_nav.tpl"|args:$plugin_root current_nav="activite"} {include file="%s/templates/_nav.tpl"|args:$plugin_root current_nav="%s"|args:$nav}
<?php <?php
$fmt = new \NumberFormatter('fr_FR', \NumberFormatter::SPELLOUT); $fmt = new \NumberFormatter('fr_FR', \NumberFormatter::SPELLOUT);
@ -74,11 +77,23 @@
({$libelle}) ({$libelle})
{/if} {/if}
<br /><span id="date_versements">date des versements&nbsp;: <br /><span id="date_versements">date des versements&nbsp;:
<?php
$dmin = date("d/m/Y", $versement->dateMin);
$dmax = date("d/m/Y", $versement->dateMax);
?>
{if $versement.dateMin == $versement.dateMax}
le {$dmin}
{else}
du {$dmin} au {$dmax}
{/if}
{*
Erreur : dates décalées d'un jour (en arrière)
{if $versement.dateMin == $versement.dateMax} {if $versement.dateMin == $versement.dateMax}
le {$versement.dateMin|date_format:"%d/%m/%Y"} le {$versement.dateMin|date_format:"%d/%m/%Y"}
{else} {else}
du {$versement.dateMin|date_format:"%d/%m/%Y"} au {$versement.dateMax|date_format:"%d/%m/%Y"} du {$versement.dateMin|date_format:"%d/%m/%Y"} au {$versement.dateMax|date_format:"%d/%m/%Y"}
{/if} {/if}
*}
</span> </span>
</li> </li>
{/foreach} {/foreach}

View File

@ -9,39 +9,56 @@ use Garradin\Plugin\RecusFiscaux\Utils;
// récupérer les infos du formulaire // récupérer les infos du formulaire
// ------------------------------------------------------------ // ------------------------------------------------------------
// vérifier qu'on a bien sélectionné une activité ou un compe // vérifier qu'on a bien sélectionné une activité ou un compte
if (null === f('tarifs') && null === f('comptes')) if (! isset($_SESSION['tauxSelectionnes'])
&&
null === f('tarifs')
&&
null === f('comptes'))
{ {
\Garradin\Utils::redirect(PLUGIN_URL . 'index.php'); \Garradin\Utils::redirect(PLUGIN_URL . 'index.php');
} }
// tarifs sélectionnés // tarifs sélectionnés
$tarifsSelectionnes = f('tarifs') ?: []; if (null !== f('tarifs')) {
$tarifsSelectionnes = f('tarifs');
} else if (! isset($_SESSION['tauxSelectionnes'])) {
$tarifsSelectionnes = [];
}
// comptes sélectionnés // comptes sélectionnés
$comptesSelectionnes = f('comptes') ?: []; if (null !== f('comptes')) {
$_SESSION['comptesSelectionnes'] = f('comptes');
} /*
else if (! isset($_SESSION['tauxSelectionnes'])) {
$_SESSION['comptesSelectionnes'] = [];
}
*/
// taux de réduction associés // taux de réduction associés
$tauxSelectionnes = array(); if (isset($tarifsSelectionnes) && isset($_SESSION['comptesSelectionnes']))
foreach ($tarifsSelectionnes as $idTarif)
{ {
$nomRadio = "taux_reduction_" . $idTarif; $tauxSelectionnes = array();
$valRadio = f("$nomRadio"); foreach ($tarifsSelectionnes as $idTarif)
$tauxSelectionnes[$idTarif] = $valRadio; {
$nomRadio = "taux_reduction_" . $idTarif;
$tauxSelectionnes[$idTarif] = f("$nomRadio");
}
foreach ($_SESSION['comptesSelectionnes'] as $idCompte)
{
$nomRadio = "taux_reduction_" . $idCompte;
$tauxSelectionnes[$idCompte] = f("$nomRadio");
}
$_SESSION['tauxSelectionnes'] = $tauxSelectionnes;
} }
foreach ($comptesSelectionnes as $idCompte)
{
$nomRadio = "taux_reduction_" . $idCompte;
$valRadio = f("$nomRadio");
$tauxSelectionnes[$idCompte] = $valRadio;
}
$_SESSION['tauxSelectionnes'] = $tauxSelectionnes;
// versements correspondants à la sélection, triés par tarif, nom, compte, date $lesTarifs = array_map(fn($elem) : string =>
$lesTarifs = array_map(fn($elem) : string => substr($elem, 0, strpos($elem, '_')), strpos($elem, '_') !== false ? substr($elem, 0, strpos($elem, '_')) : "",
$tarifsSelectionnes); array_keys($_SESSION['tauxSelectionnes']));
$lesComptes = array_map(fn($elem) : string => substr($elem, 1 + strpos($elem, '_')), $lesComptes = array_map(fn($elem) : string =>
$tarifsSelectionnes); strpos($elem, '_') !== false ? substr($elem, 1 + strpos($elem, '_')) : "",
array_keys($_SESSION['tauxSelectionnes']));
$_SESSION['lesVersements'] = $_SESSION['lesVersements'] =
Utils::getVersementsTarifsComptes( Utils::getVersementsTarifsComptes(
$_SESSION['annee_recu'], $_SESSION['annee_recu'],
@ -51,15 +68,15 @@ $_SESSION['lesVersements'] =
// ajouter les versements sans tarif (tri par nom, compte, date) // ajouter les versements sans tarif (tri par nom, compte, date)
$versementsSansTarif = Utils::getVersementsComptes($_SESSION['annee_recu'], $versementsSansTarif = Utils::getVersementsComptes($_SESSION['annee_recu'],
$comptesSelectionnes, $_SESSION['comptesSelectionnes'],
$champsNom); $champsNom);
foreach ($versementsSansTarif as $versement) foreach ($versementsSansTarif as $versement)
{ {
$_SESSION['lesVersements'][] = $versement; $_SESSION['lesVersements'][] = $versement;
} }
// préparation de l'affichage // préparation de l'affichage
$tpl->assign('lesVersements', $_SESSION['lesVersements']); $tpl->assign('lesVersements', $_SESSION['lesVersements']);
$tpl->assign('annee_recu', $_SESSION['annee_recu']);
$tpl->assign('plugin_css', ['style.css']); $tpl->assign('plugin_css', ['style.css']);
// envoyer au template // envoyer au template

View File

@ -6,11 +6,16 @@ use Garradin\Plugin\RecusFiscaux\Personne;
use Garradin\Plugin\RecusFiscaux\Utils; use Garradin\Plugin\RecusFiscaux\Utils;
// vérifier si le taux de réduction a été sélectionné au préalable // vérifier si le taux de réduction a été sélectionné au préalable
$_SESSION['taux_reduction'] = f('taux_reduction'); $taux = f('taux_reduction');
if (! isset($_SESSION['taux_reduction']) || $_SESSION['taux_reduction'] == "") if (! isset($_SESSION['taux_reduction'])
&&
null === $taux)
{ {
\Garradin\Utils::redirect(PLUGIN_URL . 'index.php'); \Garradin\Utils::redirect(PLUGIN_URL . 'index.php');
} }
if (null !== $taux) {
$_SESSION['taux_reduction'] = $taux;
}
// versements par personne // versements par personne
$_SESSION['lesVersements'] = Utils::getVersementsPersonnes( $_SESSION['lesVersements'] = Utils::getVersementsPersonnes(
@ -21,6 +26,7 @@ $_SESSION['lesVersements'] = Utils::getVersementsPersonnes(
// préparation de l'affichage // préparation de l'affichage
$tpl->assign('lesVersements', $_SESSION['lesVersements']); $tpl->assign('lesVersements', $_SESSION['lesVersements']);
$tpl->assign('annee_recu', $_SESSION['annee_recu']);
$tpl->assign('plugin_css', ['style.css']); $tpl->assign('plugin_css', ['style.css']);
// envoyer au template // envoyer au template