Hola @alberto_92, veo el problema. Como bien apuntan @pedroauto96 y @marinashop92, el valor de Configuration::get('eurovat_hook_payment') es clave. Si devuelve false, significa que la opción del banner no está activa en la configuración del módulo o que el valor no se guardó correctamente en la base de datos (ps_configuration).
Primero, verifica que la opción para mostrar el banner esté activada en la configuración del módulo Eurovat, como ya te han dicho. Si ya lo está y el valor sigue siendo false, es posible que haya un problema de caché o de la instalación del módulo.
Para asegurar que el banner se muestre, y asumiendo que el método renderCustomerBanner() existe en tu clase y devuelve el HTML necesario, puedes modificar la lógica dentro de tu hookdisplayPaymentTop en eurovat/eurovat.php de la siguiente manera. Ten en cuenta que esto es para forzar la visualización si la configuración te da problemas, pero lo ideal es que el valor de Configuration::get sea correcto.
Aquí tienes el parche:
function hookdisplayPaymentTop($params)
{
if (self::isDisabledLanguage()) {
return '';
}
require_once dirname(__FILE__) . '/classes/EurovatTaxService.php';
$this->warmCheckoutVatValidation();
$banner = '';
if ((bool)Configuration::get('eurovat_hook_payment')) {
$banner .= $this->renderCustomerBanner();
He añadido una condición explícita if ((bool)Configuration::get('eurovat_hook_payment')) para asegurarnos de que la configuración se evalúa como un booleano, y dentro de esa condición se invocaría renderCustomerBanner(). Asegúrate de que este bloque esté después de $banner = ''; y antes de cualquier return final dentro de la función. Si con esto no funciona, el problema sería que el valor en la base de datos es 0 o no existe, y deberías corregirlo desde el BO o directamente en la BD.