Franz Holzinger

Verse of the day

Es hat euch noch keine denn menschliche Versuchung betreten; aber Gott ist getreu, der euch nicht läßt versuchen über euer Vermögen, sondern macht, daß die Versuchung so ein Ende gewinne, daß ihr's könnet ertragen.
1 Korinther 10:13

© Bible Gateway's Verse of the Day


Autor  
16-04-09 09:08:45 Unterschiedliche Preis-Formate zwischen ajax und list-view
matthias
Hallo Forum,

ich habe mich in letzter Zeit in 2.7.1 damit herumgeschlagen,
dass ich als Ajax-Antwort auf eine Varianten-Auswahl nur ein zweistelliges Ergebnis bekam.
Zuerst vermutete ich den Fehler von 2.7.0 - aber die Fixes waren
natürlich in der Version eingepflegt

Beispiel:
Variante zu Produkt im Backend mit dem Preis '90.21' versehen.
Warenkorb übernahm den Preis korrekt, nur in der taxajax-Antwort
war der Wert auf '90' gekürzt.
Die TSConfig ist auf .priceDec = 2, .priceDec = , gesetzt -

Daraufhin habe ich die Extension auseinandergenommen und festgestellt,
dass in tt_products/eid/class.tx_ttproducts_db.php die Werte für
die Preis durchaus als '90.21' angeliefert werden,

if (in_array($field, $priceFieldArray)) {
$v = $priceViewObj->priceFormat($v);
}
allerdings die Nachkommastellen abgeschnitten werden.
Mit

$vtemp = $priceViewObj->priceFormat($v*1000);
$v = substr($vtemp, 0, strlen($vtemp)-1);

bekomme ich das angezeigt, was ich haben möchte -
zwei Dezimalstellen und ein Komma - aber sauber ist anders.

Was habe ich falsch gemacht?
2-05-09 15:29:45 Setup überprüfen
Franz Holzinger
Am besten das Setup nochmals überprüfen.

Die Methode priceFormat ist:

public function priceFormat ($double) {
return number_format($double,intval($this->conf['priceDec']),$this->conf['priceDecPoint'],$this->conf['priceThousandPoint']);
} // priceFormat


Dieses Setup muss richtig gesetzt sein.
< Zurück zum Forum