MaVoix / groupes-locaux

Un formulaire permettant aux groupes locaux #MAVOIX de formaliser leur engagement à faire campagne.
The Unlicense
4 stars 1 forks source link

Objectif atteint mais bouton "je cofinance" toujours affiché (et don max=0€) #47

Closed ofa- closed 7 years ago

ofa- commented 7 years ago

cf 5ème circo de Paris

(reported by Sulian)

image

ofa- commented 7 years ago

blind fix ? (aussi dans templates/visitor/groupe/page.html.twig)

diff --git a/templates/visitor/dons/accueil.html.twig b/templates/visitor/dons/accueil.html.twig
index 129b273..5120927 100644
--- a/templates/visitor/dons/accueil.html.twig
+++ b/templates/visitor/dons/accueil.html.twig
@@ -76,7 +76,7 @@
                                             <p><span class="label">Dons promis</span></p>
                                         </div>
                                           <div class="col-sm-6 col-xs-12 text-center">
-                                              {%  if  group.income_amount+group.pledge_amount >= group.amount_target %}
+                                              {%  if  (group.income_amount+group.pledge_amount)|round >= group.amount_target %}
                                                   <button type="button" class="btn btn-lg btn-primary" disabled >Objectif atteint !</button>
                                               {%  else  %}
                                                   <a href="{{ ConfigService.get("urlSiteDons") }}/dons/participation.html?id={{ group.id }}" class="btn btn-lg btn-primary">Je cofinance cette campagne !</a>
ofa- commented 7 years ago

@oceanBigOne si ce fix est ok pour toi (j'ai pas de quoi tester) et si tu veux je peux faire une PR

oceanBigOne commented 7 years ago

Je confirme que si c'est bien un bug d'arrondi ( et pas autre chose ;) ), cette correction corrige le problème. J'ai testé (en local) avec une circo avec objectif à 2000, des dons à 1000 et des promesses à 999.9... avec ta correction ça affiche "Objectif atteint".

ColinMaudry commented 7 years ago

En prod, le fix d' @ofa- ne marchait pas tel quel, j'ai dû enlever les group.

{%  if  (income_amount+pledge_amount)|round >= group.amount_target %}
ColinMaudry commented 7 years ago

Du coup je veux bien une PR ou un bugfix :)

oceanBigOne commented 7 years ago

oui !!!! Bien vu... j'avais pas vu la bourde ! (pour faire mon test je suis passé par des valeurs "en dur") C'est l'accesseur qui est pas bon ... C'est soit : {% if (income_amount+pledge_amount)|round >= group.amount_target %} soit : {% if (group.amount_income+group.amount_pledge)|round >= group.amount_target %}

ofa- commented 7 years ago

du coup, comment le code d'origine pouvait marcher alors ? (j'ai juste rajouté des parenthèses et |round)

oceanBigOne commented 7 years ago

ben il ne marchait pas ! (d'ou le bug remonté par Sulian)

ofa- commented 7 years ago

ben... le bouton apparait quand même bien dans la plupart des cas, non ? alors il marche quand même "environ" le code d'origine (ceci-dit, autant je rate quelques subtilités). bon, je pousse une PR avec le fix "round" et le format de Colin, et vous voyez si c'est utile (autant, y a pas besoin du "round" au final) ; let me know.

ofa- commented 7 years ago

d'ailleurs, c'est marrant, paske le code dans templates/visitor/groupe/page.html.twig utilise les variables préconisées par Colin :)

de fait, la page https://collectifs-locaux.mavoix.info/groupe/page.html?id=19 (paris 5ème circo) montre le bon bouton. donc le fix n'a pas besoin de round.

oceanBigOne commented 7 years ago

merci ! (et désolé ... l'embrouille vient du nom de mes variables ...)

ofa- commented 7 years ago

my pleasure, no p. un bug de moins, c'est ce qui compte.

ColinMaudry commented 7 years ago

Merci de ne pas fermer l'issue tant que bug n'est pas résolu en production. Rien ne nous assure que les mesures prises vont bel et bien le corriger :)