hermesgrau Posted June 24, 2016 Share Posted June 24, 2016 Buenos días, Ayer escribí este post y hoy simplemente ha desaparecido, así que tengo que reescribirlo otra vez porque necesitaría una solución o, al menos, una respuesta. Al activar las opciones "Permitir ventas de productos que no están en el inventario" y "Envío parcial", si en el pedido existen productos sin stock, en el proceso de compra se activa una casilla para "Enviar el primer producto disponible primero". Al pinchar sobre esta casilla el precio de envío se multiplica por dos (el pedido se divide en dos envíos). Este nuevo precio sólo se muestra si refrescas la página, pero no se actualiza en tiempo real, lo que resulta confuso. La función que creo que no está actuando como debería se encuentra en cart-summary.js sobre la línea 62: $('#allow_seperated_package').on('click', function(){ $.ajax({ type: 'POST', headers: { "cache-control": "no-cache" }, url: baseUri + '?rand=' + new Date().getTime(), async: true, cache: false, dataType: 'json', data: 'controller=cart&ajax=true' + '&summary=true' + '&allowSeperatedPackage=true' + '&value=' + ($(this).prop('checked') ? '1' : '0') + '&token='+static_token + '&allow_refresh=1', success: function(jsonData) { if (jsonData.hasError) { var errors = ''; for(var error in jsonData.errors) //IE6 bug fix if(error !== 'indexOf') errors += $('<div />').html(jsonData.errors[error]).text() + "\n"; if (!!$.prototype.fancybox) $.fancybox.open([ { type: 'inline', autoScale: true, minHeight: 30, content: '<p class="fancybox-error">' + errors + '</p>' }], { padding: 0 }); else alert(errors); $('input[name=quantity_'+ id +']').val($('input[name=quantity_'+ id +'_hidden]').val()); } else { if (jsonData.refresh) window.location.href = window.location.href; updateCartSummary(jsonData.summary); if (window.ajaxCart != undefined) ajaxCart.updateCart(jsonData); updateHookShoppingCart(jsonData.HOOK_SHOPPING_CART); updateHookShoppingCartExtra(jsonData.HOOK_SHOPPING_CART_EXTRA); if (typeof(getCarrierListAndUpdate) !== 'undefined') getCarrierListAndUpdate(); if (typeof(updatePaymentMethodsDisplay) !== 'undefined') updatePaymentMethodsDisplay(); } } }); }); La plantilla es la bootstrap-default, y la versión de Prestashop la 1.6.1.4. La url de la tienda no la puedo facilitar pues la estoy montando en local de momento. Gracias, un saludo. Link to comment Share on other sites More sharing options...
Recommended Posts