// checkout W3C valid - wip

This commit is contained in:
Kevin Granger
2013-12-06 17:19:47 +01:00
parent ed5496479d
commit db37e42b21
2 changed files with 367 additions and 363 deletions
+212 -212
View File
@@ -24,224 +24,224 @@
*}
<script type="text/javascript">
// <![CDATA[
var idSelectedCountry = {if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{else}{if isset($address->id_state)}{$address->id_state|intval}{else}false{/if}{/if};
var countries = new Array();
var countriesNeedIDNumber = new Array();
var countriesNeedZipCode = new Array();
{foreach from=$countries item='country'}
{if isset($country.states) && $country.contains_states}
countries[{$country.id_country|intval}] = new Array();
{foreach from=$country.states item='state' name='states'}
countries[{$country.id_country|intval}].push({ldelim}'id' : '{$state.id_state}', 'name' : '{$state.name|addslashes}'{rdelim});
{/foreach}
{/if}
{if $country.need_identification_number}
countriesNeedIDNumber.push({$country.id_country|intval});
{/if}
{if isset($country.need_zip_code)}
countriesNeedZipCode[{$country.id_country|intval}] = {$country.need_zip_code};
{/if}
{/foreach}
$(function(){ldelim}
$('.id_state option[value={if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{else}{if isset($address->id_state)}{$address->id_state|intval}{/if}{/if}]').attr('selected', true);
{rdelim});
{literal}
$(document).ready(function() {
$('#company').on('input',function(){
// <![CDATA[
var idSelectedCountry = {if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{else}{if isset($address->id_state)}{$address->id_state|intval}{else}false{/if}{/if};
var countries = new Array();
var countriesNeedIDNumber = new Array();
var countriesNeedZipCode = new Array();
{foreach from=$countries item='country'}
{if isset($country.states) && $country.contains_states}
countries[{$country.id_country|intval}] = new Array();
{foreach from=$country.states item='state' name='states'}
countries[{$country.id_country|intval}].push({ldelim}'id' : '{$state.id_state}', 'name' : '{$state.name|addslashes}'{rdelim});
{/foreach}
{/if}
{if $country.need_identification_number}
countriesNeedIDNumber.push({$country.id_country|intval});
{/if}
{if isset($country.need_zip_code)}
countriesNeedZipCode[{$country.id_country|intval}] = {$country.need_zip_code};
{/if}
{/foreach}
$(function(){ldelim}
$('.id_state option[value={if isset($smarty.post.id_state)}{$smarty.post.id_state|intval}{else}{if isset($address->id_state)}{$address->id_state|intval}{/if}{/if}]').attr('selected', true);
{rdelim});
{literal}
$(document).ready(function() {
$('#company').on('input',function(){
vat_number();
});
vat_number();
function vat_number()
{
if ($('#company').val() != '')
$('#vat_number').show();
else
$('#vat_number').hide();
}
});
vat_number();
function vat_number()
{
if ($('#company').val() != '')
$('#vat_number').show();
else
$('#vat_number').hide();
}
});
{/literal}
//]]>
{/literal}
//]]>
</script>
{capture name=path}{l s='Your addresses'}{/capture}
<div class="box">
<h1 class="page-subheading">{l s='Your addresses'}</h1>
<p class="info-title">
{if isset($id_address) && (isset($smarty.post.alias) || isset($address->alias))}
{l s='Modify address'}
{if isset($smarty.post.alias)}
"{$smarty.post.alias}"
{else}
{if isset($address->alias)}"{$address->alias|escape:'html'}"{/if}
{/if}
{else}
{l s='To add a new address, please fill out the form below.'}
{/if}
</p>
{include file="$tpl_dir./errors.tpl"}
<p class="required"><sup>*</sup>{l s='Required field'}</p>
<form action="{$link->getPageLink('address', true)|escape:'html'}" method="post" class="std" id="add_address">
<fieldset>
<!--h3 class="page-subheading">{if isset($id_address)}{l s='Your address'}{else}{l s='New address'}{/if}</h3-->
<div class="required form-group dni">
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="form-control" name="dni" id="dni" value="{if isset($smarty.post.dni)}{$smarty.post.dni}{else}{if isset($address->dni)}{$address->dni|escape:'html'}{/if}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</div>
{assign var="stateExist" value="false"}
{assign var="postCodeExist" value="false"}
{foreach from=$ordered_adr_fields item=field_name}
{if $field_name eq 'company'}
<div class="form-group">
<label for="company">{l s='Company'}</label>
<input class="form-control" type="text" id="company" name="company" value="{if isset($smarty.post.company)}{$smarty.post.company}{else}{if isset($address->company)}{$address->company|escape:'html'}{/if}{/if}" onkeyup="if($(this).val().length) { if (validate_{$address_validation.$field_name.validate}($(this).val())) $(this).parent().removeClass('form-error').addClass('form-ok'); else $(this).parent().addClass('form-error').removeClass('form-ok');}" />
</div>
{/if}
{if $field_name eq 'vat_number'}
<div id="vat_area">
<div id="vat_number">
<div class="form-group">
<label for="vat-number">{l s='VAT number'}</label>
<input type="text" class="form-control" id="vat-number" name="vat_number" value="{if isset($smarty.post.vat_number)}{$smarty.post.vat_number}{else}{if isset($address->vat_number)}{$address->vat_number|escape:'html'}{/if}{/if}" onkeyup="if($(this).val().length) { if (validate_{$address_validation.$field_name.validate}($(this).val())) $(this).parent().removeClass('form-error').addClass('form-ok'); else $(this).parent().addClass('form-error').removeClass('form-ok'); }" />
</div>
</div>
</div>
{/if}
{if $field_name eq 'firstname'}
<div class="required form-group">
<label for="firstname">{l s='First name'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" name="firstname" id="firstname" value="{if isset($smarty.post.firstname)}{$smarty.post.firstname}{else}{if isset($address->firstname)}{$address->firstname|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'lastname'}
<div class="required form-group">
<label for="lastname">{l s='Last name'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="lastname" name="lastname" value="{if isset($smarty.post.lastname)}{$smarty.post.lastname}{else}{if isset($address->lastname)}{$address->lastname|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'address1'}
<div class="required form-group">
<label for="address1">{l s='Address'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="address1" name="address1" value="{if isset($smarty.post.address1)}{$smarty.post.address1}{else}{if isset($address->address1)}{$address->address1|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'address2'}
<div class="required form-group">
<label for="address2">{l s='Address (Line 2)'}</label>
<input class="validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="address2" name="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{else}{if isset($address->address2)}{$address->address2|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'postcode'}
{assign var="postCodeExist" value="true"}
<div class="required postcode form-group">
<label for="postcode">{l s='Zip / Postal Code'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="postcode" name="postcode" value="{if isset($smarty.post.postcode)}{$smarty.post.postcode}{else}{if isset($address->postcode)}{$address->postcode|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'city'}
<div class="required form-group">
<label for="city">{l s='City'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" name="city" id="city" value="{if isset($smarty.post.city)}{$smarty.post.city}{else}{if isset($address->city)}{$address->city|escape:'html'}{/if}{/if}" maxlength="64" />
</div>
{*
if customer hasn't update his layout address, country has to be verified
but it's deprecated
*}
{/if}
{if $field_name eq 'Country:name' || $field_name eq 'country'}
<div class="required form-group">
<label for="id_country">{l s='Country'}<sup>*</sup></label>
<select id="id_country" class="form-control" name="id_country">{$countries_list}</select>
</div>
{if $vatnumber_ajax_call}
<script type="text/javascript">
var ajaxurl = '{$ajaxurl}';
{literal}
$(document).ready(function(){
$('#id_country').change(function() {
$.ajax({
type: "GET",
url: ajaxurl+"vatnumber/ajax.php?id_country="+$('#id_country').val(),
success: function(isApplicable){
if(isApplicable == "1")
{
$('#vat_area').show();
$('#vat_number').show();
}
else
{
$('#vat_area').hide();
}
}
});
});
});
{/literal}
</script>
{/if}
{/if}
{if $field_name eq 'State:name'}
{assign var="stateExist" value="true"}
<div class="required id_state form-group">
<label for="id_state">{l s='State'} <sup>*</sup></label>
<select name="id_state" id="id_state" class="form-control">
<option value="">-</option>
</select>
</div>
{/if}
{/foreach}
{if $postCodeExist eq "false"}
<div class="required postcode form-group unvisible">
<label for="postcode">{l s='Zip / Postal Code'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="postcode" name="postcode" value="{if isset($smarty.post.postcode)}{$smarty.post.postcode}{else}{if isset($address->postcode)}{$address->postcode|escape:'html'}{/if}{/if}" onkeyup="$('#postcode').val($('#postcode').val().toUpperCase());" />
</div>
{/if}
{if $stateExist eq "false"}
<div class="required id_state form-group">
<label for="id_state">{l s='State'} <sup>*</sup></label>
<select name="id_state" id="id_state" class="form-control">
<option value="">-</option>
</select>
</div>
{/if}
<div class="form-group">
<label for="other">{l s='Additional information'}</label>
<textarea class="validate form-control" data-validate="{$address_validation.other.validate}" id="other" name="other" cols="26" rows="3" >{if isset($smarty.post.other)}{$smarty.post.other}{else}{if isset($address->other)}{$address->other|escape:'html'}{/if}{/if}</textarea>
</div>
<div class="form-group phone-number">
<label for="phone">{l s='Home phone'}</label>
<input class="{if isset($one_phone_at_least) && $one_phone_at_least}is_required{/if} validate form-control" data-validate="{$address_validation.phone.validate}" type="tel" id="phone" name="phone" value="{if isset($smarty.post.phone)}{$smarty.post.phone}{else}{if isset($address->phone)}{$address->phone|escape:'html'}{/if}{/if}" />
</div>
{if isset($one_phone_at_least) && $one_phone_at_least}
<p class="inline-infos required">{l s='You must register at least one phone number.'}</p>
{/if}
<div class="clearfix"></div>
<div class="{if isset($one_phone_at_least) && $one_phone_at_least}required {/if}form-group">
<label for="phone_mobile">{l s='Mobile phone'}{if isset($one_phone_at_least) && $one_phone_at_least} <sup>*</sup>{/if}</label>
<input class="validate form-control" data-validate="{$address_validation.phone_mobile.validate}" type="tel" id="phone_mobile" name="phone_mobile" value="{if isset($smarty.post.phone_mobile)}{$smarty.post.phone_mobile}{else}{if isset($address->phone_mobile)}{$address->phone_mobile|escape:'html'}{/if}{/if}" />
</div>
<div class="required form-group" id="adress_alias">
<label for="alias">{l s='Please assign an address title for future reference.'} <sup>*</sup></label>
<input type="text" id="alias" class="is_required validate form-control" data-validate="{$address_validation.alias.validate}" name="alias" value="{if isset($smarty.post.alias)}{$smarty.post.alias}{else if isset($address->alias)}{$address->alias|escape:'html'}{elseif !$select_address}{l s='My address'}{/if}" />
</div>
</fieldset>
<p class="submit2">
{if isset($id_address)}<input type="hidden" name="id_address" value="{$id_address|intval}" />{/if}
{if isset($back)}<input type="hidden" name="back" value="{$back}" />{/if}
{if isset($mod)}<input type="hidden" name="mod" value="{$mod}" />{/if}
{if isset($select_address)}<input type="hidden" name="select_address" value="{$select_address|intval}" />{/if}
<input type="hidden" name="token" value="{$token}" />
<button type="submit" name="submitAddress" id="submitAddress" class="btn btn-default button button-medium"><span>{l s='Save'}<i class="icon-chevron-right right"></i></span></button>
</p>
</form>
<h1 class="page-subheading">{l s='Your addresses'}</h1>
<p class="info-title">
{if isset($id_address) && (isset($smarty.post.alias) || isset($address->alias))}
{l s='Modify address'}
{if isset($smarty.post.alias)}
"{$smarty.post.alias}"
{else}
{if isset($address->alias)}"{$address->alias|escape:'html'}"{/if}
{/if}
{else}
{l s='To add a new address, please fill out the form below.'}
{/if}
</p>
{include file="$tpl_dir./errors.tpl"}
<p class="required"><sup>*</sup>{l s='Required field'}</p>
<form action="{$link->getPageLink('address', true)|escape:'html'}" method="post" class="std" id="add_address">
<!--h3 class="page-subheading">{if isset($id_address)}{l s='Your address'}{else}{l s='New address'}{/if}</h3-->
<div class="required form-group dni">
<label for="dni">{l s='Identification number'} <sup>*</sup></label>
<input type="text" class="form-control" name="dni" id="dni" value="{if isset($smarty.post.dni)}{$smarty.post.dni}{else}{if isset($address->dni)}{$address->dni|escape:'html'}{/if}{/if}" />
<span class="form_info">{l s='DNI / NIF / NIE'}</span>
</div>
{assign var="stateExist" value="false"}
{assign var="postCodeExist" value="false"}
{foreach from=$ordered_adr_fields item=field_name}
{if $field_name eq 'company'}
<div class="form-group">
<label for="company">{l s='Company'}</label>
<input class="form-control" type="text" id="company" name="company" value="{if isset($smarty.post.company)}{$smarty.post.company}{else}{if isset($address->company)}{$address->company|escape:'html'}{/if}{/if}" onkeyup="if($(this).val().length) { if (validate_{$address_validation.$field_name.validate}($(this).val())) $(this).parent().removeClass('form-error').addClass('form-ok'); else $(this).parent().addClass('form-error').removeClass('form-ok');}" />
</div>
{/if}
{if $field_name eq 'vat_number'}
<div id="vat_area">
<div id="vat_number">
<div class="form-group">
<label for="vat-number">{l s='VAT number'}</label>
<input type="text" class="form-control" id="vat-number" name="vat_number" value="{if isset($smarty.post.vat_number)}{$smarty.post.vat_number}{else}{if isset($address->vat_number)}{$address->vat_number|escape:'html'}{/if}{/if}" onkeyup="if($(this).val().length) { if (validate_{$address_validation.$field_name.validate}($(this).val())) $(this).parent().removeClass('form-error').addClass('form-ok'); else $(this).parent().addClass('form-error').removeClass('form-ok'); }" />
</div>
</div>
</div>
{/if}
{if $field_name eq 'firstname'}
<div class="required form-group">
<label for="firstname">{l s='First name'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" name="firstname" id="firstname" value="{if isset($smarty.post.firstname)}{$smarty.post.firstname}{else}{if isset($address->firstname)}{$address->firstname|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'lastname'}
<div class="required form-group">
<label for="lastname">{l s='Last name'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="lastname" name="lastname" value="{if isset($smarty.post.lastname)}{$smarty.post.lastname}{else}{if isset($address->lastname)}{$address->lastname|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'address1'}
<div class="required form-group">
<label for="address1">{l s='Address'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="address1" name="address1" value="{if isset($smarty.post.address1)}{$smarty.post.address1}{else}{if isset($address->address1)}{$address->address1|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'address2'}
<div class="required form-group">
<label for="address2">{l s='Address (Line 2)'}</label>
<input class="validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="address2" name="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{else}{if isset($address->address2)}{$address->address2|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'postcode'}
{assign var="postCodeExist" value="true"}
<div class="required postcode form-group">
<label for="postcode">{l s='Zip / Postal Code'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="postcode" name="postcode" value="{if isset($smarty.post.postcode)}{$smarty.post.postcode}{else}{if isset($address->postcode)}{$address->postcode|escape:'html'}{/if}{/if}" />
</div>
{/if}
{if $field_name eq 'city'}
<div class="required form-group">
<label for="city">{l s='City'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" name="city" id="city" value="{if isset($smarty.post.city)}{$smarty.post.city}{else}{if isset($address->city)}{$address->city|escape:'html'}{/if}{/if}" maxlength="64" />
</div>
{* if customer hasn't update his layout address, country has to be verified but it's deprecated *}
{/if}
{if $field_name eq 'Country:name' || $field_name eq 'country'}
<div class="required form-group">
<label for="id_country">{l s='Country'}<sup>*</sup></label>
<select id="id_country" class="form-control" name="id_country">{$countries_list}</select>
</div>
{if $vatnumber_ajax_call}
<script type="text/javascript">
var ajaxurl = '{$ajaxurl}';
{literal}
$(document).ready(function(){
$('#id_country').change(function() {
$.ajax({
type: "GET",
url: ajaxurl+"vatnumber/ajax.php?id_country="+$('#id_country').val(),
success: function(isApplicable){
if(isApplicable == "1")
{
$('#vat_area').show();
$('#vat_number').show();
}
else
{
$('#vat_area').hide();
}
}
});
});
});
{/literal}
</script>
{/if}
{/if}
{if $field_name eq 'State:name'}
{assign var="stateExist" value="true"}
<div class="required id_state form-group">
<label for="id_state">{l s='State'} <sup>*</sup></label>
<select name="id_state" id="id_state" class="form-control">
<option value="">-</option>
</select>
</div>
{/if}
{/foreach}
{if $postCodeExist eq "false"}
<div class="required postcode form-group unvisible">
<label for="postcode">{l s='Zip / Postal Code'} <sup>*</sup></label>
<input class="is_required validate form-control" data-validate="{$address_validation.$field_name.validate}" type="text" id="postcode" name="postcode" value="{if isset($smarty.post.postcode)}{$smarty.post.postcode}{else}{if isset($address->postcode)}{$address->postcode|escape:'html'}{/if}{/if}" onkeyup="$('#postcode').val($('#postcode').val().toUpperCase());" />
</div>
{/if}
{if $stateExist eq "false"}
<div class="required id_state form-group">
<label for="id_state">{l s='State'} <sup>*</sup></label>
<select name="id_state" id="id_state" class="form-control">
<option value="">-</option>
</select>
</div>
{/if}
<div class="form-group">
<label for="other">{l s='Additional information'}</label>
<textarea class="validate form-control" data-validate="{$address_validation.other.validate}" id="other" name="other" cols="26" rows="3" >{if isset($smarty.post.other)}{$smarty.post.other}{else}{if isset($address->other)}{$address->other|escape:'html'}{/if}{/if}</textarea>
</div>
<div class="form-group phone-number">
<label for="phone">{l s='Home phone'}</label>
<input class="{if isset($one_phone_at_least) && $one_phone_at_least}is_required{/if} validate form-control" data-validate="{$address_validation.phone.validate}" type="tel" id="phone" name="phone" value="{if isset($smarty.post.phone)}{$smarty.post.phone}{else}{if isset($address->phone)}{$address->phone|escape:'html'}{/if}{/if}" />
</div>
{if isset($one_phone_at_least) && $one_phone_at_least}
<p class="inline-infos required">{l s='You must register at least one phone number.'}</p>
{/if}
<div class="clearfix"></div>
<div class="{if isset($one_phone_at_least) && $one_phone_at_least}required {/if}form-group">
<label for="phone_mobile">{l s='Mobile phone'}{if isset($one_phone_at_least) && $one_phone_at_least} <sup>*</sup>{/if}</label>
<input class="validate form-control" data-validate="{$address_validation.phone_mobile.validate}" type="tel" id="phone_mobile" name="phone_mobile" value="{if isset($smarty.post.phone_mobile)}{$smarty.post.phone_mobile}{else}{if isset($address->phone_mobile)}{$address->phone_mobile|escape:'html'}{/if}{/if}" />
</div>
<div class="required form-group" id="adress_alias">
<label for="alias">{l s='Please assign an address title for future reference.'} <sup>*</sup></label>
<input type="text" id="alias" class="is_required validate form-control" data-validate="{$address_validation.alias.validate}" name="alias" value="{if isset($smarty.post.alias)}{$smarty.post.alias}{else if isset($address->alias)}{$address->alias|escape:'html'}{elseif !$select_address}{l s='My address'}{/if}" />
</div>
<p class="submit2">
{if isset($id_address)}<input type="hidden" name="id_address" value="{$id_address|intval}" />{/if}
{if isset($back)}<input type="hidden" name="back" value="{$back}" />{/if}
{if isset($mod)}<input type="hidden" name="mod" value="{$mod}" />{/if}
{if isset($select_address)}<input type="hidden" name="select_address" value="{$select_address|intval}" />{/if}
<input type="hidden" name="token" value="{$token}" />
<button type="submit" name="submitAddress" id="submitAddress" class="btn btn-default button button-medium">
<span>
{l s='Save'}
<i class="icon-chevron-right right"></i>
</span>
</button>
</p>
</form>
</div>
<ul class="footer_links clearfix">
<li><a class="btn btn-defaul button button-small" href="{$link->getPageLink('addresses', true)|escape:'html'}"><span><i class="icon-chevron-left"></i> {l s='Back to your addresses'}</span></a></li>
<li>
<a class="btn btn-defaul button button-small" href="{$link->getPageLink('addresses', true)|escape:'html'}">
<span><i class="icon-chevron-left"></i> {l s='Back to your addresses'}</span>
</a>
</li>
</ul>
+155 -151
View File
@@ -30,127 +30,116 @@
{/if}
<script type="text/javascript">
// <![CDATA[
{if !$opc}
var orderProcess = 'order';
var currencySign = '{$currencySign|html_entity_decode:2:"UTF-8"}';
var currencyRate = '{$currencyRate|floatval}';
var currencyFormat = '{$currencyFormat|intval}';
var currencyBlank = '{$currencyBlank|intval}';
var txtProduct = "{l s='product' js=1}";
var txtProducts = "{l s='products' js=1}";
{/if}
var addressMultishippingUrl = "{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{'&multi-shipping=1'|urlencode}{if $back}&mod={$back|urlencode}{/if}")|addslashes}";
var addressUrl = "{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{if $back}&mod={$back}{/if}")|addslashes}";
var formatedAddressFieldsValuesList = new Array();
{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|json_encode}
{/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|json_encode}:{$field_name|json_encode}
// <![CDATA[
{if !$opc}
var orderProcess = 'order';
var currencySign = '{$currencySign|html_entity_decode:2:"UTF-8"}';
var currencyRate = '{$currencyRate|floatval}';
var currencyFormat = '{$currencyFormat|intval}';
var currencyBlank = '{$currencyBlank|intval}';
var txtProduct = "{l s='product' js=1}";
var txtProducts = "{l s='products' js=1}";
{/if}
var addressMultishippingUrl = "{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{'&multi-shipping=1'|urlencode}{if $back}&mod={$back|urlencode}{/if}")|addslashes}";
var addressUrl = "{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{if $back}&mod={$back}{/if}")|addslashes}";
var formatedAddressFieldsValuesList = new Array();
{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|json_encode}
{/foreach}
{rdelim}
{rdelim}
{/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|json_encode}:{$field_name|json_encode}
{/foreach}
{rdelim}
{rdelim}
{/foreach}
function getAddressesTitles() {
return {
'invoice': "<h3 class='page-subheading'>{l s='Your billing address' js=1}</h3>",
'delivery': "<h3 class='page-subheading'>{l s='Your delivery address' js=1}</h3>"
};
}
function getAddressesTitles()
{
return {
'invoice': "<h3 class='page-subheading'>{l s='Your billing address' js=1}</h3>",
'delivery': "<h3 class='page-subheading'>{l s='Your delivery address' js=1}</h3>"
};
}
function buildAddressBlock(id_address, address_type, dest_comp) {
if (isNaN(id_address))
return;
var adr_titles_vals = getAddressesTitles();
var li_content = formatedAddressFieldsValuesList[id_address]['formated_fields_values'];
var ordered_fields_name = ['title'];
ordered_fields_name = ordered_fields_name.concat(formatedAddressFieldsValuesList[id_address]['ordered_fields']);
ordered_fields_name = ordered_fields_name.concat(['update']);
dest_comp.html('');
li_content['title'] = adr_titles_vals[address_type];
li_content['update'] = '<a class="button button-small btn btn-default" href="{$link->getPageLink('address', true, NULL, "id_address")|addslashes}'+id_address+'&amp;back={$back_order_page}?step=1{if $back}&mod={$back}{/if}" title="{l s='Update' js=1}"><span>{l s='Update' js=1}<i class="icon-chevron-right right"></i></span></a>';
appendAddressList(dest_comp, li_content, ordered_fields_name);
}
function buildAddressBlock(id_address, address_type, dest_comp)
{
if (isNaN(id_address))
return;
var adr_titles_vals = getAddressesTitles();
var li_content = formatedAddressFieldsValuesList[id_address]['formated_fields_values'];
var ordered_fields_name = ['title'];
ordered_fields_name = ordered_fields_name.concat(formatedAddressFieldsValuesList[id_address]['ordered_fields']);
ordered_fields_name = ordered_fields_name.concat(['update']);
dest_comp.html('');
li_content['title'] = adr_titles_vals[address_type];
li_content['update'] = '<a class="button button-small btn btn-default" href="{$link->getPageLink('address', true, NULL, "id_address")|addslashes}'+id_address+'&amp;back={$back_order_page}?step=1{if $back}&mod={$back}{/if}" title="{l s='Update' js=1}"><span>{l s='Update' js=1}<i class="icon-chevron-right right"></i></span></a>';
appendAddressList(dest_comp, li_content, ordered_fields_name);
}
function appendAddressList(dest_comp, values, fields_name)
{
for (var item in fields_name)
{
var name = fields_name[item];
var value = getFieldValue(name, values);
if (value != "")
{
var new_li = document.createElement('li');
new_li.className = 'address_'+ name;
new_li.innerHTML = getFieldValue(name, values);
dest_comp.append(new_li);
function appendAddressList(dest_comp, values, fields_name) {
for (var item in fields_name) {
var name = fields_name[item];
var value = getFieldValue(name, values);
if (value != "") {
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)
{
var reg=new RegExp("[ ]+", "g");
var items = field_name.split(reg);
var vals = new Array();
for (var field_item in items)
{
items[field_item] = items[field_item].replace(",", "");
vals.push(values[items[field_item]]);
function getFieldValue(field_name, values) {
var reg=new RegExp("[ ]+", "g");
var items = field_name.split(reg);
var vals = new Array();
for (var field_item in items) {
items[field_item] = items[field_item].replace(",", "");
vals.push(values[items[field_item]]);
}
return vals.join(" ");
}
return vals.join(" ");
}
//]]>
//]]>
</script>
{if !$opc}
{capture name=path}{l s='Addresses'}{/capture}
{capture name=path}{l s='Addresses'}{/capture}
{/if}
{if !$opc}<h1 class="page-heading">{l s='Addresses'}</h1>{else}<h1 class="page-heading step-num"><span>1</span> {l s='Addresses'}</h1>{/if}
{if !$opc}
<h1 class="page-heading">{l s='Addresses'}</h1>
{else}
<h1 class="page-heading step-num"><span>1</span> {l s='Addresses'}</h1>
{/if}
{if !$opc}
{assign var='current_step' value='address'}
{include file="$tpl_dir./order-steps.tpl"}
{include file="$tpl_dir./errors.tpl"}
{if !$multi_shipping && {Configuration::get('PS_ALLOW_MULTISHIPPING')} && !$cart->isVirtualCart()}
<div class="button_multishipping_mode box" id="multishipping_mode_box">
<div class="title">{l s='Multi-shipping'}</div>
<div class="description">
<a class="btn btn-default button exclusive-medium" href="{$link->getPageLink('order', true, NULL, 'step=1&multi-shipping=1')|escape:'html'}"/><span>{l s='Specify a delivery address for each product ordered.'}</span></a>
<a class="btn btn-default button exclusive-medium" href="{$link->getPageLink('order', true, NULL, 'step=1&multi-shipping=1')|escape:'html'}"/>
<span>{l s='Specify a delivery address for each product ordered.'}</span>
</a>
</div>
</div>
{/if}
<form action="{$link->getPageLink($back_order_page, true)|escape:'html'}" method="post">
<form action="{$link->getPageLink($back_order_page, true)|escape:'html'}" method="post">
{else}
{if {Configuration::get('PS_ALLOW_MULTISHIPPING')} && !$cart->isVirtualCart()}
<div class="address-form-multishipping">
<div class="button_multishipping_mode box" id="multishipping_mode_box">
<div class="title">{l s='Multi-shipping'}</div>
<div class="description checkbox">
<label for="multishipping_mode_checkbox"><input type="checkbox" id="multishipping_mode_checkbox" onchange="multishippingMode(this); return false;" autocomplete="off"/>{l s='I\'d like to specify a delivery address for each product ordered.'}</label>
<label for="multishipping_mode_checkbox">
<input type="checkbox" id="multishipping_mode_checkbox" onchange="multishippingMode(this); return false;" />
{l s='I\'d like to specify a delivery address for each product ordered.'}
</label>
</div>
<div class="description_off">
<a class="btn btn-default button exclusive-medium" href="{$link->getPageLink('order-opc', true, NULL, 'ajax=1&multi-shipping=1&method=multishipping')|escape:'html'}" id="link_multishipping_form" title="{l s='Choose the delivery address(es)'}">
@@ -168,71 +157,86 @@
</script>
</div>
{/if}
<div id="opc_account" class="opc-main-block">
<div id="opc_account-overlay" class="opc-overlay" style="display: none;"></div>
<div id="opc_account" class="opc-main-block">
<div id="opc_account-overlay" class="opc-overlay" style="display: none;"></div>
{/if}
<div class="addresses clearfix">
<div class="row">
<div class="col-xs-12 col-sm-6">
<div class="address_delivery select form-group selector1">
<label for="id_address_delivery">{if $cart->isVirtualCart()}{l s='Choose a billing address:'}{else}{l s='Choose a delivery address:'}{/if}</label>
<select name="id_address_delivery" id="id_address_delivery" class="address_select form-control" onchange="updateAddressesDisplay();{if $opc}updateAddressSelection();{/if}">
{foreach from=$addresses key=k item=address}
<option value="{$address.id_address|intval}" {if $address.id_address == $cart->id_address_delivery}selected="selected"{/if}>{$address.alias|escape:'html':'UTF-8'}</option>
{/foreach}
</select>
</div>
<p class="checkbox addressesAreEquals" {if $cart->isVirtualCart()}style="display:none;"{/if}>
<input type="checkbox" name="same" id="addressesAreEquals" value="1" onclick="updateAddressesDisplay();{if $opc}updateAddressSelection();{/if}"{if $cart->id_address_invoice == $cart->id_address_delivery || $addresses|@count == 1} checked="checked"{/if} autocomplete="off"/>
<label for="addressesAreEquals">{l s='Use the delivery address as the billing address.'}</label>
</p>
</div>
<div class="col-xs-12 col-sm-6">
<div id="address_invoice_form" class="select form-group selector1" {if $cart->id_address_invoice == $cart->id_address_delivery}style="display: none;"{/if}>
{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 form-control" 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:'html':'UTF-8'}</option>
{/section}
</select>
{else}
<a href="{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1&select_address=1{if $back}&mod={$back}{/if}")|escape:'html'}" title="{l s='Add'}" class="button button-small btn btn-default"><span>{l s='Add a new address'}<i class="icon-chevron-right right"></i></span></a>
{/if}
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6">
<ul class="address item box" id="address_delivery" {if $cart->isVirtualCart()}style="display:none;"{/if}>
</ul>
</div>
<div class="col-xs-12 col-sm-6">
<ul class="address alternate_item {if $cart->isVirtualCart()}full_width{/if} box" id="address_invoice">
</ul>
</div>
<div class="addresses clearfix">
<div class="row">
<div class="col-xs-12 col-sm-6">
<div class="address_delivery select form-group selector1">
<label for="id_address_delivery">{if $cart->isVirtualCart()}{l s='Choose a billing address:'}{else}{l s='Choose a delivery address:'}{/if}</label>
<select name="id_address_delivery" id="id_address_delivery" class="address_select form-control" onchange="updateAddressesDisplay();{if $opc}updateAddressSelection();{/if}">
{foreach from=$addresses key=k item=address}
<option value="{$address.id_address|intval}" {if $address.id_address == $cart->id_address_delivery}selected="selected"{/if}>
{$address.alias|escape:'html':'UTF-8'}
</option>
{/foreach}
</select>
</div>
<p class="checkbox addressesAreEquals" {if $cart->isVirtualCart()}style="display:none;"{/if}>
<input type="checkbox" name="same" id="addressesAreEquals" value="1" onclick="updateAddressesDisplay();{if $opc}updateAddressSelection();{/if}"{if $cart->id_address_invoice == $cart->id_address_delivery || $addresses|@count == 1} checked="checked"{/if} />
<label for="addressesAreEquals">{l s='Use the delivery address as the billing address.'}</label>
</p>
</div>
<p class="address_add submit">
<a href="{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{if $back}&mod={$back}{/if}")|escape:'html'}" title="{l s='Add'}" class="button button-small btn btn-default"><span>{l s='Add a new address'}<i class="icon-chevron-right right"></i></span></a>
</p>
{if !$opc}
<div class="col-xs-12 col-sm-6">
<div id="address_invoice_form" class="select form-group selector1" {if $cart->id_address_invoice == $cart->id_address_delivery}style="display: none;"{/if}>
{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 form-control" 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:'html':'UTF-8'}
</option>
{/section}
</select>
{else}
<a href="{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1&select_address=1{if $back}&mod={$back}{/if}")|escape:'html'}" title="{l s='Add'}" class="button button-small btn btn-default">
<span>
{l s='Add a new address'}
<i class="icon-chevron-right right"></i>
</span>
</a>
{/if}
</div>
</div>
</div> <!-- end row -->
<div class="row">
<div class="col-xs-12 col-sm-6">
<ul class="address item box" id="address_delivery" {if $cart->isVirtualCart()}style="display:none;"{/if}>
</ul>
</div>
<div class="col-xs-12 col-sm-6">
<ul class="address alternate_item {if $cart->isVirtualCart()}full_width{/if} box" id="address_invoice">
</ul>
</div>
</div> <!-- end row -->
<p class="address_add submit">
<a href="{$link->getPageLink('address', true, NULL, "back={$back_order_page}?step=1{if $back}&mod={$back}{/if}")|escape:'html'}" title="{l s='Add'}" class="button button-small btn btn-default">
<span>{l s='Add a new address'}<i class="icon-chevron-right right"></i></span>
</a>
</p>
{if !$opc}
<div id="ordermsg" class="form-group">
<label>{l s='If you would like to add a comment about your order, please write it in the field below.'}</label>
<textarea class="form-control" cols="60" rows="6" name="message">{if isset($oldMessage)}{$oldMessage}{/if}</textarea>
</div>
{/if}
</div>
{/if}
</div> <!-- end addresses -->
{if !$opc}
<p class="cart_navigation clearfix">
<input type="hidden" class="hidden" name="step" value="2" />
<input type="hidden" name="back" value="{$back}" />
<a href="{$link->getPageLink($back_order_page, true, NULL, "step=0{if $back}&back={$back}{/if}")|escape:'html'}" title="{l s='Previous'}" class="button-exclusive btn btn-default"><i class="icon-chevron-left"></i>{l s='Continue Shopping'}</a>
<button type="submit" name="processAddress" class="button btn btn-default button-medium"><span>{l s='Proceed to checkout'}<i class="icon-chevron-right right"></i></span></button>
</p>
</form>
<p class="cart_navigation clearfix">
<input type="hidden" class="hidden" name="step" value="2" />
<input type="hidden" name="back" value="{$back}" />
<a href="{$link->getPageLink($back_order_page, true, NULL, "step=0{if $back}&back={$back}{/if}")|escape:'html'}" title="{l s='Previous'}" class="button-exclusive btn btn-default">
<i class="icon-chevron-left"></i>
{l s='Continue Shopping'}
</a>
<button type="submit" name="processAddress" class="button btn btn-default button-medium">
<span>{l s='Proceed to checkout'}<i class="icon-chevron-right right"></i></span>
</button>
</p>
</form>
{else}
</div>
{/if}
</div> <!-- end opc_account -->
{/if}