Thank You nannid and Phil Lomas for your feedback. I believe I have now narrowed down the cause.
Can you please try the following fix and let me know if it works in your environments?
- Remove all products from the affected order (or cancel the order). Make sure the Order Total is Zero (the bug should cause this to be true).
- Make the code change listed below.
- Add the products back to your order (or to a new order).
Edit "/admin/includes/functions/extra_functions/edit_orders_functions.php" as follows:
Starting at line 1134 replace:
Code:
// Remove order totals already present in the order
$module_list = explode(';', (str_replace('.php', '', MODULE_ORDER_TOTAL_INSTALLED)));
$order_totals = eo_get_order_total_by_order($oID);
if($order_totals !== null) {
foreach($order_totals as $class => $total) {
$keys = array_keys($module_list, $class);
foreach($keys as $key) {
if($key != 'ot_local_sales_taxes') unset($module_list[$key]);
}
}
}
With the following code:
Code:
// Remove order totals already present in the order
$module_list = explode(';', (str_replace('.php', '', MODULE_ORDER_TOTAL_INSTALLED)));
$order_totals = eo_get_order_total_by_order($oID);
if($order_totals !== null) {
foreach($order_totals as $class => $total) {
if($class == 'ot_local_sales_taxes') continue;
$keys = array_keys($module_list, $class);
foreach($keys as $key) {
unset($module_list[$key]);
}
}
}