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


Mr.Nito

Регистрация: 14 сент. 2016
Offline Активность: 11 окт. 2023 19:57
*****

#288501 Защита На Кнопку "оформить Заказ" От Дублирования Заказа

Отправлено Mr.Nito на 24 Декабрь 2020 - 16:51

в main.js заменить
// Валидация формы на странице оформления заказа
$("#quickform").submit(function(){
// Если форма невалидна не отправляем её на сервер
if(!$(this).valid()) {
	 return false;
}
// Получаем данные формы, которые будем отправлять на сервер
var formData = $(this).serializeArray();
// Сообщаем серверу, что мы пришли через ajax запрос
formData.push({name: 'ajax_q', value: 1});
// Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
$.ajax({
	 type : "POST",
	 dataType: 'json',
	 cache : false,
	 url	 : $(this).attr('action'),
	 data : formData,
	 success: function(data) {
	 // Если заказ был успешно создан
	 if( data.status == 'ok' ) {
		 window.location = data.location;
	 } else if( data.status == 'error' ) {
		 alert(data.message);
	 } else {
		 alert('Во время оформления заказа возникла неизвестная ошибка. Пожалуйста, обратитесь в службу технической поддержки.');
	 }
	 }
});
return false;	
}).validate();
на
// Валидация формы на странице оформления заказа
$("#quickform").submit(function(){
// Если форма невалидна не отправляем её на сервер
if(!$(this).valid()) {
	 return false;
}
// Получаем данные формы, которые будем отправлять на сервер
var formData = $(this).serializeArray();
// Сообщаем серверу, что мы пришли через ajax запрос
formData.push({name: 'ajax_q', value: 1});
var $btn = $("#quickform").find('button[type="submit"]')
// Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
$.ajax({
	 type : "POST",
	 dataType: 'json',
	 cache : false,
	 url	 : $(this).attr('action'),
	 data : formData,
	 timeout: 3000,
	 beforeSend: function() {
	 $btn.addClass('disabled').html('Оформляется')
	 },	
	 success: function(data) {
	 // Если заказ был успешно создан
	 if( data.status == 'ok' ) {
		 window.location = data.location;
	 } else if( data.status == 'error' ) {
		 alert(data.message);
		 $btn.removeClass('disabled').html('Оформить заказ')
	 } else {
		 alert('Во время оформления заказа возникла неизвестная ошибка. Пожалуйста, обратитесь в службу технической поддержки.');
	 }
	 },
	 error: function() {
	 $btn.removeClass('disabled').html('Оформить заказ')
	 }
});
return false;	
}).validate();

в main.css добавить строку
.button.disabled {opacity: 0.7;cursor: default; pointer-events: none;}



#286934 Часы Доставки

Отправлено Mr.Nito на 30 Апрель 2020 - 13:20

Просмотр сообщенияiamroot (30 Апрель 2020 - 07:25) писал:

Благодарю, всё работает, с быстрым заказом. А как быть с корзиной - страницей оформления отдельной :rolleyes:
Дата исчезла, её бы тоже вернуть
И вот вопросец, нельзя ли сделать привязку к времени оформления заказа? Чтобы человек не мог выбрать пунк с 10 до 12 если уже наступил отрезок времени с 10 до 12

Для страницы оформления нужно заменить в "Оформлении заказа"
		 <div class="form__fields deliveryConvenientDate">
			 <label for="deliveryConvenientDate" {% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}class="required"{% ENDIF %}>Удобное время доставки{% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}<em>*</em>{% ENDIF %}</label>
			 <div class="input-box">
			 <span>c</span>
			 <select class="input _bordered" name="form[delivery][convenient_time_from]">
			 <option></option>
				 {% FOR convenient_time_from_list %}
				 {%IF convenient_time_from_list.HOUR_INT>9%}{%IF convenient_time_from_list.HOUR_INT<21%}
				 <option value="{convenient_time_from_list.HOUR_INT}" {% IF convenient_time_from_list.SELECTED %}selected="selected"{% ENDIF %}>{convenient_time_from_list.HOUR}</option>
				 {%ENDIF%}{%ENDIF%}
				 {% ENDFOR %}
			 </select>
			 <span>до</span>
			 <select class="input _bordered" name="form[delivery][convenient_time_to]">
				 <option></option>
				 {% FOR convenient_time_to_list %}
				 {%IF convenient_time_to_list.HOUR_INT>10%}{%IF convenient_time_to_list.HOUR_INT<22%}
				 <option value="{convenient_time_to_list.HOUR_INT}" {% IF convenient_time_to_list.SELECTED %}selected="selected"{% ENDIF %}>{convenient_time_to_list.HOUR}</option>
				 {%ENDIF%}{%ENDIF%}
				 {% ENDFOR %}
			 </select>
			 </div>
		 </div>
на
		 <div class="form__fields deliveryConvenientDate">
			 <!-- Если поле даты доставки запрашивается -->
				 <div class="quickform__item -deliveryConvenientTime">
								 <label class="quickform__title --sub" {% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}class="required"{% ENDIF %}>Удобное время <span>доставки</span>{% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}<em>*</em>{% ENDIF %}</label>
								 <div class="quickform__input-wrap">
								 <input type="hidden" name="form[delivery][convenient_time_from]" value="0">
								 <input type="hidden" name="form[delivery][convenient_time_to]" value="0">
							
								 <div class="quickform__select-box">
										 <select class="quickform__select-convenient"{% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}required{% ENDIF %}>
										 <option value=""></option>
										 <option value="10-12">10:00-12:00</option>
										 <option value="12-15">12:00-15:00</option>
										 <option value="15-18">15:00-18:00</option>
										 <option value="18-21">18:00-21:00</option>
										 </select>
								 </div>
								 </div>
						 </div>
		 </div>

Цитата

И вот вопросец, нельзя ли сделать привязку к времени оформления заказа? Чтобы человек не мог выбрать пунк с 10 до 12 если уже наступил отрезок времени с 10 до 12
Можно, но уже на платной основе. Тут нужно учитывать, что человек может заказать на след. день и тогда время с 10 до 12 должно быть показано.
Напишите на support@storeland.ru с темой письма "Платная доработка"

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

  • Screenshot_4222.jpg



#286920 Часы Доставки

Отправлено Mr.Nito на 30 Апрель 2020 - 00:23

Здравствуйте.
Возможно сделать интервалами. Но они могут быть только целыми числами. С 10 до 12ч
Для этого в Быстром заказе меняем

			 <div class="quickform__item -deliveryConvenientTime">
				 <label class="quickform__title --sub" {% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}class="required"{% ENDIF %}>Удобное время доставки{% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}<em>*</em>{% ENDIF %}</label>
				 <div class="quickform__input-wrap">
				 <div class="quickform__select-box -from">
					 <select class="input quickform__select-convenient _from" name="form[delivery][convenient_time_from]" {% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}required{% ENDIF %}>
					 <option value=""></option>
					 {% FOR convenient_time_from_list %}
					 {%IF convenient_time_from_list.HOUR_INT>9%}{%IF convenient_time_from_list.HOUR_INT<21%}
						 <option value="{convenient_time_from_list.HOUR_INT}" {% IF convenient_time_from_list.SELECTED %}selected="selected"{% ENDIF %}>{convenient_time_from_list.HOUR}</option>
					 {%ENDIF%}{%ENDIF%}
					 {% ENDFOR %}
					 </select>
					 <div class="quickform__label">с</div>
				 </div>
				 <div class="quickform__select-box -to">
					 <select class="input quickform__select-convenient _to" name="form[delivery][convenient_time_to]" {% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}required{% ENDIF %}>
					 <option value=""></option>
					 {% FOR convenient_time_to_list %}
					 {%IF convenient_time_to_list.HOUR_INT>10%}{%IF convenient_time_to_list.HOUR_INT<22%}
						 <option value="{convenient_time_to_list.HOUR_INT}" {% IF convenient_time_to_list.SELECTED %}selected="selected"{% ENDIF %}>{convenient_time_to_list.HOUR}</option>
					 {%ENDIF%}{%ENDIF%}
					 {% ENDFOR %}
					 </select>
					 <div class="quickform__label">до</div>
				 </div>
				 </div>
			 </div>
на
			 <div class="quickform__item -deliveryConvenientTime">
				 <label class="quickform__title --sub" {% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}class="required"{% ENDIF %}>Удобное время <span>доставки</span>{% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}<em>*</em>{% ENDIF %}</label>
				 <div class="quickform__input-wrap">
				 <input type="hidden" name="form[delivery][convenient_time_from]" value="0">
				 <input type="hidden" name="form[delivery][convenient_time_to]" value="0">
				
				 <div class="quickform__select-box">
					 <select class="input quickform__select-convenient"{% IF SETTINGS_ORDER_FIELDS_CONVENIENT_TIME=1 %}required{% ENDIF %}>
					 <option value=""></option>
					 <option value="0-2">00:00-02:00</option>
						 <option value="2-4">02:00-04:00</option>
					 <option value="4-6">04:00-06:00</option>
					 <option value="6-8">06:00-08:00</option>
					 <option value="8-10">8:00-10:00</option>
					 <option value="10-12">10:00-12:00</option>
					 <option value="12-14">12:00-14:00</option>
					 <option value="14-16">14:00-16:00</option>
					 <option value="16-18">16:00-18:00</option>
					 <option value="18-20">18:00-20:00</option>
					 <option value="20-22">20:00-22:00</option>
					 <option value="22-24">22:00-24:00</option>
					 </select>
				 </div>
				 </div>
			 </div>
И проставляем нужное нам время в полях списка.

<option value="0-2">00:00-02:00</option>
меняем например на
<option value="4-6">04:00-06:00</option>
Ненужные строки - удаляем.
В файле main.js
код
// Cкрипты для быстрого заказа
function orderScripts(){
заменяем на
// Cкрипты для быстрого заказа
function orderScripts(){
// Выбор времени
$('#quickform select.quickform__select-convenient').on('change', function(){
var convenientArr = $(this).val().split('-')

if(convenientArr.length){
	 $('input[name="form[delivery][convenient_time_from]"]').val(convenientArr[0])
	 $('input[name="form[delivery][convenient_time_to]"]').val(convenientArr[1])
}
})
в main.css
после
.quickform .quickform__row.-adress .-deliveryConvenientTime .quickform__select-convenient .jq-selectbox__select {border-radius: 0;}
добавляем
.quickform .quickform__row.-adress .-deliveryConvenientTime .quickform__select-convenient .jq-selectbox__select {
border-top-right-radius: 25px;
border-bottom-right-radius: 25px;
}
@media (max-width: 768px){
.quickform .quickform__row.-adress .-deliveryConvenientTime .quickform__select-convenient .jq-selectbox__select {border-radius: 25px;}
}

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

  • Screenshot_5.jpg
  • Screenshot_6.jpg



#283568 Логика Работы Кнопки "в Корзину"

Отправлено Mr.Nito на 16 Июль 2019 - 18:28

Просмотр сообщенияFamilyLand (14 Июль 2019 - 15:09) писал:

Добрый день! Подскажите пожалуйста как это правильно сделать?

Здравствуйте.
Файл main.js
Скрытый текст
файл main.css
Скрытый текст

В шаблоне Товары
Скрытый текст

В шаблоне Поиск
Скрытый текст

В шаблоне HTML
Скрытый текст



#283512 Логика Работы Кнопки "в Корзину"

Отправлено Mr.Nito на 12 Июль 2019 - 11:41

Просмотр сообщенияUser1 (05 Июль 2019 - 20:08) писал:

Добрый день!
Хочу отметить странную логику работы кнопки "В корзину".
Если находясь в каталоге товаров нажать кнопку "В корзину" И У ТОВАРА ЕСТЬ МОДИФИКАЦИИ то в корзину попадёт товар со СЛУЧАЙНОЙ модификацией (подозреваю что с той которая goods_modifications_properties.values.SELECTED хотя как ей присваивается статус ВЫДЕЛЕННОЙ непонятно).
Но это же не лотерея!

Надо чтоб для товара с модификациями кнопка "В корзину" в каталоге работала как "Быстрый просмотр" т.е. открывалось модальное окно и пользователю придется таки самому выбрать модификацию товара.
Как это реализовать?
Здравствуйте.
Добавил функционал из шаблона "Сканди" с выводом модального окна для товаров с несколькими модификациями.


#278599 Переделка Карточки Товара

Отправлено Mr.Nito на 24 Сентябрь 2018 - 18:22

Просмотр сообщенияarpico-latex (24 Сентябрь 2018 - 09:33) писал:

спасибо. все получилось.

А подскажите еще, как над ценой сделать чтоб выводилось название товара...
http://prntscr.com/kxxw2m
удалил строку в main.css

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

  • 24-09-2018 18-15-17.jpg



#277265 Вёрстка Подвала

Отправлено Mr.Nito на 19 Июль 2018 - 16:14

Просмотр сообщенияAst (18 Июль 2018 - 13:49) писал:

SL-381753
Здравствуйте
В подвале при добавлении нового пункта меню, он залезает на блок для кода с сами строчки меню становятся не кликабельны.
Как можно исправить? Спасибо
Здравствуйте.
В main.css
.menu_footer{padding:10px;height:60px;}

замените на
.menu_footer{padding:10px;}



#277129 Интеграция Сервиса Доставки Заказов

Отправлено Mr.Nito на 10 Июль 2018 - 16:09

Просмотр сообщенияАлекс1 (09 Июль 2018 - 08:32) писал:

Добрый день.
Подскажите, как подключить в магазин сервис доставки заказов boxberry?
Здравствуйте.

Полноценной интеграции с сервисами доставки, к сожалению, нет, у разработчиков намечен план по их интеграции, пока можно подключить виджет пункта выдачи заказов от boxberry, если такой вариант устроит, то создайте в разделе Настройки - Доставка новый пункт и укажите нам его, чтобы мы написали инструкцию по подключению для этого способа доставки.

Также уточните номер Вашего аккаунта, он указан на последней вкладке в бэк-офисе


#277124 Исчез Крестик Закрывающий Большую Картинку Товара.

Отправлено Mr.Nito на 10 Июль 2018 - 11:48

Просмотр сообщенияMasterMebelus (09 Июль 2018 - 23:29) писал:

Здравствуйте.
Помогите пожалуйста.
Исчез крестик закрывающий большую картинку товара и теперь, чтобы выйти обратно на карточку товара, приходится, нажимать стрелку возврата в браузере.
В форуме решений не нашел.
Спасибо.
Аккаунт SL-454704
http://master-mebelus.ru
Здравствуйте.
Добавил открытие изображения во всплывающем окне


#276455 На Главной Исправить Немного

Отправлено Mr.Nito на 07 Июнь 2018 - 14:15

Просмотр сообщенияJUMP (07 Июнь 2018 - 11:04) писал:

Здравствуйте. На главной в названии категорий, нужно сделать чтобы вмещалось больше букв слов, а то сейчас пишу название категории и все не умещается и появляется многоточие..(( аккаунт 360450
В main.css 716 строка
замените
.categories .item .cat-name a {display: block;height: 50px;line-height: 50px;background-color: #D71F43;color: #fff;font-size: 14,5px;font-weight: 700;padding: 0 10px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;text-transform: uppercase;font-family: 'Ubuntu', sans-serif;}

на
.categories .item .cat-name a {display: flex;justify-content:  center;align-items: center;min-height: 45px;line-height: 1.3;background-color: #D71F43;color: #fff;font-size: 14.5px;font-weight: 700;padding: 0 10px;text-transform: uppercase;font-family: 'Ubuntu', sans-serif;}



#276441 Вёрстка Подвала

Отправлено Mr.Nito на 07 Июнь 2018 - 10:31

Просмотр сообщенияКото (06 Июнь 2018 - 15:16) писал:

Добрый день.
Подскажите пожалуйста, как сделать следующие изменения?
Аккаунт SL-449852
Прикрепленный файл 111555.jpg
Изменения произвёл

Ненужные элементы можно находить через браузер
https://forum.storel...нужно-производ/


#276390 Сделать Меню Прежним

Отправлено Mr.Nito на 05 Июнь 2018 - 15:08

Просмотр сообщенияIgruxa (04 Июнь 2018 - 19:38) писал:

По первому вопросу.
Мне не нужен другой тариф. Я имел ввиду нужны ли какие дополнительные настройки на тарифе стандарт, чтобы протокол https работал, а сайт индексировался в поиске?
Дополнительно ничего делать не нужно, редирект настроится автоматически в течении 2х недель.

Окно добавил в шаблоне Корзина
	{% FOR cart_sum %}
	  {% IF cart_sum.NOW_WITH_DELIVERY_AND_DISCOUNT < 800 %}
	  <div class="min-order-info">
		<p>Минимальная сумма заказа 800 рублей</p>
		<span class="button" onclick="$(this).parent().fadeOut()">Ознакомлен</span>
	  </div>
	  {% ENDIF %}
	{% ENDFOR %}
сразу после
<form action="{CART_URL}" method="post" class="cartForm">

в main.css добавил код
/**/
.cart-info {
  position: relative;
}
.min-order-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 75%;
  background: rgba(255,255,255,.8);
}
.min-order-info p {
  font-size: 39px;
}
/** Верхняя часть шапки **/



#276384 Доставка

Отправлено Mr.Nito на 05 Июнь 2018 - 12:15

Просмотр сообщенияКото (05 Июнь 2018 - 11:25) писал:

SL-449852
Изменения произвёл

В шаблоне Товар заменил
	  <!-- Блок описания вариантов доставки -->
	  <div class="span12">
		<h3>Условия доставки</h3>
		{% FOR goods_delivery %}
		  <h5>Вариант {goods_delivery.index}: {goods_delivery.NAME}</h5>
		  <div class="span12" >
			<p style="color: #333;">{goods_delivery.DESC}</p>
			{% IF goods_delivery.rules_empty %}
			  {% IF goods_delivery.PRICE=0 %}
				<strong class="black">Стоимость доставки: {goods_delivery.PRICE | money_format}</strong>
			  {% ELSE %}
				Стоимость доставки: {goods_delivery.PRICE | money_format}
			  {% ENDIF %}
			{% ELSE %}
			  <table class="table">
				<thead>
				  <tr>
					<td><h5>Стоимость доставки зависит от суммы заказа</h5></td>
				  </tr>
				</thead>
				<tbody style="color: #333;">
				  {% FOR rules %}
					<tr>
					  <td>Для заказов больше {goods_delivery.rules.SUM_MORE_PRICE | money_format} - доставка {goods_delivery.rules.PRICE | money_format}</td>
					</tr>
				  {% ENDFOR %}
				  <tr>
					<td>Для заказов меньше {goods_delivery.SUM_LESS_PRICE | money_format} - доставка {goods_delivery.PRICE | money_format}</td>
				  </tr>
				</tbody>
			  </table>
			{% ENDIF %}
		  </div>
		{% ENDFOR %}
	  </div>
	  <!-- /Блок описания вариантов доставки -->

на
	  <!-- Блок описания вариантов доставки -->
	  <div class="span12">
		<h3>Условия доставки</h3>
		{% FOR goods_delivery %}
		  <h5>Вариант {goods_delivery.index}: {goods_delivery.NAME}</h5>
		  <div class="span12" >
			{% IF goods_delivery.rules_empty %}
			  {% IF goods_delivery.PRICE=0 %}
				<strong class="black">Стоимость доставки: {goods_delivery.PRICE | money_format}</strong>
			  {% ELSE %}
				Стоимость доставки: {goods_delivery.PRICE | money_format}
			  {% ENDIF %}
			{% ELSE %}
			  <table class="table">
				<thead>
				  <tr>
					<td><h5>Стоимость доставки зависит от суммы заказа</h5></td>
				  </tr>
				</thead>
				<tbody style="color: #333;">
				  {% FOR rules %}
					<tr>
					  <td>Для заказов больше {goods_delivery.rules.SUM_MORE_PRICE | money_format} - доставка {goods_delivery.rules.PRICE | money_format}</td>
					</tr>
				  {% ENDFOR %}
				  <tr>
					<td>Для заказов меньше {goods_delivery.SUM_LESS_PRICE | money_format} - доставка {goods_delivery.PRICE | money_format}</td>
				  </tr>
				</tbody>
			  </table>
			{% ENDIF %}		   
			<p style="color: #333;">{goods_delivery.DESC}</p>
		  </div>
		{% ENDFOR %}
	  </div>
	  <!-- /Блок описания вариантов доставки -->



#276375 Отключение Анимации При Наведении На Изображение Товара В Каталоге

Отправлено Mr.Nito на 05 Июнь 2018 - 10:08

Просмотр сообщенияLeatherBag (03 Июнь 2018 - 18:23) писал:

При наведении курсора на изображение товара в каталоге изображение поворачивается. Как отключить эту анимацию?
Не смог найти ответ на форуме.
В main.css удалил строку
.products-list .item .product-image:hover img {-webkit-transform: rotate(-10deg) scale(1.1);-moz-transform: rotate(-10deg) scale(1.1);-o-transform: rotate(-10deg) scale(1.1);transform: rotate(-10deg) scale(1.1);}



#275846 Изменения В Шапке Мобильной Версии

Отправлено Mr.Nito на 11 Май 2018 - 10:57

По данному вопросу ответили в онлайн-чате.