// BugFix in checkout with multishipping on step address
This commit is contained in:
@@ -60,7 +60,7 @@ function updateAddressesDisplay(first_view)
|
||||
else
|
||||
{
|
||||
$('#address_invoice_form:hidden').show('fast');
|
||||
if ($('select#id_address_invoice').val())
|
||||
if ($('#id_address_invoice').val())
|
||||
updateAddressDisplay('invoice');
|
||||
else
|
||||
{
|
||||
@@ -82,20 +82,23 @@ function updateAddressDisplay(addressType)
|
||||
if (formatedAddressFieldsValuesList.length <= 0)
|
||||
return false;
|
||||
|
||||
var idAddress = $('select#id_address_' + addressType + '').val();
|
||||
var idAddress = $('#id_address_' + addressType + '').val();
|
||||
buildAddressBlock(idAddress, addressType, $('#address_'+ addressType));
|
||||
|
||||
// change update link
|
||||
var link = $('ul#address_' + addressType + ' li.address_update a').attr('href');
|
||||
var expression = /id_address=\d+/;
|
||||
link = link.replace(expression, 'id_address='+idAddress);
|
||||
$('ul#address_' + addressType + ' li.address_update a').attr('href', link);
|
||||
if (link)
|
||||
{
|
||||
link = link.replace(expression, 'id_address='+idAddress);
|
||||
$('ul#address_' + addressType + ' li.address_update a').attr('href', link);
|
||||
}
|
||||
}
|
||||
|
||||
function updateAddresses()
|
||||
{
|
||||
var idAddress_delivery = $('select#id_address_delivery').val();
|
||||
var idAddress_invoice = $('input[type=checkbox]#addressesAreEquals:checked').length == 1 ? idAddress_delivery : $('select#id_address_invoice').val();
|
||||
var idAddress_delivery = $('#id_address_delivery').val();
|
||||
var idAddress_invoice = $('input[type=checkbox]#addressesAreEquals:checked').length == 1 ? idAddress_delivery : $('#id_address_invoice').val();
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
|
||||
@@ -23,6 +23,13 @@
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
|
||||
{if $opc}
|
||||
{assign var="back_order_page" value="order-opc.php"}
|
||||
{else}
|
||||
{assign var="back_order_page" value="order.php"}
|
||||
{/if}
|
||||
|
||||
{* Will be deleted for 1.5 version and more *}
|
||||
{if !isset($formatedAddressFieldsValuesList)}
|
||||
{$ignoreList.0 = "id_address"}
|
||||
@@ -68,32 +75,32 @@
|
||||
|
||||
{foreach from=$formatedAddressFieldsValuesList key=id_address item=type}
|
||||
formatedAddressFieldsValuesList[{$id_address}] =
|
||||
{ldelim}
|
||||
{
|
||||
'ordered_fields':[
|
||||
{foreach from=$type.ordered_fields key=num_field item=field_name name=inv_loop}
|
||||
{if !$smarty.foreach.inv_loop.first},{/if}"{$field_name}"
|
||||
{/foreach}
|
||||
],
|
||||
'formated_fields_values':{ldelim}
|
||||
{foreach from=$type.formated_fields_values key=pattern_name item=field_name name=inv_loop}
|
||||
{if !$smarty.foreach.inv_loop.first},{/if}"{$pattern_name}":"{$field_name}"
|
||||
{/foreach}
|
||||
{rdelim}
|
||||
{rdelim}
|
||||
'formated_fields_values':{
|
||||
{foreach from=$type.formated_fields_values key=pattern_name item=field_name name=inv_loop}
|
||||
{if !$smarty.foreach.inv_loop.first},{/if}"{$pattern_name}":"{$field_name}"
|
||||
{/foreach}
|
||||
}
|
||||
}
|
||||
{/foreach}
|
||||
|
||||
function getAddressesTitles()
|
||||
{ldelim}
|
||||
return {ldelim}
|
||||
'invoice': "{l s='Your billing address'}",
|
||||
'delivery': "{l s='Your delivery address'}"
|
||||
{rdelim};
|
||||
{
|
||||
return {
|
||||
'invoice': "{l s='Your billing address'}",
|
||||
'delivery': "{l s='Your delivery address'}"
|
||||
};
|
||||
|
||||
{rdelim}
|
||||
}
|
||||
|
||||
|
||||
function buildAddressBlock(id_address, address_type, dest_comp)
|
||||
{ldelim}
|
||||
{
|
||||
var adr_titles_vals = getAddressesTitles();
|
||||
var li_content = formatedAddressFieldsValuesList[id_address]['formated_fields_values'];
|
||||
var ordered_fields_name = ['title'];
|
||||
@@ -107,26 +114,26 @@
|
||||
li_content['update'] = '<a href="{$link->getPageLink('address', true, NULL, "id_address")}'+id_address+'&back=order?step=1{if $back}&mod={$back}{/if}" title="{l s='Update'}">{l s='Update'}</a>';
|
||||
|
||||
appendAddressList(dest_comp, li_content, ordered_fields_name);
|
||||
{rdelim}
|
||||
}
|
||||
|
||||
function appendAddressList(dest_comp, values, fields_name)
|
||||
{ldelim}
|
||||
{
|
||||
for (var item in fields_name)
|
||||
{ldelim}
|
||||
{
|
||||
var name = fields_name[item];
|
||||
var value = getFieldValue(name, values);
|
||||
if (value != "")
|
||||
{ldelim}
|
||||
var new_li = document.createElement('li');
|
||||
new_li.className = 'address_'+ name;
|
||||
new_li.innerHTML = getFieldValue(name, values);
|
||||
dest_comp.append(new_li);
|
||||
{rdelim}
|
||||
{rdelim}
|
||||
{rdelim}
|
||||
{
|
||||
var new_li = document.createElement('li');
|
||||
new_li.className = 'address_'+ name;
|
||||
new_li.innerHTML = getFieldValue(name, values);
|
||||
dest_comp.append(new_li);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getFieldValue(field_name, values)
|
||||
{ldelim}
|
||||
{
|
||||
var reg=new RegExp("[ ]+", "g");
|
||||
|
||||
var items = field_name.split(reg);
|
||||
@@ -135,7 +142,7 @@
|
||||
for (var field_item in items)
|
||||
vals.push(values[items[field_item]]);
|
||||
return vals.join(" ");
|
||||
{rdelim}
|
||||
}
|
||||
|
||||
//]]>
|
||||
</script>
|
||||
@@ -145,7 +152,7 @@
|
||||
{include file="$tpl_dir./breadcrumb.tpl"}
|
||||
{/if}
|
||||
|
||||
{if !$opc}<h1>{l s='Addresses'}</h1>{else}<h2>1. {l s='Addresses'}</h2>{/if}
|
||||
{if !$opc}<h1>{l s='Addresses'}</h1>{else}<h2><span>1</span> {l s='Addresses'}</h2>{/if}
|
||||
|
||||
{if !$opc}
|
||||
{assign var='current_step' value='address'}
|
||||
@@ -159,40 +166,31 @@
|
||||
<div id="opc_account" class="opc-main-block">
|
||||
<div id="opc_account-overlay" class="opc-overlay" style="display: none;"></div>
|
||||
{/if}
|
||||
|
||||
<div class="addresses">
|
||||
<input type="hidden" name="id_address_delivery" id="id_address_delivery" value="{$cart->id_address_delivery}" />
|
||||
<input type="hidden" name="id_address_delivery" id="id_address_delivery" value="{$cart->id_address_delivery}" onchange="updateAddressesDisplay();{if $opc}updateAddressSelection();{/if}" />
|
||||
<p id="address_invoice_form" class="select" {if $cart->id_address_invoice == $cart->id_address_delivery}style="display: none;"{/if}>
|
||||
|
||||
{if $addresses|@count > 1}
|
||||
{if $addresses|@count >= 1}
|
||||
<label for="id_address_invoice" class="strong">{l s='Choose a billing address:'}</label>
|
||||
<select name="id_address_invoice" id="id_address_invoice" class="address_select" onchange="updateAddressesDisplay();{if $opc}updateAddressSelection();{/if}">
|
||||
{section loop=$addresses step=-1 name=address}
|
||||
<option value="{$addresses[address].id_address|intval}" {if $addresses[address].id_address == $cart->id_address_invoice && $cart->id_address_delivery != $cart->id_address_invoice}selected="selected"{/if}>{$addresses[address].alias|escape:'htmlall':'UTF-8'}</option>
|
||||
{/section}
|
||||
</select>
|
||||
{else}
|
||||
{if $back}
|
||||
<a style="margin-left: 221px;" href="{$link->getPageLink('address', true, NULL, "back=order&step=1&select_address=1&mod=$back")}" title="{l s='Add'}" class="button_large">{l s='Add a new address'}</a>
|
||||
{else}
|
||||
<a style="margin-left: 221px;" href="{$link->getPageLink('address', true, NULL, "back=order&step=1&select_address=1")}" title="{l s='Add'}" class="button_large">{l s='Add a new address'}</a>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{if $back}&mod={$back}{/if}")}" title="{l s='Add'}" class="button_large">{l s='Add a new address'}</a>
|
||||
{/if}
|
||||
</p>
|
||||
<div class="clear"></div>
|
||||
<ul class="address item {if $cart->isVirtualCart()}full_width{/if}" id="address_invoice">
|
||||
<ul class="address alternate_item {if $cart->isVirtualCart()}full_width{/if}" id="address_invoice">
|
||||
</ul>
|
||||
<br class="clear" />
|
||||
<p class="address_add submit">
|
||||
{if $back}
|
||||
<a href="{$link->getPageLink('address', true, NULL, "back=order%26step=1%26mod={$back}%26multi-shipping=1")}" title="{l s='Add'}" class="button_large">{l s='Add a new address'}</a>
|
||||
{else}
|
||||
<a href="{$link->getPageLink('address', true, NULL, "back=order%26step=1%26multi-shipping=1")}" title="{l s='Add'}" class="button_large">{l s='Add a new address'}</a>
|
||||
{/if}
|
||||
<a href="{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{if $back}&mod={$back|urlencode}{/if}")}" title="{l s='Add'}" class="button_large">{l s='Add a new address'}</a>
|
||||
</p>
|
||||
{if !$opc}
|
||||
<div id="ordermsg">
|
||||
<p>{l s='If you would like to add a comment about your order, please write it below.'}</p>
|
||||
<div id="ordermsg" class="clearfix">
|
||||
<p class="txt">{l s='If you would like to add a comment about your order, please write it below.'}</p>
|
||||
<p class="textarea"><textarea cols="60" rows="3" name="message">{if isset($oldMessage)}{$oldMessage}{/if}</textarea></p>
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
Reference in New Issue
Block a user