Changeset 118996 in spip-zone


Ignore:
Timestamp:
Dec 11, 2019, 2:26:50 PM (15 months ago)
Author:
rastapopoulos@…
Message:

Les options doivent être passées PARTOUT ensuite (mais ça aurait dû déjà être le cas pour ). Du coup je ne vois pas comment a pu marcher un jour pour récupérer autre chose que les prix HT (ça ok). Mais prix TTC ça pouvait pas marcher puisqu'impossible de calculer suivant la taxe de l'objet distant.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/prix/trunk/inc/prix.php

    r118995 r118996  
    5151                if ($fonction_ht = charger_fonction('ht', "prix/$objet", true)){
    5252                        // On passe la ligne SQL en paramètre pour ne pas refaire la requête
    53                         $prix_ht = $fonction_ht($id_objet, $ligne);
     53                        $prix_ht = $fonction_ht($id_objet, $ligne, $options);
    5454                }
    5555                // S'il n'y a pas de fonction, regardons s'il existe des champs normalisés, ce qui évite d'écrire une fonction pour rien
     
    6969                                        'id_objet' => $id_objet,
    7070                                        'type_objet' => $objet, // déprécié, utiliser plutôt "objet"
    71                                         'prix_ht' => $prix_ht
     71                                        'prix_ht' => $prix_ht,
     72                                        'options' => $options,
    7273                                ),
    7374                                'data' => $prix_ht
     
    121122        $fonction_prix_ht = charger_fonction('ht', 'inc/prix');
    122123        $objet = objet_type($objet);
    123         $prix = $prix_ht = $fonction_prix_ht($objet, $id_objet, 0, $options['serveur']);
     124        $options_ht = array_merge($options, array('arrondi'=>0));
     125        $prix = $prix_ht = $fonction_prix_ht($objet, $id_objet, $options_ht);
    124126        $taxes = array();
    125127       
    126128        // On cherche maintenant s'il existe une personnalisation pour le prix total TTC : prix_<objet>() dans prix/<objet>.php
    127129        if ($fonction_prix_objet = charger_fonction($objet, 'prix/', true)){
    128                 $prix = $fonction_prix_objet($id_objet, $prix_ht);
     130                $prix = $fonction_prix_objet($id_objet, $prix_ht, $options);
    129131        }
    130132        // Sinon on appelle une fonction générique pour trouver les taxes d'un objet, et on ajoute au HT
    131133        elseif ($fonction_taxes = charger_fonction('taxes', 'inc/', true)) {
    132                 $taxes = $fonction_taxes($objet, $id_objet);
     134                $taxes = $fonction_taxes($objet, $id_objet, $options);
    133135                $taxes_total = array_sum(array_column($taxes, 'montant'));
    134136                $prix = $prix_ht + $taxes_total;
     
    144146                                'type_objet' => $objet, // déprécié, utiliser plutôt "objet"
    145147                                'prix_ht' => $prix_ht,
    146                                 'prix' => $prix,
     148                                'options' => $options,
    147149                                'taxes' => $taxes,
    148150                        ),
Note: See TracChangeset for help on using the changeset viewer.