Opened 10 years ago

Closed 10 years ago

#345 closed defect (fixed)

fehlerhafte Darstellung Versandartenkombination (DPD+POST)

Reported by: t.goetzrath Owned by: d.schmitzer
Priority: major Milestone: 3.7
Component: Core Version: 3.6
Keywords: Cc:

Description

Die Versanddarstellung im Checkout wird bei Versandartenkombination (DPD+POST) fehlerhaft angezeigt. Hierbei wird nur der Betrag der ersten Versandart angezeigt.


Attachments (1)

WG_ Probelem mit der neuen Version.pdf (694.6 KB ) - added by t.goetzrath 10 years ago.

Download all attachments as: .zip

Change History (2)

by t.goetzrath, 10 years ago

comment:1 by d.schmitzer, 10 years ago

Resolution: fixed
Status: newclosed
  • Problem behoben.

@Thomas:

if (isset($arShippingNew[$subKey]['price'])) $arShippingNew[$subKey]['price'] = $arShippingNew[$subKey]['price'] + $sub['price'];
else $arShippingNew[$subKey]['price'] = !isset ($sub['price']) or $sub['price'];

Das im else zweig ist Quatsch. Richtiger ist es:

if (isset($arShippingNew[$subKey]['price'])) $arShippingNew[$subKey]['price'] = $arShippingNew[$subKey]['price'] + $sub['price'];
else if (isset($sub['price'])) $arShippingNew[$subKey]['price'] = $sub['price'];

Dein Konstrukt

!isset ($sub['price']) or $sub['price'];

ergibt immer 0 (false) oder 1 (true). Die Warnung wurde nur erzeugt, da price nicht immer im Array gesetzt war. Zusätzlich habe ich weiter oben noch den Wert mit 0 initiiert:

$arShippingNew[$subKey] = array(
  'id' => $subKey,
  'sub' => array(),
  'price' => 0
);
Note: See TracTickets for help on using tickets.