Часто сталкиваемся с вопросом, как упростить оформление заказа, убрать не нужные поля. И так:
Включаем гостевой заказ:
order-opc-new-account.tpl
При обычном:
authentication.tpl
Скрываем выбор пола пользователя (муж/жен.)
По-умолчанию:
Код:
<p class="radio required">
<span>{l s='Title'}</span>
<input type="radio" name="id_gender" id="id_gender1" value="1" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 1}checked="checked"{/if} />
<label for="id_gender1" class="top">{l s='Mr.'}</label>
<input type="radio" name="id_gender" id="id_gender2" value="2" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 2}checked="checked"{/if} />
<label for="id_gender2" class="top">{l s='Ms.'}</label>
</p>
Добавляем hidden (скрываем
Код:
<p class="radio required hidden">
<span>{l s='Title'}</span>
<input type="radio" name="id_gender" id="id_gender1" value="1" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 1}checked="checked"{/if} />
<label for="id_gender1" class="top">{l s='Mr.'}</label>
<input type="radio" name="id_gender" id="id_gender2" value="2" {if isset($smarty.post.id_gender) && $smarty.post.id_gender == 2}checked="checked"{/if} />
<label for="id_gender2" class="top">{l s='Ms.'}</label>
</p>
и тд. со всеми не обяз. полями.
Значением по-умолчанию добавляем в input
=======================
"значением по умолчанию добавляем в input"???
Код:
<input onkeyup="$('#lastname').val(this.value);" type="text" class="text" id="customer_lastname" name="customer_lastname" value="{if isset($smarty.post.customer_lastname)}{$smarty.post.customer_lastname}{/if}" />
На:
Код:
<input type="hidden" name="customer_lastname" value="фамилия" />
=======================
Убираем обязательные поля
Их можно убрать в файле
Address.php, из строки
Код:
Код:
protected $fieldsRequired = array('id_country', 'alias', 'lastname', 'firstname', 'address1', 'city');
========================
Файл
order-opc.js
Нужно заставить его валидировать скрытые поля.
Для этого из строк (в районе 560-х и 570-х)
Код:
$('#opc_account_form input:visible').each(function() {
и
Код:
$('#opc_account_form select:visible').each(function() {
нужно убрать подстроки ":visible".
После этого все будет нормально валидироваться.
==========================
Если выскакивает ошибка id_country
Код:
<label for="id_country">{l s='Country'}</label>
<select name="id_country" id="id_country">
<option value="177" selected="selected">Российская Федерация</option>
</select>
==========================
Выбор оплаты по умолчанию (
модуль cashondelivery)
Достаточно в файле payment.tpl модуля cashondelivery изменить адрес ссылки:
Код:
<a href="{$this_path_ssl}validation.php" title="{l s='Pay with cash on delivery (COD)' mod='cashondelivery'}">
на
Код:
<a href="{$this_path_ssl}validation.php?confirm=1" title="{l s='Pay with cash on delivery (COD)' mod='cashondelivery'}">