Перейти к содержимому


Установка Ввода Мейла Обязательным Пунктом И Перенос Кнопки Оплаты


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 15

#1 ssp

ssp

    Пользователь

  • Пользователи
  • PipPip
  • 12 сообщений
  • ГородКраснодар

Отправлено 30 Декабрь 2013 - 12:36

Здравствуйте. Прошу подсказать порядок действий по запрету оформления заказа без имейла в шаблоне вечность.

И второе, как на итоговом шаге оформления заказа (окном с текстом "Заказ №ХХХХ успешно оформлен) перенести блок с кнопкой "перейти к оплате" под блок "позиций заказа" с кнопкой повторить заказ, заодно разместив кнопку "перейти к оплате" ровно под кнопкой "повторить заказ" соответственно, также сместив фразу "заказ еще не оплачен" над этой кнопкой, но уже справа блока.

Спасибо!

#2 miyako

miyako

    Активный участник

  • Модератоpы
  • 5 372 сообщений

Отправлено 30 Декабрь 2013 - 12:49

Просмотр сообщенияssp (30 Декабрь 2013 - 12:36) писал:

Здравствуйте. Прошу подсказать порядок действий по запрету оформления заказа без имейла в шаблоне вечность.

И второе, как на итоговом шаге оформления заказа (окном с текстом "Заказ №ХХХХ успешно оформлен) перенести блок с кнопкой "перейти к оплате" под блок "позиций заказа" с кнопкой повторить заказ, заодно разместив кнопку "перейти к оплате" ровно под кнопкой "повторить заказ" соответственно, также сместив фразу "заказ еще не оплачен" над этой кнопкой, но уже справа блока.

Спасибо!

Подобный вопрос решался здесь - http://forum.storela...мэйла/#entry153

По переносу кнопку сделайте пожалуйста скриншот. Куда какие кнопки перенести.

#3 ssp

ssp

    Пользователь

  • Пользователи
  • PipPip
  • 12 сообщений
  • ГородКраснодар

Отправлено 30 Декабрь 2013 - 18:42

Я видел этот топик, он для других шаблонов по видимому. Но я попробовал - так и есть, не работает.
В частности, код в "Оформление заказа" в моем случае выглядит иначе, чем упомянутый по вашей ссылке
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>
Мой код короче

Насчет второго вопроса - прикрепил картинку с оформлением. Сверху - как есть, ниже - как хотелось бы. Заодно прошу подсказать, как убрать перечеркнутые красным кнопки, считаю, что на этапе оплаты они только отвлекают от конечной цели :)

Заодно просьба подсказать, как для конкретного товара сделать возможным из выпадающего списка выбор страны доставки только россия, чтобы заказ нельзя было оформить жителям снг, в то время, как для остальных товаров оставить все, как есть

Спасибо!

Прикрепленные изображения

  • Untitled-1.jpg


#4 Stasya

Stasya

    Активный участник

  • Модератоpы
  • 4 007 сообщений

Отправлено 30 Декабрь 2013 - 20:04

Что касается сделать емейл обязательным, то в шаблоне Оформление заказа найдите блок
<label for="contactEmail" class="required">E-mail{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}*{% ENDIF %}</label>		
		 <input id="contactEmail" name="form[contact][email]" value="{ORDER_FORM_CONTACT_EMAIL}" maxlength="255" class="{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}required{% ENDIF %} email input-text" type="text"/>
		
и замените его на
<label for="contactEmail" class="required">E-mail*</label>		
		 <input id="contactEmail" name="form[contact][email]" value="{ORDER_FORM_CONTACT_EMAIL}" maxlength="255" class="required email input-text" type="text"/>
		

Чтобы перенести оплату, Вам необходимо в шаблоне Просмотр заказа найти блок
<!-- Методы оплаты онлайн -->
		  <!-- Если заказ не оплачен и выбранный метод оплаты позволяет оплатить его онлайн, покажем форму с оплатой заказа через сайт -->
		  {% IF ORDER_PAYMENT_STEP_ENABLE %}
			<!-- Здесь появляются дополнительные данные, необходимые для заполнения клиентом -->
			{PAYMENT_FORM_TBODY}
			<script type="text/javascript">$('.paymentFormTbodySubmitButton').hide().after('<br /><button type="submit" title="Перейти к оплате заказа" class="submit" onclick="$(\'.paymentFormTbodySubmitButton\').click();return false;">Перейти к оплате</button>');</script>
		  {% ENDIF %}
		  <!-- END методы методы оплаты онлайн -->
скопировать, удалить его с прежнего местонахождения и вставить после блока
<!-- Товарная позиция -->
					{% IF order_lines.TYPE_ID=1 %}
					  {order_lines.QUANTITY} <span title="{order_lines.MEASURE_TITLE}">{order_lines.MEASURE_NAME}
					<!-- Доставка -->
					{% ELSEIF order_lines.TYPE_ID = 2%}
					  1 шт
					<!-- Скидка -->
					{% ELSEIF order_lines.TYPE_ID = 3%}
					  <span title="{order_lines.MEASURE_TITLE}">{order_lines.MEASURE_NAME}</span>
					{%ENDIF%}
				  </td>
				  <td>
					<span class="price-excl-tax">
					<span class="cart-price"><span class="price">{order_lines.LINE_SUM | money}</span></span></span>
				  </td>
				</tr>
			  {%ENDFOR%}
			</tbody>


Чтобы убрать кнопки в том же шаблоне необходимо найти блок
<div class="back-link">
			<a class="submit" href="http://{NET_DOMAIN}/" >Перейти на главную</a>
			<form action="{USER_ORDER_REPEAT_URL}/{ORDER_TOKEN}" method="GET"><button style="float: right;" type="submit" title="Повторить заказ" class="submit" onclick="return confirm('Вы действительно хотите в точности повторить выбранный заказ?')">Повторить заказ</button></form>
		  </div>
и удалить его.

#5 ssp

ssp

    Пользователь

  • Пользователи
  • PipPip
  • 12 сообщений
  • ГородКраснодар

Отправлено 30 Декабрь 2013 - 20:47

Удалось убрать кнопки и сместить блок вниз. Еще бы кнопку правее сдвинуть :)
А вот имейл вводить по прежнему не обязательно, заказ оформляется и так.

#6 Stasya

Stasya

    Активный участник

  • Модератоpы
  • 4 007 сообщений

Отправлено 30 Декабрь 2013 - 20:53

Выше присланный код реализован для оформления заказа в 4 шага. Чтобы сделать тоже самое для быстрого заказа, в шаблоне Быстрый заказ найдите блок
<label for="contactEmail" class="required">E-mail{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}*{% ENDIF %}</label>		 
	  <input id="contactEmail" name="form[contact][email]" value="{ORDER_FORM_CONTACT_EMAIL}" maxlength="255" class="{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}required{% ENDIF %} email input-text" type="text"/>
и замените его на
<label for="contactEmail" class="required">E-mail*</label>		 
	  <input id="contactEmail" name="form[contact][email]" value="{ORDER_FORM_CONTACT_EMAIL}" maxlength="255" class="required email input-text" type="text"/>


#7 ssp

ssp

    Пользователь

  • Пользователи
  • PipPip
  • 12 сообщений
  • ГородКраснодар

Отправлено 30 Декабрь 2013 - 21:14

Спасибо вам огромное, и с Наступающим! :D

#8 Никита

Никита

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 142 сообщений

Отправлено 17 Март 2014 - 09:32

подскажите как оставить строчку "skype" для заполнения в заказе но сделать её не обязательной? у меня она не обозначена звёздочкой, но при оформлении просится заполнить. вот блок, который сейчас прописан:
<label for="sites_client_phone" class="required">skype{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}*{% ENDIF %}</label>
                        <input id="sites_client_phone" name="form[contact][phone]" value="{ORDER_FORM_CONTACT_PHONE}" maxlength="255" class="required input-text" type="text"/>

#9 Alexey11

Alexey11

    Активный участник

  • Модератоpы
  • 1 057 сообщений
  • ГородНижний новгород

Отправлено 17 Март 2014 - 10:07

Замените на:
<label for="sites_client_phone" class="required">skype{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}*{% ENDIF %}</label>
						<input id="sites_client_phone" name="form[contact][phone]" value="{ORDER_FORM_CONTACT_PHONE}" maxlength="255" class="input-text" type="text"/> 


#10 Никита

Никита

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 142 сообщений

Отправлено 17 Март 2014 - 11:48

Спасибо, но все равно просит указать телефон. Подскажите, тогда лучше, как сделать новое необязательное окно для заполнения "skype", а это обратно сделать для телефона и обязательным.

Прикрепленные изображения

  • Безымянный3.png


#11 Alexey11

Alexey11

    Активный участник

  • Модератоpы
  • 1 057 сообщений
  • ГородНижний новгород

Отправлено 17 Март 2014 - 12:15

Замените то поле на:

<label for="sites_client_phone" class="required">Телефон*</label>
<input id="sites_client_phone" name="form[contact][phone]" value="{ORDER_FORM_CONTACT_PHONE}" maxlength="255" class="required input-text" type="text"/>

Дополнительное поле сделать можно, но данные из этого поля не будут отображаться в вашем бэк офисе, не зависимо от заполнения.

#12 Никита

Никита

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 142 сообщений

Отправлено 17 Март 2014 - 12:28

тогда не делаем телефон, оставляем этот скайп
<label for="sites_client_phone" class="required">skype{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}*{% ENDIF %}</label>
                                                <input id="sites_client_phone" name="form[contact][phone]" value="{ORDER_FORM_CONTACT_PHONE}" maxlength="255" class="input-text" type="text"/>
но как его все же сделать не обязательным?

#13 Alexey11

Alexey11

    Активный участник

  • Модератоpы
  • 1 057 сообщений
  • ГородНижний новгород

Отправлено 17 Март 2014 - 12:30

Просмотр сообщенияНикита (17 Март 2014 - 12:28) писал:

тогда не делаем телефон, оставляем этот скайп
<label for="sites_client_phone" class="required">skype{% IF ORDER_FORM_CONTACT_WANT_REGISTER %}*{% ENDIF %}</label>
<input id="sites_client_phone" name="form[contact][phone]" value="{ORDER_FORM_CONTACT_PHONE}" maxlength="255" class="input-text" type="text"/>
но как его все же сделать не обязательным?
К сожалению поле "Телефон" невозможно сделать не обязательным. Можно сделать необязательным email , и заменить его на skype

#14 Никита

Никита

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 142 сообщений

Отправлено 17 Март 2014 - 13:05

))) а не получится, в таком случае, что при наборе skype будет выдаваться ошибка неправильного ввода e-mail, т.к. в скайпе нет "@", если такой ошибки не будет, то давайте сделаем так:
поле e-mail сделаем не обязательным и назовём его skype
а телефон - назовём e-mail
такое возможно?

#15 Stasya

Stasya

    Активный участник

  • Модератоpы
  • 4 007 сообщений

Отправлено 17 Март 2014 - 22:36

Просмотр сообщенияНикита (17 Март 2014 - 13:05) писал:

))) а не получится, в таком случае, что при наборе skype будет выдаваться ошибка неправильного ввода e-mail, т.к. в скайпе нет "@", если такой ошибки не будет, то давайте сделаем так:
поле e-mail сделаем не обязательным и назовём его skype
а телефон - назовём e-mail
такое возможно?

Чтобы сделать телефон не обязательным полем для заполнения в шаблоне Оформление заказа найдите блок
<script>
$(document).ready(function(){
$("body").addClass("full-width basket checkout");
$("body").removeClass("home");
});
</script>
и замените его на
<script>
$(document).ready(function(){
$("body").addClass("full-width basket checkout");
$("body").removeClass("home");
if ($('#sites_client_phone').length && $('#sites_client_phone').val() == 'Отсутствует')
  $('#sites_client_phone').val('');
});
</script>
Затем найдите блок
<form
	  {% IF ORDER_STAGE_NUM=1 %}
		action="{ORDER_STAGE_CONTACTS_URL}"
	  {% ELSEIF ORDER_STAGE_NUM=2 %}
		action="{ORDER_STAGE_DELIVERY_URL}"
	  {% ELSEIF ORDER_STAGE_NUM=3 %}
		action="{ORDER_STAGE_PAYMENT_URL}"
	  {% ELSEIF ORDER_STAGE_NUM=4 %}
		action="{ORDER_STAGE_CONFIRM_URL}"
	  {% ENDIF %}
	  method="post"  id="myform"   
	>
и замените его на
<form
	  {% IF ORDER_STAGE_NUM=1 %}
		action="{ORDER_STAGE_CONTACTS_URL}"
		onsubmit="if(!$('#sites_client_phone').val().length){$('#sites_client_phone').css('font-size','0').val('Отсутствует');}"
	  {% ELSEIF ORDER_STAGE_NUM=2 %}
		action="{ORDER_STAGE_DELIVERY_URL}"
	  {% ELSEIF ORDER_STAGE_NUM=3 %}
		action="{ORDER_STAGE_PAYMENT_URL}"
	  {% ELSEIF ORDER_STAGE_NUM=4 %}
		action="{ORDER_STAGE_CONFIRM_URL}"
	  {% ENDIF %}
	  method="post"  id="myform"   
	>


#16 Никита

Никита

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 142 сообщений

Отправлено 18 Март 2014 - 09:44

Спасибо, Stasya! Всё получилось




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных