From c1a4602684d9407baa8e75406b6a7f9730ddb2eb Mon Sep 17 00:00:00 2001 From: engel <> Date: Thu, 31 Mar 2022 08:27:31 +0000 Subject: [PATCH] =?UTF-8?q?mutualisation=20op=C3=A9rations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit FossilOrigin-Name: 0924dd35726cee498510b3e8a5f23228deef491c3c25fb2fae86240461542f6b --- templates/versements_activites.tpl | 14 ++-- templates/versements_personnes.tpl | 10 +-- www/admin/action.php | 130 +++++++++++++++++++++++++++++ www/admin/versements_activites.php | 119 -------------------------- www/admin/versements_personnes.php | 89 -------------------- 5 files changed, 142 insertions(+), 220 deletions(-) diff --git a/templates/versements_activites.tpl b/templates/versements_activites.tpl index c18fa8c..068e0a0 100644 --- a/templates/versements_activites.tpl +++ b/templates/versements_activites.tpl @@ -21,8 +21,8 @@ $personneCourante = $versement->idUser; ?> {afficher_debut_tarif versement=$versement} - {afficher_debut_personne versement=$versement} - {afficher_versement versement=$versement rang=$i} + {afficher_debut_personne user=$personneCourante idVersement="%s_%s"|args:$tarifCourant,$personneCourante} + {afficher_versement versement=$versement idVersement="%s_%s"|args:$tarifCourant,$personneCourante rang=$i} {else} {* autre versement *} {if $versement.idTarif != $tarifCourant} @@ -35,8 +35,8 @@ $personneCourante = $versement->idUser; ?> {afficher_debut_tarif versement=$versement} - {afficher_debut_personne versement=$versement} - {afficher_versement versement=$versement rang=$i} + {afficher_debut_personne user=$personneCourante idVersement="%s_%s"|args:$tarifCourant,$personneCourante} + {afficher_versement versement=$versement idVersement="%s_%s"|args:$tarifCourant,$personneCourante rang=$i} {elseif $versement.idUser != $personneCourante} {* changement de personne *} @@ -44,11 +44,11 @@ idUser; ?> - {afficher_debut_personne versement=$versement} - {afficher_versement versement=$versement rang=$i} + {afficher_debut_personne user=$personneCourante idVersement="%s_%s"|args:$tarifCourant,$personneCourante} + {afficher_versement versement=$versement idVersement="%s_%s"|args:$tarifCourant,$personneCourante rang=$i} {else} {* même personne *} - {afficher_versement versement=$versement rang=$i} + {afficher_versement versement=$versement idVersement="%s_%s"|args:$tarifCourant,$personneCourante rang=$i} {/if} {/if} {/foreach} {* Itération sur les versements *} diff --git a/templates/versements_personnes.tpl b/templates/versements_personnes.tpl index b9ee8fb..b83eae7 100644 --- a/templates/versements_personnes.tpl +++ b/templates/versements_personnes.tpl @@ -19,8 +19,8 @@ idUser; ?> - {afficher_debut_personne versement=$versement} - {afficher_versement versement=$versement rang=$i} + {afficher_debut_personne user=$personneCourante idVersement=$personneCourante} + {afficher_versement versement=$versement idVersement=$personneCourante rang=$i} {elseif $versement.idUser != $personneCourante} {* changement de personne *} @@ -28,11 +28,11 @@ idUser; ?> - {afficher_debut_personne versement=$versement} - {afficher_versement versement=$versement rang=$i} + {afficher_debut_personne user=$personneCourante idVersement=$personneCourante} + {afficher_versement versement=$versement idVersement=$personneCourante rang=$i} {else} {* même personne *} - {afficher_versement versement=$versement rang=$i} + {afficher_versement versement=$versement idVersement=$personneCourante rang=$i} {/if} {/foreach} {* Itération sur les personnes *} diff --git a/www/admin/action.php b/www/admin/action.php index 4fef81e..dc3b4f1 100644 --- a/www/admin/action.php +++ b/www/admin/action.php @@ -2,6 +2,136 @@ namespace Garradin; +use Garradin\Plugin\RecusFiscaux\Utils; + +// ------------------------------------------------------------------------ +// opérations communes +// ------------------------------------------------------------------------ + +// vérifier si l'année a bien été sélectionnée au préalable +$_SESSION['annee_recu'] = f('annee_recu'); +if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") { + \Garradin\Utils::redirect(PLUGIN_URL . 'index.php'); +} + +// champs pour le nom et prénom +$confNoms = Utils::getChampsNom($config, $plugin); +uasort($confNoms, function ($a, $b) +{ + return $a->position - $b->position; +}); +$champsNom = array(); +foreach ($confNoms as $nom => $champ) +{ + if ($champ->position != 0) { $champsNom[] = $nom; } +} + +// membres donateurs +$_SESSION['membresDonateurs'] = Utils::getDonateurs($_SESSION['annee_recu'], + $champsNom); + +// ------------------------------------------------------------------------ +// fonctions pour l'affichage +// ------------------------------------------------------------------------ + +// afficher les informations d'une activité et d'un tarif +$tpl->register_function('afficher_debut_tarif', function ($params) +{ + $versement = $params['versement']; + $idTarif = $versement->idTarif; + $tarif = $_SESSION['lesTarifs'][$idTarif]; + $idActivite = $tarif->idActivite; + $activite = $_SESSION['lesActivites'][$idActivite]; + + $out = '
+ '; + $out .= sprintf(' +

Activité « %s »

', $activite->label); + if (!empty($activite->description)) { + $out .= sprintf(' +

%s

', $activite->description); + } + $out .= sprintf(' +

tarif « %s »', $tarif->label); + if ($tarif->montant > 0) { + $out .= sprintf(' montant : %.2f €', $tarif->montant/100); + } else { + $out .= ' montant : libre'; + } + $out .= '

+
'; + return $out; +}); + +// Afficher les informations d'une personne +$tpl->register_function('afficher_debut_personne', function ($params) +{ + $idUser = $params['user']; + $idVersement = $params['idVersement']; + + $personne = $_SESSION['membresDonateurs'][$idUser]; + $out = '
+ '; + $out .= sprintf('

Versements de %s : 0,00 €

', + $personne->nomPrenom, + $idVersement); + $out .= '
'; + $out .= sprintf(' +
', + $idVersement); + $out .= sprintf(' + ', + $idVersement, + $idVersement); + $out .= sprintf(' + ', + $idVersement); + $out .= '
+
'; + return $out; +}); + +// afficher un versement +$tpl->register_function('afficher_versement', function ($params) +{ + $versement = $params['versement']; + $idVersement = $params['idVersement']; + $rang = $params['rang']; + + $out = '
' : 'impair">'; + $out .= sprintf(' + ', + $idVersement, + $idVersement, $rang, + $rang, + $idVersement, $rang, $idVersement + ); + $out .= sprintf(' + ', + $idVersement, $rang + ); + $out .= sprintf(' + %.2f', + $versement->versement/100 + ); + $out .= sprintf(' + %s +
', + date_format(date_create($versement->date),"d/m/Y")); + return $out; +}); + +// ------------------------------------------------------------------------ +// ------------------------------------------------------------------------ + if ($_POST['choix_versements'] == 'tous_versements') { require('versements_personnes.php'); } else { diff --git a/www/admin/versements_activites.php b/www/admin/versements_activites.php index 8cb04c5..68fd0b4 100644 --- a/www/admin/versements_activites.php +++ b/www/admin/versements_activites.php @@ -7,24 +7,6 @@ use Garradin\Plugin\RecusFiscaux\Personne; use Garradin\Plugin\RecusFiscaux\Tarif; use Garradin\Plugin\RecusFiscaux\Utils; -// vérifier si l'année a bien été sélectionnée au préalable -$_SESSION['annee_recu'] = f('annee_recu'); -if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") { - \Garradin\Utils::redirect(PLUGIN_URL . 'index.php'); -} - -// champs pour le nom et prénom -$confNoms = Utils::getChampsNom($config, $plugin); -uasort($confNoms, function ($a, $b) -{ - return $a->position - $b->position; -}); -$champsNom = array(); -foreach ($confNoms as $nom => $champ) -{ - if ($champ->position != 0) { $champsNom[] = $nom; } -} - // récupérer les infos du formulaire $tarifsSelectionnes = f('tarifs') ?: []; @@ -56,107 +38,6 @@ $_SESSION['lesVersements'] = Utils::getVersementsTarifs($_SESSION['annee_recu'], $tarifsSelectionnes, $champsNom); -// membres donateurs -$_SESSION['membresDonateurs'] = Utils::getDonateurs($_SESSION['annee_recu'], - $champsNom); -// ------------------------------------------------------------------------ -// fonctions pour l'affichage - -// afficher les informations d'une activité et d'un tarif -$tpl->register_function('afficher_debut_tarif', function ($params) -{ - $versement = $params['versement']; - $idTarif = $versement->idTarif; - $tarif = $_SESSION['lesTarifs'][$idTarif]; - $idActivite = $tarif->idActivite; - $activite = $_SESSION['lesActivites'][$idActivite]; - - $out = '
- '; - $out .= sprintf(' -

Activité « %s »

', $activite->label); - if (!empty($activite->description)) { - $out .= sprintf(' -

%s

', $activite->description); - } - $out .= sprintf(' -

tarif « %s »', $tarif->label); - if ($tarif->montant > 0) { - $out .= sprintf(' montant : %.2f €', $tarif->montant/100); - } else { - $out .= ' montant : libre'; - } - $out .= '

-
'; - return $out; -}); - -// Afficher les informations d'une personne -$tpl->register_function('afficher_debut_personne', function ($params) -{ - $versement = $params['versement']; - $idUser = $versement->idUser; - $personne = $_SESSION['membresDonateurs'][$idUser]; - $idVersement = $versement->idTarif . "_" . $versement->idUser; - $out = '
- '; - $out .= sprintf('

Versements de %s : 0,00 €', - $personne->nomPrenom, - $idVersement); - $out .= '

'; - $out .= sprintf(' -
', - $idVersement); - $out .= sprintf(' - ', - $idVersement, - $idVersement); - $out .= sprintf(' - ', - $idVersement); - $out .= '
-
'; - return $out; -}); - -// afficher un versement -$tpl->register_function('afficher_versement', function ($params) -{ - $versement = $params['versement']; - $rang = $params['rang']; - $idVersement = $versement->idTarif . "_" . $versement->idUser; - $out = '
' : 'impair">'; - $out .= sprintf(' - ', - $idVersement, - $idVersement, $rang, - $rang, - $idVersement, $rang, $idVersement - ); - $out .= sprintf(' - ', - $idVersement, $rang - ); - $out .= sprintf(' - %.2f', - $versement->versement/100 - ); - $out .= sprintf(' - %s -
', - date_format(date_create($versement->date),"d/m/Y")); - return $out; -}); -// ------------------------------------------------------------------------ - // préparation de l'affichage $tpl->assign('lesActivites', $lesActivites); $tpl->assign('lesTarifs', $lesTarifs); diff --git a/www/admin/versements_personnes.php b/www/admin/versements_personnes.php index 1849624..56376a0 100644 --- a/www/admin/versements_personnes.php +++ b/www/admin/versements_personnes.php @@ -5,101 +5,12 @@ namespace Garradin; use Garradin\Plugin\RecusFiscaux\Personne; use Garradin\Plugin\RecusFiscaux\Utils; -// vérifier si l'année a bien été sélectionnée au préalable -$_SESSION['annee_recu'] = f('annee_recu'); -if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") { - \Garradin\Utils::redirect(PLUGIN_URL . 'index.php'); -} $_SESSION['taux_reduction'] = $_POST['taux_reduction']; -// champs pour le nom et prénom -$confNoms = Utils::getChampsNom($config, $plugin); -uasort($confNoms, function ($a, $b) -{ - return $a->position - $b->position; -}); -$champsNom = array(); -foreach ($confNoms as $nom => $champ) -{ - if ($champ->position != 0) { $champsNom[] = $nom; } -} - // versements par personne $_SESSION['lesVersements'] = Utils::getVersementsPersonnes($_SESSION['annee_recu'], $champsNom); -// membres donateurs -$_SESSION['membresDonateurs'] = Utils::getDonateurs($_SESSION['annee_recu'], - $champsNom); -// ------------------------------------------------------------------------ -// fonctions pour l'affichage - -// Afficher les informations d'une personne -$tpl->register_function('afficher_debut_personne', function ($params) -{ - $versement = $params['versement']; - $idUser = $versement->idUser; - $personne = $_SESSION['membresDonateurs'][$idUser]; - $idVersement = $versement->idUser; - $out = '
- '; - $out .= sprintf('

Versements de %s : 0,00 €

', - $personne->nomPrenom, - $idVersement); - $out .= '
'; - $out .= sprintf(' -
', - $idVersement); - $out .= sprintf(' - ', - $idVersement, - $idVersement); - $out .= sprintf(' - ', - $idVersement); - $out .= '
-
'; - return $out; -}); - -// afficher un versement -$tpl->register_function('afficher_versement', function ($params) -{ - $versement = $params['versement']; - $rang = $params['rang']; - $idVersement = $versement->idUser; - $out = '
' : 'impair">'; - $out .= sprintf(' - ', - $idVersement, - $idVersement, $rang, - $rang, - $idVersement, $rang, $idVersement - ); - $out .= sprintf(' - ', - $idVersement, $rang - ); - $out .= sprintf(' - %.2f', - $versement->versement/100 - ); - $out .= sprintf(' - %s -
', - date_format(date_create($versement->date),"d/m/Y")); - return $out; -}); -// ------------------------------------------------------------------------ - // préparation de l'affichage $tpl->assign('lesVersements', $_SESSION['lesVersements']); $tpl->assign('plugin_css', ['style.css']);