diff --git a/controllers/front/ParentOrderController.php b/controllers/front/ParentOrderController.php index 418dd03dd..d49977b73 100644 --- a/controllers/front/ParentOrderController.php +++ b/controllers/front/ParentOrderController.php @@ -438,6 +438,11 @@ class ParentOrderControllerCore extends FrontController 'conditions' => (int)(Configuration::get('PS_CONDITIONS')), 'link_conditions' => $this->link_conditions, 'recyclable' => (int)($this->context->cart->recyclable), + 'delivery_option_list' => $this->context->cart->getDeliveryOptionList(), + 'carriers' => $this->context->cart->simulateCarriersOutput(), + 'checked' => $this->context->cart->simulateCarrierSelectedOutput(), + 'address_collection' => $this->context->cart->getAddressCollection(), + 'delivery_option' => $this->context->cart->getDeliveryOption(), 'gift_wrapping_price' => (float)(Configuration::get('PS_GIFT_WRAPPING_PRICE')), 'total_wrapping_cost' => Tools::convertPrice($wrapping_fees_tax_inc, $this->context->currency), 'total_wrapping_tax_exc_cost' => Tools::convertPrice($wrapping_fees, $this->context->currency))); diff --git a/themes/default/js/cart-summary.js b/themes/default/js/cart-summary.js index d4d5fc7be..bf693cebf 100644 --- a/themes/default/js/cart-summary.js +++ b/themes/default/js/cart-summary.js @@ -615,17 +615,21 @@ function updateHookShoppingCartExtra(html) { $('#HOOK_SHOPPING_CART_EXTRA').html(html); } -$(document).ready(function() { +function refreshDeliveryOptions() +{ $.each($('.delivery_option_radio'), function() { if ($(this).attr('checked')) $(this).parent().find('.delivery_option_carrier').show(); else $(this).parent().find('.delivery_option_carrier').hide(); - }); - $('.delivery_option_radio').change(function() { - $(this).parent().parent().find('.delivery_option_carrier').hide(); - $(this).parent().find('.delivery_option_carrier').show(); +} +$(document).ready(function() { + + refreshDeliveryOptions(); + + $('.delivery_option_radio').live('change', function() { + refreshDeliveryOptions(); }); $('#allow_seperated_package').live('click', function() { diff --git a/themes/default/js/order-opc.js b/themes/default/js/order-opc.js index fa54cc913..3c2d4dc14 100644 --- a/themes/default/js/order-opc.js +++ b/themes/default/js/order-opc.js @@ -130,7 +130,8 @@ function updateCarrierSelectionAndGift() var delivery_option_radio = $('.delivery_option_radio'); var delivery_option_params = '&'; $.each(delivery_option_radio, function(i) { - delivery_option_params += $(delivery_option_radio[i]).attr('name') + '=' + $(delivery_option_radio[i]).val() + '&'; + if ($(this).attr('checked')) + delivery_option_params += $(delivery_option_radio[i]).attr('name') + '=' + $(delivery_option_radio[i]).val() + '&'; }); if (delivery_option_params == '&') delivery_option_params = '&delivery_option=&' @@ -172,6 +173,7 @@ function updateCarrierSelectionAndGift() updateCarrierList(jsonData.carrier_data); $('#opc_payment_methods-overlay').fadeOut('slow'); $('#opc_delivery_methods-overlay').fadeOut('slow'); + refreshDeliveryOptions(); } }, error: function(XMLHttpRequest, textStatus, errorThrown) { diff --git a/themes/default/order-carrier.tpl b/themes/default/order-carrier.tpl index ff11ac67c..492b500a4 100644 --- a/themes/default/order-carrier.tpl +++ b/themes/default/order-carrier.tpl @@ -108,7 +108,12 @@