Hola, tengo un problema desde la semana pasada con un carrito prestashop 1.6.0.11 y ajax
Cuando hago clic en el botón "agregar al carrito" no hay ninguna acción en la página y en el carrito en el encabezado. (Si actualizo la página, los productos están en el carrito).
Tengo este error en mi consola:
ajax-cart.js: 329 => TypeError no detectado: No se puede leer la propiedad "hasError" de null
La solicitud ajax se envía, pero el resultado es "nulo":
https://www.prestashop.com/forums/uploads/monthly_10_2015/post-833314-0-21064100-1444814390.png
https://www.prestashop.com/forums/uploads/monthly_10_2015/post-833314-0-07732700-1444814388.png
EDITAR:
Aquí está el código js de ajax-cart.js:
$.ajax({
type: "POST",
headers: { "cache-control": "no-cache" },
url: baseUri + "?rand=" + new Date().getTime(),
async: true,
cache: false,
dataType : "json",
data: "controller=cart&add=1&ajax=true&qty=" + ((quantity && quantity != null) ? quantity : "1") + "&id_product=" + idProduct + "&token=" + static_token + ( (parseInt(idCombination) && idCombination != null) ? "&ipa=" + parseInt(idCombination): ""),
success: function(jsonData,textStatus,jqXHR)
{
// add appliance to whishlist module
if (whishlist && !jsonData.errors)
WishlistAddProductCart(whishlist[0], idProduct, idCombination, whishlist[1]);
/* line 329 => */ if (!jsonData.hasError) // <-- jsonData object is NULL , why ?
{
// ...
En el PHP no hay diferencia entre un Prestashop que funciona y este.
EDIT 2:
Encontré dónde se detiene el programa en displayAjax () en CartController.php:
if (Tools::getIsset("summary")) // == false
{
¿Qué es el "resumen"?
Alguien tiene una solución?
Respuestas
0 para la respuesta № 1Se resuelve.
El problema provino de un Smarty Plugin que agrega algunos caracteres al inicio de algunos TPL.
Por lo tanto, Json Encode devuelve error.