Hi.
Also von der order_total Schleife im Cart hab ich mich seelisch schon verabschiedet. Da passieren gaaaaaz seltsame Dinge, wenn ich die versuche im Cart anzuzeigen. Da stimmt am Ende nicht mehr eine Zahl. Tendenziell ungünstig für nen Shop.
Was ich nun versucht hab ist folgendes:
/includes/modules/order_details_cart.php// Versandkosten (nur nach Zonen!) im Warenkorb anzeigen require_once (DIR_WS_CLASSES
.'order.php');$order = new order
();$total_weight = $_SESSION['cart']->show_weight();$total_count = $_SESSION['cart']->count_contents();if (!isset($order->delivery['country']['iso_code_2']) || $order->delivery['country']['iso_code_2'] == '') { unset($_SESSION['shipping']); $delivery_zone = xtc_db_fetch_array
(xtc_db_query
("SELECT countries_id, countries_iso_code_2, countries_name FROM ".TABLE_COUNTRIES
." WHERE countries_id = ". STORE_COUNTRY
)); $order->delivery['country']['iso_code_2'] = $delivery_zone['countries_iso_code_2']; $order->delivery['country']['title'] = $delivery_zone['countries_name']; $order->delivery['country']['id'] = $delivery_zone['countries_id'];}$_SESSION['delivery_zone'] = $order->delivery['country']['iso_code_2'];require_once (DIR_WS_CLASSES
.'shipping.php');$shipping = new shipping
;$quotes = $shipping->quote();include_once (DIR_WS_LANGUAGES
.$_SESSION['language'].'/modules/order_total/ot_shipping.php');$shipping_content = array ();foreach ($quotes AS $quote) { if ($quote['id'] == 'zones') { $shipping_cost = $xtPrice->xtcFormat(((isset($quote['tax']) && $quote['tax']> 0) ?
$xtPrice->xtcAddTax($quote['methods'][0]['cost'],$quote['tax']) : (!empty($quote['methods'][0]['cost']) ?
$quote['methods'][0]['cost'] : '0')), true); $shipping_value = $xtPrice->xtcRemoveCurr(((isset($quote['tax']) && $quote['tax']> 0) ?
$xtPrice->xtcAddTax($quote['methods'][0]['cost'],$quote['tax']) : (!empty($quote['methods'][0]['cost']) ?
$quote['methods'][0]['cost'] : '0')), true); $shipping_free = $quote['methods'][0]['free']; }}unset($_SESSION['delivery_zone']);$total_end = $total + $shipping_value;if ($shipping_free != '') $module_smarty->assign('FREE_SHIPPING_INFO', sprintf(FREE_SHIPPING_DESCRIPTION
, $xtPrice->xtcFormat($shipping_free, true, 0, true)));$module_smarty->assign('shipping_cost', $shipping_cost);$module_smarty->assign('shipping_free', $shipping_free);$module_smarty->assign('COUNTRY', $order->delivery['country']['title']);// Ende Versandkosten// Mindermengenzuschlag im Cart anzeigen include_once (DIR_WS_LANGUAGES
.$_SESSION['language'].'/modules/order_total/ot_loworderfee.php');include_once (DIR_WS_MODULES
.'order_total/ot_loworderfee.php');$loworder = new ot_loworderfee
;$loworder->process();$loworder_info = $loworder->output;$loworder_info = $loworder_info[0];if ($loworder_info['value'] > 0) { $module_smarty->assign('LOWORDER_INFO', true); $module_smarty->assign('loworder_title', $loworder_info['title']); $module_smarty->assign('loworder_text', $loworder_info['text']); $module_smarty->assign('LOWORDER_FREE_INFO', sprintf(MODULE_ORDER_TOTAL_LOWORDERFEE_FREE_DESC
, $loworder_info['under'])); $total_end += $loworder_info['value'];}// Ende Mindermengenzuschlag// endgültige summeif ($total_end > $total) { $module_smarty->assign('TOTAL_INFO_END', true); $module_smarty->assign('total_end', $xtPrice->xtcFormat($total_end,true));} Ist bisschen zusammenkopiert und angepasst - geht also sicher auch eleganter. ^^
In der
/templates/module/order_details.html dann entsprechend:
<td colspan="6" class="subTotal"><div id="summetext">{#text_sum_without_mwst#}</div><div id="summe">{$SUM_WITHOUT_MWST}</div><div id="ust_text">{#text_ust_content#}</div>{$UST_CONTENT}<strong>{$TOTAL_CONTENT}</strong>
<div id="summetext">{$SHIPPING_INFO}</div><div id="summe">{$shipping_cost}</div>
{if $LOWORDER_INFO}<div id="summetext">{$loworder_title}</div><div id="summe">{$loworder_text}</div>{/if}
{if $TOTAL_INFO_END}<div class="zwischensumme_text"><strong>{#text_sum_total#}</strong></div><div class="zwischensumme"><strong>{$total_end}</strong></div>{/if}
</td>
Was dann schonmal in so etwas resultiert:
Summe (netto): 0,39 EUR
zzgl. MwSt. 19%: 0,07 EUR
Summe (inkl. MwSt.): 0,46 EUR
zzgl. Versandkosten 1,99 EUR
Mindermengenzuschlag: 6,00 EUR
Total: 8,45 EUR
Deutschland - Versandkostenfrei ab einem Bestellwert von 100,00 EUR
Mindermengenzuschlag entfällt ab einem Bestellwert von 100,00 EUR
Ist ja schonmal schön - aber jetzt kam halt die doofe Idee auf die MwSt. auf Versand & Mindermenge auszuweisen.