He visto que la variable $order_totals se inicia aqui un poco antes en las siguiente lineas de codigo:
Código:
require(DIR_WS_CLASSES . 'order_total.php');
$order_total_modules = new order_total;
$order_totals = $order_total_modules->process();
Entonces he ido a comprobar la funcion process() del fichero order_total.php.
he estado probando, poniendo "echo" para que imprima para ver en qué medida el código y por donde pasó o no pasó en la funcion de process() del fichero clase order_total.php:
Código:
function process() {
$order_total_array = array();
if (is_array($this->modules)) {
reset($this->modules);
while (list(, $value) = each($this->modules)) {
$class = substr($value, 0, strrpos($value, '.'));
if ($GLOBALS[$class]->enabled) {
$GLOBALS[$class]->process();
for ($i=0, $n=sizeof($GLOBALS[$class]->output); $i<$n; $i++) {
if (tep_not_null($GLOBALS[$class]->output[$i]['title']) && tep_not_null($GLOBALS[$class]->output[$i]['text'])) {
$order_total_array[] = array('code' => $GLOBALS[$class]->code,
'title' => $GLOBALS[$class]->output[$i]['title'],
'text' => $GLOBALS[$class]->output[$i]['text'],
'value' => $GLOBALS[$class]->output[$i]['value'],
'sort_order' => $GLOBALS[$class]->sort_order);
}
}
}
}
}
return $order_total_array;
}
No se cumple la siguiente condición: if (is_array ($ this-> modules))
Al no complir la condicion del if ni siquiera entra dentro asi que es normal que no inserte nada. La pregunta es, ¿por qué esta condición no se cumple (is_array ($ this-> modules))?
Ya no sé dónde buscar más ... no se me ocurre que es lo que falla ...