From 328789b92302ba09a4d10886165f07fe86f01bae Mon Sep 17 00:00:00 2001 From: engel <> Date: Tue, 29 Mar 2022 12:50:25 +0000 Subject: [PATCH] =?UTF-8?q?harmonisation=20pr=C3=A9sentation=20personnes-a?= =?UTF-8?q?ctivit=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit FossilOrigin-Name: 53550421b288837f1c2120259c638952fdf2853441a1315359d7af51c57c80d8 --- templates/versements_activites.tpl | 49 +++++++++++++++++++----------- templates/versements_personnes.tpl | 39 +++++++++++++++++++----- www/admin/script.js | 28 ++++++++--------- www/admin/style.css | 8 +++-- www/admin/versements_activites.php | 43 +++++++++++++++++--------- www/admin/versements_personnes.php | 41 ++++++++++++++++--------- 6 files changed, 137 insertions(+), 71 deletions(-) diff --git a/templates/versements_activites.tpl b/templates/versements_activites.tpl index c36a1c7..1ead4a4 100644 --- a/templates/versements_activites.tpl +++ b/templates/versements_activites.tpl @@ -3,17 +3,18 @@

Versements par activité et tarif

-
- - -
- -
- -
+
+ {*
*} -
+ + + + + {* *} +
+ + {* Itération sur les versements *} {foreach from=$lesVersements key="i" item="versement"} @@ -31,7 +32,8 @@ {if $versement.idTarif != $tarifCourant} {* changement de tarif *} {* fin versements d'une personne *} - + {* fin versements d'une personne *} + {* fin tarif *} idTarif; $personneCourante = $versement->idUser; @@ -42,6 +44,7 @@ {elseif $versement.idUser != $personneCourante} {* changement de personne *} + idUser; ?> @@ -53,8 +56,9 @@ {/if} {/if} {/foreach} {* Itération sur les versements *} - - + {* fin versements d'une personne *} + {* fin versements d'une personne *} + {* fin tarif *}
@@ -64,14 +68,25 @@ {literal} +{literal} + +{/literal} + -{include file="admin/_foot.tpl"} +{include file="admin/_foot.tpl"} \ No newline at end of file diff --git a/www/admin/script.js b/www/admin/script.js index 3f5b501..4a7eaad 100644 --- a/www/admin/script.js +++ b/www/admin/script.js @@ -5,14 +5,12 @@ */ function cocherDecocherTout(idCaseGlobale) { - // chercher le formulaire englobant - var formulaire = idCaseGlobale.closest("form"); // itérer sur la liste des éléments détails : 1 par couple - var lesDetails = formulaire.querySelectorAll("details"); + var lesDetails = document.querySelectorAll("details.activite"); for (var i = 0; i < lesDetails.length; ++i) { // itérer sur les personnes - var lesH3 = lesDetails[i].querySelectorAll("h3.personne"); + var lesH3 = lesDetails[i].querySelectorAll("h4.personne"); cocherDecocherLesPersonnes(idCaseGlobale, lesH3); } // changer le message @@ -22,9 +20,9 @@ function cocherDecocherTout(idCaseGlobale) /** * idem dans le cas des versements des personnes */ -function cocherDecocherToutesLesPersonnes(formulaire, idCaseGlobale) +function cocherDecocherToutesLesPersonnes(idCaseGlobale) { - var lesH3 = formulaire.querySelectorAll("h3.personne"); + var lesH3 = document.querySelectorAll("h4.personne"); cocherDecocherLesPersonnes(idCaseGlobale, lesH3); changerMessage(idCaseGlobale.nextElementSibling, idCaseGlobale); } @@ -36,11 +34,11 @@ function cocherDecocherLesPersonnes(idCaseGlobale, lesPersonnes) // trouver l'élément total de la personne var idTotal = lesPersonnes[j].querySelector("span"); // puis la case à cocher - var fieldset = lesPersonnes[j].nextElementSibling; + var fieldset = lesPersonnes[j].closest("details").querySelector("fieldset"); var idCase = fieldset.querySelector("input"); idCase.checked = idCaseGlobale.checked; // puis traiter toutes les cases de la personne - cocherDecocherPersonne(idCase, idTotal); + cocherDecocherPersonne(idCase, idTotal, false); } } @@ -51,13 +49,14 @@ function cocherDecocherLesPersonnes(idCaseGlobale, lesPersonnes) * * @param id de la case qui a été cochée * @param id de l'élément où afficher le total + * @param changerMessage : vrai, s'il faut changer le message de la personne */ -function cocherDecocherPersonne(idCase, idTotal) +function cocherDecocherPersonne(idCase, idTotal, changerMessage = true) { - // chercher le fieldset englobant - var fieldset = idCase.closest("fieldset"); + // chercher le fieldset des versements + var fieldset = idCase.closest("details").querySelector("fieldset"); var listeCases = fieldset.querySelectorAll("input[type=checkbox]"); - for (var i = 1; i < listeCases.length; ++i) + for (var i = 0; i < listeCases.length; ++i) { listeCases[i].checked = idCase.checked; } @@ -65,13 +64,12 @@ function cocherDecocherPersonne(idCase, idTotal) var listeMontants = fieldset.querySelectorAll("span.montant"); calculerTotal(listeCases, listeMontants, idTotal); // changer le message - changerMessage(idCase.nextElementSibling, idCase); + if (changerMessage) { changerMessage(idCase.nextElementSibling, idCase); } } /** * Fonction appelée quand on (dé)coche la case d'un versement - * - (dé)sélectionner cette case (?) - * - faire le total des cases cochées et l'afficher + * Faire le total des cases cochées et l'afficher * * @param id de la case qui a été cochée * @param id de l'élément où afficher le total diff --git a/www/admin/style.css b/www/admin/style.css index 938186b..6ec9810 100644 --- a/www/admin/style.css +++ b/www/admin/style.css @@ -25,8 +25,8 @@ span.montant { summary.activite { background: rgba(var(--gMainColor), 0.25); } -h3.personne { - background: rgba(var(--gSecondColor), 0.35); +h3.personne, h4.personne { + background: rgba(var(--gSecondColor), 0.15); } #signature { @@ -48,3 +48,7 @@ div.actions { display : inline; } +input.check_global +{ + margin : 0.2em 0.5em; +} diff --git a/www/admin/versements_activites.php b/www/admin/versements_activites.php index 68fa738..0c6a804 100644 --- a/www/admin/versements_activites.php +++ b/www/admin/versements_activites.php @@ -14,7 +14,7 @@ if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") { } // champs pour le nom et prénom -$confNoms = (array) $plugin->getConfig('nomChamps'); +$confNoms = Utils::getChampsNom($config, $plugin); uasort($confNoms, function ($a, $b) { return $a->position - $b->position; @@ -71,7 +71,7 @@ $tpl->register_function('afficher_debut_tarif', function ($params) $idActivite = $tarif->idActivite; $activite = $_SESSION['lesActivites'][$idActivite]; - $out = '
+ $out = '
'; $out .= sprintf('

Activité « %s »

', $activite->label); @@ -91,22 +91,24 @@ $tpl->register_function('afficher_debut_tarif', function ($params) return $out; }); -// afficher les informations d'une personne +// 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 = sprintf('

Versements de %s : 0,00 €

', + $out = '
+ '; + $out .= sprintf('

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

'; $out .= sprintf('
', $idVersement); $out .= sprintf(' - ', $idVersement, @@ -128,17 +130,28 @@ $tpl->register_function('afficher_versement', function ($params) $out = '
' : 'impair">'; $out .= sprintf(' - - - %.2f + ', + $idVersement, + $idVersement, $rang, + $rang, + $idVersement, $rang, $idVersement + ); + $out .= sprintf(' + ', + $idVersement, $rang + ); + $out .= sprintf(' + %.2f', + $versement->versement/100 + ); + $out .= sprintf(' %s
', - $idVersement, $idVersement, - $rang, $rang, - $idVersement, $rang, $idVersement, $idVersement, $rang, - $versement->versement/100, date_format(date_create($versement->date),"d/m/Y")); return $out; }); diff --git a/www/admin/versements_personnes.php b/www/admin/versements_personnes.php index 59a3ae6..648f52d 100644 --- a/www/admin/versements_personnes.php +++ b/www/admin/versements_personnes.php @@ -13,7 +13,7 @@ if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") { $_SESSION['taux_reduction'] = $_POST['taux_reduction']; // champs pour le nom et prénom -$confNoms = (array) $plugin->getConfig('nomChamps'); +$confNoms = Utils::getChampsNom($config, $plugin); uasort($confNoms, function ($a, $b) { return $a->position - $b->position; @@ -34,22 +34,24 @@ $_SESSION['membresDonateurs'] = Utils::getDonateurs($_SESSION['annee_recu'], // ------------------------------------------------------------------------ // fonctions pour l'affichage -// afficher les informations d'une personne +// 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 = sprintf('

Versements de %s : 0,00 €

', + $out = '
+ '; + $out .= sprintf('

Versements de %s : 0,00 €

', $personne->nomPrenom, $idVersement); + $out .= '
'; $out .= sprintf('
', $idVersement); $out .= sprintf(' - ', $idVersement, @@ -71,17 +73,28 @@ $tpl->register_function('afficher_versement', function ($params) $out = '
' : 'impair">'; $out .= sprintf(' - - - %.2f + ', + $idVersement, + $idVersement, $rang, + $rang, + $idVersement, $rang, $idVersement + ); + $out .= sprintf(' + ', + $idVersement, $rang + ); + $out .= sprintf(' + %.2f', + $versement->versement/100 + ); + $out .= sprintf(' %s
', - $idVersement, $idVersement, - $rang, $rang, - $idVersement, $rang, $idVersement, $idVersement, $rang, - $versement->versement/100, date_format(date_create($versement->date),"d/m/Y")); return $out; });