UniArt Posted October 2, 2015 Share Posted October 2, 2015 (edited) Hola a todos, He encontrado un bug en la version 1.6.1.1 de prestashop. Al utilizar la vista rápida para añadir productos al carrito en modo ajax no funciona. Al añadir un producto en el carrito desde la vista rápida, la ventana modal hace un direccionamiento al checkout o a la pagina del producto, según tenemos configurado en el BO para el caso de que el ajax no sea utilizado, eso pasa dentro de la ventana modal de la vista rápida. Al cerrar la ventana de la vista rápida, el carrito está vacío, pero al actualizar manualmente la pagina el producto aparece en el carrito. Podéis comprobar en esta tienda http://presta144.loading.es/es/ (no es mia, pero todas 1.6.1.1 que he provado tienen el bug) He informado en forge http://forge.prestashop.com/browse/PSCSX-6884, pero el programador que asistió al caso insistió en tratar de redireccionar la pagina al checkout, y no de arreglar el tema del ajax. Quizá por mi pésimo ingles el técnico no entendió el problema. Pero lo cierto es que si queremos que el cliente vaya directamente al checkout simplemente desactivamos el ajax, no hay lógica tener ajax activado para el carrito si no vamos a utilizar. Así que me puse a trabajar por mi cuenta y lo solucioné a mi manera. Lo que hize fue comparar los archivos ajax-cart.js de la versión 1.6.1.1 con la versión 1.6.0.9 que tiene el ajax funcionando. He cambiado esto: //for product page 'add' button... if ($('.cart_block').length) { $(document).off('click', '#add_to_cart button').on('click', '#add_to_cart button', function(e) { e.preventDefault(); ajaxCart.add($('#product_page_product_id').val(), $('#idCombination').val(), true, null, $('#quantity_wanted').val(), null); }); } por esto: //for product page 'add' button... $(document).off('click', '#add_to_cart button').on('click', '#add_to_cart button', function(e){ e.preventDefault(); ajaxCart.add($('#product_page_product_id').val(), $('#idCombination').val(), true, null, $('#quantity_wanted').val(), null); } ); Ahora me funciona a la perfección , como podéis ver en mi tienda en construcción: http://piedrassemipreciosas.net/ Al utilizar la vista rápida el carrito ya funciona con ajax. Pero java script no es lo mio y no sé si con esta modificación fastidia algo por otro lado. Lo daría el tema por solucionado si algún experto en java script pudiera echar una ojeada. El archivo a modificar se encuentra en la carpeta theme/mitema/js/modules/blockcart Saludos a todos. Edited October 2, 2015 by UniArt (see edit history) Link to comment Share on other sites More sharing options...
carlosspm Posted October 25, 2015 Share Posted October 25, 2015 Si señor. Lo has solucionado. Yo tampoco se si dará otros problemas al modificar el Javascript. Pero lo cierto es que cierra la ventana y actualiza el carrocorrectamente Link to comment Share on other sites More sharing options...
Recommended Posts