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


Редактирование Оформления Заказа

самовывоз оформление заказа

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

#41 Ирина345

Ирина345

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

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

Отправлено 15 Апрель 2016 - 14:34

Просмотр сообщения007 (15 Апрель 2016 - 14:15) писал:

Спасибо! сделал, но остались недочеты:
1. При самовывозе осталось поле время удобное время доставки, адрес доставки, а их тоже бы хотелось убрать. И можно ли убрать строку  "Адрес доставки заказа" в случае выбора Самовывоза
2. При доставке ПЭК и Почтой России также осталось поле удобное время доставки, а его нужно убрать.

Я что-то не так указал в коде?
Найдите в шаблоне Быстрый заказ код
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryCity').closest('.field').show();
$('#quickDeliveryZipCode').closest('.field').show();
$('#quickDeliveryConvenientDate').closest('.field').show();
$('#quickDeliveryAddress').closest('.field').show();
// Для самовывоза скрываем адрес доставки и оставляем комментарий
if(current_id === '322029') {
  $('#quickDeliveryCity').closest('.field').hide();
  $('#quickDeliveryZipCode').closest('.field').hide();
  $('#quickDeliveryConvenientDate').closest('.field').hide();
  $('#quickDeliveryAddress').closest('.field').hide();
}
// Для курьера скрываем город и индекс
else if(current_id === '318811') {
  $('#quickDeliveryCity').closest('.field').hide();
  $('#quickDeliveryZipCode').closest('.field').hide();
}
// Для ПЭК скрываем время доставки
else if(current_id === '322920') {
  $('#quickDeliveryConvenientDate').closest('.field').hide();
}
// Для почты России скрываем время доставки
else if(current_id === '322921') {
  $('#quickDeliveryConvenientDate').closest('.field').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});
замените на
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryCity').closest('.field').show();
$('#quickDeliveryZipCode').closest('.field').show();
$('#quickDeliveryConvenientDate').closest('.time').show();
$('#quickDeliveryAddress').closest('.wide').show();
// Для самовывоза скрываем адрес доставки и оставляем комментарий
if(current_id === '322029') {
  $('#quickDeliveryCity').closest('.field').hide();
  $('#quickDeliveryZipCode').closest('.field').hide();
  $('#quickDeliveryConvenientDate').closest('.field').hide();
  $('#quickDeliveryAddress').closest('.wide').hide();
  $('#quickDeliveryComment').closest('.wide').hide();
  $('#quickDeliveryConvenientDate').closest('.time').hide();
}
// Для курьера скрываем город и индекс
else if(current_id === '318811') {
  $('#quickDeliveryCity').closest('.field').hide();
  $('#quickDeliveryZipCode').closest('.field').hide();
   $('#quickDeliveryConvenientDate').closest('.time').show();
}
// Для ПЭК скрываем время доставки
else if(current_id === '322920') {
  $('#quickDeliveryConvenientDate').closest('.time').hide();
}
// Для почты России скрываем время доставки
else if(current_id === '322921') {
  $('#quickDeliveryConvenientDate').closest('.time').hide();
}
});


#42 Яндекс

Яндекс

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

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

Отправлено 23 Апрель 2016 - 13:25

Подскажите пожалуйста как убрать все пункты заполнения адеса доставки и оставить поле "комментарий" если выбран пункт "Подключение на свой номер" ?
Шаблон радость.

А также возможно ли к графе коммментарий добавить кнопку "добавить файл" ? Когда покупатели прикладывают файл чтобы он отправлялся на почту вместе с письмом о новом заказе...

#43 Юля123

Юля123

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

  • Пользователи
  • PipPipPipPip
  • 2 567 сообщений

Отправлено 25 Апрель 2016 - 17:28

Просмотр сообщенияЯндекс (23 Апрель 2016 - 13:25) писал:

Подскажите пожалуйста как убрать все пункты заполнения адреса доставки и оставить поле "комментарий" если выбран пункт "Подключение на свой номер" ?
Шаблон радость.

А также возможно ли к графе комментарий добавить кнопку "добавить файл" ? Когда покупатели прикладывают файл чтобы он отправлялся на почту вместе с письмом о новом заказе...

Здравствуйте, скрыть все поля адреса доставки Вы можете в настройках - Основные, в разделе: "Настройка полей доставки, использующихся при оформлении заказа"

Функцию прикрепления файла, к сожалению, добавить нельзя.

#44 StonerJack

StonerJack

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

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

Отправлено 12 Август 2016 - 15:25

Здравствуйте! Долго пытаюсь сделать по инструкциям в *быстром заказе* скрытие поля *Адрес* при самовывозе , но так в итоге ничего и не получилось! Идентификатор вбиваю правильный. но все равно ничего не получается. Помогите пожалуйста!

Аккаунт  SL-391169

#45 Ирина345

Ирина345

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

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

Отправлено 12 Август 2016 - 16:08

Просмотр сообщенияStonerJack (12 Август 2016 - 15:25) писал:

Здравствуйте! Долго пытаюсь сделать по инструкциям в *быстром заказе* скрытие поля *Адрес* при самовывозе , но так в итоге ничего и не получилось! Идентификатор вбиваю правильный. но все равно ничего не получается. Помогите пожалуйста!

Аккаунт  SL-391169
Здравствуйте, найдите в файле main.js
// Быстрый заказ
function quickorder(formSelector) {
// Находим форму, которую отправляем на сервер, для добавления товара в корзину
var formBlock = $($(formSelector).get(0));
// Проверка на существование формы отправки запроса на добавление товара в корзину
if(1 > formBlock.length || formBlock.get(0).tagName != 'FORM') {
alert('Не удалось найти форму добавления товара в корзину');
return false;
}
// Получаем данные формы, которые будем отправлять на сервер
var formData = formBlock.serializeArray();
// Сообщаем серверу, что мы пришли через ajax запрос
formData.push({name: 'ajax_q', value: 1});
// Так же сообщим ему, что нужно сразу отобразить форму быстрого заказа
formData.push({name: 'fast_order', value: 1});
// Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
$.ajax({
type : "POST",
cache : false,
url : formBlock.attr('action'),
data : formData,
success: function(data) {
var width = $(window).width() * 0.2;
$.fn.nyroModalManual({
				 content: data,
				 gallery: null,
				 resizable: true,
				 autoSizable: true,
				 windowResize: true,
				 width: width,
				 minHeight: 100
});
}
});
return false;
}
замените на
// Быстрый заказ
function quickorder(formSelector) {
// Находим форму, которую отправляем на сервер, для добавления товара в корзину
				 var formBlock = $($(formSelector).get(0));
// Проверка на существование формы отправки запроса на добавление товара в корзину
				 if (1 > formBlock.length || formBlock.get(0).tagName != 'FORM') {
								 alert('Не удалось найти форму добавления товара в корзину');
								 return false;
				 }
// Получаем данные формы, которые будем отправлять на сервер
				 var formData = formBlock.serializeArray();
// Сообщаем серверу, что мы пришли через ajax запрос
				 formData.push({name: 'ajax_q', value: 1});
// Так же сообщим ему, что нужно сразу отобразить форму быстрого заказа
				 formData.push({name: 'fast_order', value: 1});
// Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
				 $.ajax({
								 type: "POST",
								 cache: false,
								 url: formBlock.attr('action'),
								 data: formData,
								 success: function(data) {
												 $.fancybox({
												   maxWidth : 300,
maxHeight : 330,
fitToView : false,
width : '50%',
height : '70%',
												   autoSize : false,
																 content: data
// При изменении размера окна изменяем размер окна оформления заказа
																								 , onUpdate: function() {
																				 var w = $(window).width() * 0.8;
																				 if (w < 800) {
// Автоматический ресайз внутреннего блока fancybox-а
																								 $('.fancybox-inner').css('width', 'auto');
// Изменяем размер fancybox окна
																								 $('.fancybox-wrap').css({'width': w + 'px'});
																				 }
																				 return false;
																 }
												 });
// :
								 }
				 });
				 return false;
}

В шаблоне Быстрый заказ найдите код
	// При оформлении заказа дадим возможность зарегистрироваться пользователю
	$('#contactWantRegister').click(function(){
	  if($(this).attr("checked")) {
		$('.contactRegisterNeedElement').show();
		$('#contactEmail, #contactPassWord').addClass('required');
	  } else {
		$('.contactRegisterNeedElement').hide();
		$('#contactEmail, #contactPassWord').removeClass('required');
	  }
	});

после вставьте
$('.deliveryRadio').click(function () {console.log(123);
		var delivery = '352636';
		if ($(this).val() === delivery) {
		console.log(321);
		  $('#quickDeliveryAddress').closest('.wide').hide();
		}
		else {
		  $('#quickDeliveryAddress').show();
		}
  });


#46 StonerJack

StonerJack

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

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

Отправлено 12 Август 2016 - 16:23

Просмотр сообщенияИрина345 (12 Август 2016 - 16:08) писал:

Здравствуйте, найдите в файле main.js
// Быстрый заказ
function quickorder(formSelector) {
// Находим форму, которую отправляем на сервер, для добавления товара в корзину
var formBlock = $($(formSelector).get(0));
// Проверка на существование формы отправки запроса на добавление товара в корзину
if(1 > formBlock.length || formBlock.get(0).tagName != 'FORM') {
alert('Не удалось найти форму добавления товара в корзину');
return false;
}
// Получаем данные формы, которые будем отправлять на сервер
var formData = formBlock.serializeArray();
// Сообщаем серверу, что мы пришли через ajax запрос
formData.push({name: 'ajax_q', value: 1});
// Так же сообщим ему, что нужно сразу отобразить форму быстрого заказа
formData.push({name: 'fast_order', value: 1});
// Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
$.ajax({
type : "POST",
cache : false,
url : formBlock.attr('action'),
data : formData,
success: function(data) {
var width = $(window).width() * 0.2;
$.fn.nyroModalManual({
				 content: data,
				 gallery: null,
				 resizable: true,
				 autoSizable: true,
				 windowResize: true,
				 width: width,
				 minHeight: 100
});
}
});
return false;
}
замените на
// Быстрый заказ
function quickorder(formSelector) {
// Находим форму, которую отправляем на сервер, для добавления товара в корзину
				 var formBlock = $($(formSelector).get(0));
// Проверка на существование формы отправки запроса на добавление товара в корзину
				 if (1 > formBlock.length || formBlock.get(0).tagName != 'FORM') {
								 alert('Не удалось найти форму добавления товара в корзину');
								 return false;
				 }
// Получаем данные формы, которые будем отправлять на сервер
				 var formData = formBlock.serializeArray();
// Сообщаем серверу, что мы пришли через ajax запрос
				 formData.push({name: 'ajax_q', value: 1});
// Так же сообщим ему, что нужно сразу отобразить форму быстрого заказа
				 formData.push({name: 'fast_order', value: 1});
// Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара
				 $.ajax({
								 type: "POST",
								 cache: false,
								 url: formBlock.attr('action'),
								 data: formData,
								 success: function(data) {
												 $.fancybox({
												 maxWidth : 300,
maxHeight : 330,
fitToView : false,
width : '50%',
height : '70%',
												 autoSize : false,
																 content: data
// При изменении размера окна изменяем размер окна оформления заказа
																								 , onUpdate: function() {
																				 var w = $(window).width() * 0.8;
																				 if (w < 800) {
// Автоматический ресайз внутреннего блока fancybox-а
																								 $('.fancybox-inner').css('width', 'auto');
// Изменяем размер fancybox окна
																								 $('.fancybox-wrap').css({'width': w + 'px'});
																				 }
																				 return false;
																 }
												 });
// :
								 }
				 });
				 return false;
}

В шаблоне Быстрый заказ найдите код
// При оформлении заказа дадим возможность зарегистрироваться пользователю
$('#contactWantRegister').click(function(){
	 if($(this).attr("checked")) {
	 $('.contactRegisterNeedElement').show();
	 $('#contactEmail, #contactPassWord').addClass('required');
	 } else {
	 $('.contactRegisterNeedElement').hide();
	 $('#contactEmail, #contactPassWord').removeClass('required');
	 }
});

после вставьте
$('.deliveryRadio').click(function () {console.log(123);
	 var delivery = '352636';
	 if ($(this).val() === delivery) {
	 console.log(321);
		 $('#quickDeliveryAddress').closest('.wide').hide();
	 }
	 else {
		 $('#quickDeliveryAddress').show();
	 }
});

Спасибо за оперативный ответ, однако есть пара моментов, которые все равно некорректно работают.

1) При возврате селектора вновь на положение *доставка* форма адрес заказа не появляется.
2) Хотелось бы также убирать название *Адрес доставки заказа* ( то. что под тегами h2)

UPD. Cпасибо большое, разобрался сам!

#47 Ирина345

Ирина345

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

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

Отправлено 12 Август 2016 - 17:02

Просмотр сообщенияStonerJack (12 Август 2016 - 16:23) писал:

Спасибо за оперативный ответ, однако есть пара моментов, которые все равно некорректно работают.

1) При возврате селектора вновь на положение *доставка* форма адрес заказа не появляется.
2) Хотелось бы также убирать название *Адрес доставки заказа* ( то. что под тегами h2)
Найдите в шаблоне Быстрый заказ

 $('.deliveryRadio').click(function () {console.log(123);
				var delivery = '352636';
				if ($(this).val() === delivery) {
				console.log(321);
				  $('#quickDeliveryAddress').closest('.wide').hide();
				  $('.legend').hide();
				}
				else {
				  $('#quickDeliveryAddress').show();
				  $('.legend').show();
				}
  });


замените на

$('.deliveryRadio').click(function () {
				var delivery = '352636';
				if ($(this).val() === delivery) {
			  
				  $('#quickDeliveryAddress').closest('.wide').hide();
				  $('.legend.delivery').hide();
				}
				else {
				  $('#quickDeliveryAddress').closest('.wide').show();
				  $('.legend.delivery').show();
				}
  });
  
далее найдите

<div class="fieldset"> 
	  <h2 class="legend">Адрес доставки заказа</h2> 


замените на

 <div class="fieldset"> 
	  <h2 class="legend delivery">Адрес доставки заказа</h2> 
   


#48 StonerJack

StonerJack

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

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

Отправлено 12 Август 2016 - 17:04

Просмотр сообщенияИрина345 (12 Август 2016 - 17:02) писал:

Найдите в шаблоне Быстрый заказ

$('.deliveryRadio').click(function () {console.log(123);
var delivery = '352636';
if ($(this).val() === delivery) {
console.log(321);
$('#quickDeliveryAddress').closest('.wide').hide();
$('.legend').hide();
}
else {
$('#quickDeliveryAddress').show();
$('.legend').show();
}
});


замените на

$('.deliveryRadio').click(function () {
var delivery = '352636';
if ($(this).val() === delivery) {

$('#quickDeliveryAddress').closest('.wide').hide();
$('.legend.delivery').hide();
}
else {
$('#quickDeliveryAddress').closest('.wide').show();
$('.legend.delivery').show();
}
});

далее найдите

<div class="fieldset">
<h2 class="legend">Адрес доставки заказа</h2> 


замените на

<div class="fieldset">
<h2 class="legend delivery">Адрес доставки заказа</h2>

Спасибо вам большое за вашу работу и ваше терпение!

#49 ARGO

ARGO

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

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

Отправлено 09 Ноябрь 2018 - 17:00

Здравствуйте! Помогите реализовать выбор пунктов выдачи с картой. что-то не получается. делал на тестовой странице. скрипт скопировал и загружаю с сайта
Техническая реализация
1. Встраивание скриптом
<script type="text/javascript" src="http://chooser.dpd.ru/dpdchooser.js?nocache=1499949132826"></script> //Пример для сбрасывания cache.
<div id="dpdchooser" style="width: 800px; display: inline-block;">
</div>
<div id="console">
</div>
<script>
var chooser = new DPDChooser('dpdchooser', {
	 type: 'dpdclient', // Обязательный параметр
	 //Геопозиция:
	 address: 'Россия, Москва, Нахимовский проспект', //Адрес (Можно передавать сокращенно – только город, а можно с учетом страны, города, улицы)
	 l: 'Москва', //Адрес можно передавать короткими параметрами (город)
	 s: 'Нахимовский проспект', //Адрес можно передавать короткими параметрами (улица)
	 m: 'Крымская', //Адрес можно передавать короткими параметрами (метро)
	 g: '43.928704,56.280332', //Можно вместо адреса передавать координаты: долгота, широта (имеет бОльший приоритет, чем адрес)
		 // После загрузки данных происходит центрирование на переданной геопозиции. Если ни один пункт не попадает на карту, то карта отдаляется до 4х раз
		 // Если передан большой по площади объект для центрирования (например, вся Москва), то границы карты будут установлены так, чтобы весь объект попал в область видимости.
i: '111402' //центрирование по индексу
viewdistance: 100, // Радиус отображения пунктов в километрах вокруг указанного адреса
	 //Фильтры:
	 filter_fromh: 10, // - число время ОТ
	 filter_toh: 12, // - число время ДО
	 filter_maxweight: 10, // Вес самой тяжелой посылки (кг)
	 filter_dimmensionsum: 50, // Сумма габаритов (см)
	 filter_dimmensionmax: 30, // Максимальный габарит (см)
	 filter_wait: 1, // Ожидание на адресе доставки
	 filter_temp: 0, // Температурный режим
	 filter_cod: 0, // Наложенный платеж
	 filter_give: 0, // Выдача посылок
	 filter_take: 0, // Прием посылок
	 filter_pvz: 0, // Пункт приема и выдачи посылок
	 filter_postamat: 0, // Постамат
//Возможность выбора пункта.
choose: 1, //Если не передано - виджет работает только для просмотра, без кнопки «Выбрать»
width: '700px', // Можно указать css ширину контейнера. Пример: 500px, 100%, 50em
mapHeight: '500', // Можно указать высоту карты в пикселях. Пример: 500.
//ВНИМАНИЕ!!! Высота касается только карты, списка пунктов и детализации. Это НЕ высота всего контейнера виджета.
//Задать высоту виджета нельзя, т.к. детализация может "прыгнуть" вниз из-за нехватки места в ширину.
fullscreen: true, // Задает width = 100% и mapHeight в зависимости от window.innerHeight. Позволяет виджету занять всё пространство контейнера, если достаточно места. Должно быть не менее 400px в высоту и не менее 500px в ширину.
	 //Авторизация.
sid: 'индификатор',
	 /*
		 Чтобы получить sid и скрыть свои авторизационные данные из HTML страницы нужно сделать следующее:
1. Получить уникальный ключ клиента – для этого необходимо зайти в личный кабинет(MyDPD) по адресу http://www.dpd.ru/ols/order/personal/integrationKey.do2 указав свой логин и пароль. На странице нужно нажать на кнопку «отправить» и ключ будет выслан на указанный e-mail. Если у Вас возникли трудности с получением ключа, обращайтесь в службу поддержки по адресу itcustomers@dpd.ru;
2. Послать серверный запрос на http://chooser.dpd.ru/getsid.php?icn=<ваш_клиентский_номер>&key=<ваш_ключ>		
3. Сервер отдаст строчку SID, которую нужно подставить в параметр sid виджета.
Эту строчку можно получить единожды. Не обязательно слать запрос каждый раз перед показом виджета на странице.
	 */
});
chooser.onError(function (error, code) {
	 document.getElementById('console').innerHTML = 'Ошибка чузера (' + error + ') код ' + code + '<br>';
	 /*
		 Возможные коды ошибок:
		 -2: Переданный контейнер не существует
		 -1: Не передан контейнер
		 1: Ошибка валидации
		 2: Не удалось определить адрес.
		 3: Для данного города нет пунктов.
		 4: Ошибка авторизации.
		 5: Недостаточно места для полного экрана.
		 */ });
chooser.onReady(function (address) {
	 document.getElementById('console').innerHTML = 'Чузер готов. Адрес: ' + address + '<br>';
});
chooser.onChoose(function (dep) {
	 document.getElementById('console').innerHTML = 'Выбран пункт ' + dep;
});
</script>


#50 ARGO

ARGO

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

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

Отправлено 09 Ноябрь 2018 - 17:09

собственно скрипт загрузил <script type="text/javascript" src="https://мой домен.ru/dpdchooser.js"></script>

#51 ac-dream

ac-dream

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

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

Отправлено 28 Сентябрь 2020 - 14:52

Здравствуйте!
Не могу найти, где изменить цвет шрифта для итоговой суммы заказа на последнем шаге. Очевидно, что задан белый цвет шрифта: СКРИН http://joxi.ru/Q2KaWOQUvg3nwr

#52 M1STERE0

M1STERE0

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

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

Отправлено 28 Сентябрь 2020 - 15:38

Просмотр сообщенияac-dream (28 Сентябрь 2020 - 14:52) писал:

Здравствуйте!
Не могу найти, где изменить цвет шрифта для итоговой суммы заказа на последнем шаге. Очевидно, что задан белый цвет шрифта: СКРИН http://joxi.ru/Q2KaWOQUvg3nwr

Здравствуйте! В шаблоне main.css найдите код
.laststage{padding:4px 12px; color:white;}

и замените цвет на Ваш

#53 status321

status321

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

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

Отправлено 07 Июнь 2023 - 21:09

1

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

  • 1.png


#54 Vaccina

Vaccina

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

  • Модераторы
  • 24 353 сообщений

Отправлено 08 Июнь 2023 - 02:04

Просмотр сообщенияstatus321 (07 Июнь 2023 - 21:09) писал:

1

Здравствуйте.

По данному вопросу ответила вам по ссылке ниже:
https://forum.storel..._80#entry291859





Темы с аналогичным тегами самовывоз, оформление заказа

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

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