// BugFix with opc and multishipping

git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@10330 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
mDeflotte
2011-11-21 10:42:14 +00:00
parent f09017dc73
commit 0ce1e22813
14 changed files with 156 additions and 154 deletions
+15 -15
View File
@@ -1120,11 +1120,11 @@ tr.cart_total_price { font-weight: bold }
width: 100%;
margin: 1em 0
}
#order .delivery_options_address {
#order .delivery_options_address, #orderopc .delivery_options_address {
width: 541px;
margin-left: 7px;
}
#order .delivery_options_address h3 {
#order .delivery_options_address h3, #orderopc .delivery_options_address h3 {
background: url("../img/table_header.gif") no-repeat;
background: url("http://prestashop15.localhost/themes/prestashop/css/../img/table_header.gif") no-repeat;
color: #374853;
@@ -1133,46 +1133,46 @@ tr.cart_total_price { font-weight: bold }
padding: 5px 10px;
margin: 10px 0 0 0;
}
#order .delivery_option_radio {
#order .delivery_option_radio, #orderopc .delivery_option_radio {
float: left;
margin-top: 12px;
}
#order .delivery_option label {
#order .delivery_option label, #orderopc .delivery_option label {
display: block;
padding-bottom: 5px;
}
#order .delivery_option label > table.resume {
#order .delivery_option label > table.resume, #orderopc .delivery_option label > table.resume {
width: 522px;
height: 40px;
}
#order .delivery_option.item {
#order .delivery_option.item, #orderopc .delivery_option.item, #orderopc {
background: #FAFAFA;
}
#order .delivery_option.alternate_item {
#order .delivery_option.alternate_item, #orderopc .delivery_option.alternate_item {
background: #F1F2F4;
border-top: 1px solid #BDC2C9;
}
#order .delivery_option label > table.resume td {
#order .delivery_option label > table.resume td, #orderopc .delivery_option label > table.resume td, #orderopc {
padding: 0 8px;
}
#order .delivery_option label > table.resume td + td {
#order .delivery_option label > table.resume td + td, #orderopc .delivery_option label > table.resume td + td {
text-align: left;
width: 380px;
}
#order .delivery_option label > table.resume td + td + td {
#order .delivery_option label > table.resume td + td + td, #orderopc .delivery_option label > table.resume td + td + td {
text-align: right;
width: 100px;
}
#order .delivery_options_address .delivery_option_logo {
#order .delivery_options_address .delivery_option_logo, #orderopc .delivery_options_address .delivery_option_logo {
text-align: center;
width: 100px;
}
#order .delivery_option_icon {
#order .delivery_option_icon, #orderopc .delivery_option_icon {
}
#order .delivery_option_price {
#order .delivery_option_price, #orderopc .delivery_option_price {
}
#order .delivery_options_address .delivery_option_logo img { height: 40px; }
#order .delivery_option_carrier {
#order .delivery_options_address .delivery_option_logo img, #orderopc .delivery_options_address .delivery_option_logo img { height: 40px; }
#order .delivery_option_carrier, #orderopc .delivery_option_carrier {
border: 1px solid #BDC2C9;
background: white;
margin: 5px 20px;
+105 -99
View File
@@ -120,43 +120,43 @@ function updateAddressSelection()
$('#opc_payment_methods-overlay').fadeIn('slow');
$.ajax({
type: 'POST',
url: orderOpcUrl,
async: true,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateAddressesSelected&id_address_delivery=' + idAddress_delivery + '&id_address_invoice=' + idAddress_invoice + '&token=' + static_token,
success: function(jsonData)
{
if (jsonData.hasError)
{
var errors = '';
for(error in jsonData.errors)
//IE6 bug fix
if(error != 'indexOf')
errors += jsonData.errors[error] + "\n";
alert(errors);
}
else
{
updateCarrierList(jsonData);
updatePaymentMethods(jsonData);
updateCartSummary(jsonData.summary);
updateHookShoppingCart(jsonData.HOOK_SHOPPING_CART);
updateHookShoppingCartExtra(jsonData.HOOK_SHOPPING_CART_EXTRA);
if ($('#gift-price').length == 1)
$('#gift-price').html(jsonData.gift_price);
$('#opc_account-overlay').fadeOut('slow');
$('#opc_delivery_methods-overlay').fadeOut('slow');
$('#opc_payment_methods-overlay').fadeOut('slow');
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("TECHNICAL ERROR: unable to save adresses \n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus);
type: 'POST',
url: orderOpcUrl,
async: true,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateAddressesSelected&id_address_delivery=' + idAddress_delivery + '&id_address_invoice=' + idAddress_invoice + '&token=' + static_token,
success: function(jsonData)
{
if (jsonData.hasError)
{
var errors = '';
for(error in jsonData.errors)
//IE6 bug fix
if(error != 'indexOf')
errors += jsonData.errors[error] + "\n";
alert(errors);
}
else
{
updateCarrierList(jsonData);
updatePaymentMethods(jsonData);
updateCartSummary(jsonData.summary);
updateHookShoppingCart(jsonData.HOOK_SHOPPING_CART);
updateHookShoppingCartExtra(jsonData.HOOK_SHOPPING_CART_EXTRA);
if ($('#gift-price').length == 1)
$('#gift-price').html(jsonData.gift_price);
$('#opc_account-overlay').fadeOut('slow');
$('#opc_delivery_methods-overlay').fadeOut('slow');
$('#opc_payment_methods-overlay').fadeOut('slow');
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("TECHNICAL ERROR: unable to save adresses \n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus);
$('#opc_account-overlay').fadeOut('slow');
$('#opc_delivery_methods-overlay').fadeOut('slow');
$('#opc_payment_methods-overlay').fadeOut('slow');
}
});
}
@@ -164,14 +164,14 @@ function getCarrierListAndUpdate()
{
$('#opc_delivery_methods-overlay').fadeIn('slow');
$.ajax({
type: 'POST',
url: orderOpcUrl,
async: true,
cache: false,
dataType : "json",
data: 'ajax=true&method=getCarrierList&token=' + static_token,
success: function(jsonData)
{
type: 'POST',
url: orderOpcUrl,
async: true,
cache: false,
dataType : "json",
data: 'ajax=true&method=getCarrierList&token=' + static_token,
success: function(jsonData)
{
if (jsonData.hasError)
{
var errors = '';
@@ -194,6 +194,12 @@ function updateCarrierSelectionAndGift()
var gift = 0;
var giftMessage = '';
var idCarrier = 0;
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 ($('input#recyclable:checked').length)
recyclablePackage = 1;
@@ -212,33 +218,33 @@ function updateCarrierSelectionAndGift()
$('#opc_payment_methods-overlay').fadeIn('slow');
$('#opc_delivery_methods-overlay').fadeIn('slow');
$.ajax({
type: 'POST',
url: orderOpcUrl,
async: false,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateCarrierAndGetPayments&id_carrier=' + idCarrier + '&recyclable=' + recyclablePackage + '&gift=' + gift + '&gift_message=' + giftMessage + '&token=' + static_token ,
success: function(jsonData)
{
if (jsonData.hasError)
{
var errors = '';
for(error in jsonData.errors)
//IE6 bug fix
if(error != 'indexOf')
errors += jsonData.errors[error] + "\n";
alert(errors);
}
else
{
updateCartSummary(jsonData.summary);
updatePaymentMethods(jsonData);
updateHookShoppingCart(jsonData.summary.HOOK_SHOPPING_CART);
type: 'POST',
url: orderOpcUrl,
async: false,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateCarrierAndGetPayments' + delivery_option_params + 'recyclable=' + recyclablePackage + '&gift=' + gift + '&gift_message=' + giftMessage + '&token=' + static_token ,
success: function(jsonData)
{
if (jsonData.hasError)
{
var errors = '';
for(error in jsonData.errors)
//IE6 bug fix
if(error != 'indexOf')
errors += jsonData.errors[error] + "\n";
alert(errors);
}
else
{
updateCartSummary(jsonData.summary);
updatePaymentMethods(jsonData);
updateHookShoppingCart(jsonData.summary.HOOK_SHOPPING_CART);
updateHookShoppingCartExtra(jsonData.summary.HOOK_SHOPPING_CART_EXTRA);
$('#opc_payment_methods-overlay').fadeOut('slow');
$('#opc_delivery_methods-overlay').fadeOut('slow');
}
},
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("TECHNICAL ERROR: unable to save carrier \n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus);
$('#opc_payment_methods-overlay').fadeOut('slow');
@@ -305,18 +311,18 @@ function saveAddress(type)
var result = false;
$.ajax({
type: 'POST',
url: addressUrl,
async: false,
cache: false,
dataType : "json",
data: 'ajax=true&submitAddress=true&type='+type+'&'+params+'&token=' + static_token,
success: function(jsonData)
{
type: 'POST',
url: addressUrl,
async: false,
cache: false,
dataType : "json",
data: 'ajax=true&submitAddress=true&type='+type+'&'+params+'&token=' + static_token,
success: function(jsonData)
{
if (jsonData.hasError)
{
var tmp = '';
var i = 0;
var tmp = '';
var i = 0;
for(error in jsonData.errors)
//IE6 bug fix
if(error != 'indexOf')
@@ -348,7 +354,7 @@ function saveAddress(type)
$('#opc_delivery_methods-overlay').fadeOut('slow');
$('#opc_payment_methods-overlay').fadeOut('slow');
}
});
});
return result;
}
@@ -644,15 +650,15 @@ $(function() {
$('#message').blur(function() {
$('#opc_delivery_methods-overlay').fadeIn('slow');
$.ajax({
type: 'POST',
url: orderOpcUrl,
async: false,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateMessage&message=' + encodeURIComponent($('#message').val()) + '&token=' + static_token ,
success: function(jsonData)
{
if (jsonData.hasError)
type: 'POST',
url: orderOpcUrl,
async: false,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateMessage&message=' + encodeURIComponent($('#message').val()) + '&token=' + static_token ,
success: function(jsonData)
{
if (jsonData.hasError)
{
var errors = '';
for(error in jsonData.errors)
@@ -661,14 +667,14 @@ $(function() {
errors += jsonData.errors[error] + "\n";
alert(errors);
}
else
$('#opc_delivery_methods-overlay').fadeOut('slow');
else
$('#opc_delivery_methods-overlay').fadeOut('slow');
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("TECHNICAL ERROR: unable to save message \n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus);
$('#opc_delivery_methods-overlay').fadeOut('slow');
}
});
});
});
// Recyclable checkbox
@@ -695,7 +701,7 @@ $(function() {
updateCarrierSelectionAndGift();
});
// TOS
// Term Of Service (TOS)
$('#cgv').click(function() {
if ($('#cgv:checked').length != 0)
var checked = 1;
@@ -704,19 +710,19 @@ $(function() {
$('#opc_payment_methods-overlay').fadeIn('slow');
$.ajax({
type: 'POST',
url: orderOpcUrl,
async: true,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateTOSStatusAndGetPayments&checked=' + checked + '&token=' + static_token,
success: function(json)
{
type: 'POST',
url: orderOpcUrl,
async: true,
cache: false,
dataType : "json",
data: 'ajax=true&method=updateTOSStatusAndGetPayments&checked=' + checked + '&token=' + static_token,
success: function(json)
{
$('div#HOOK_TOP_PAYMENT').html(json.HOOK_TOP_PAYMENT);
$('#opc_payment_methods-content div#HOOK_PAYMENT').html(json.HOOK_PAYMENT);
$('#opc_payment_methods-overlay').fadeOut('slow');
}
});
}
});
});
$('#opc_account_form input,select,textarea').change(function() {
+1 -1
View File
@@ -118,7 +118,7 @@
<div class="delivery_options">
{foreach $option_list as $key => $option}
<div class="delivery_option {if ($option@index % 2)}alternate_{/if}item">
<input class="delivery_option_radio" type="radio" name="delivery_option[{$id_address}]" id="delivery_option_{$id_address}_{$option@index}" value="{$key}" />
<input class="delivery_option_radio" type="radio" name="delivery_option[{$id_address}]" {if $opc}onclick="updateCarrierSelectionAndGift();"{/if} id="delivery_option_{$id_address}_{$option@index}" value="{$key}" />
<label for="delivery_option_{$id_address}_{$option@index}">
<table class="resume">
<tr>
+2 -1
View File
@@ -350,7 +350,7 @@
{$addresses_style.alias = 'address_title'}
{/if}
{if (($carrier->id AND !isset($virtualCart)) OR $delivery->id OR $invoice->id) AND !$opc}
{if ((!empty($delivery_option) AND !isset($virtualCart)) OR $delivery->id OR $invoice->id) AND !$opc}
<div class="order_delivery">
{if !isset($formattedAddresses)}
{if $delivery->id}
@@ -393,6 +393,7 @@
{/foreach}
<p class="clear" />
{/if}
{* @todo Replace the $carrier by using delivery_option *}
{if $carrier->id AND !isset($virtualCart)}
<div id="order_carrier">
<h4>{l s='Carrier:'}</h4>