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


Интеграция Модуля Выбора Пункта Выдачи Boxberry


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

#21 Ирина345

Ирина345

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

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

Отправлено 27 Январь 2017 - 15:50

Просмотр сообщенияEgik (27 Январь 2017 - 15:17) писал:

Здравствуйте.Аккаунт SL-205650
321543 - идентификатор доставки, не срабатывает
Найдите в файле main.js код
  $('.deliveryRadio').click(function(){ 
	var ID = $('input[name="form[delivery][id]"]:checked').val(); 
	$('.payment').hide();
	$('.payment[rel="' + ID + '"]').show();
	$('.payment[rel="' + ID + '"]').find('input:first').attr('checked', true);
  });

после вставьте
$(function() {
$('.deliveryRadio').click(function() {
				 if ($(this).val() === '321543') {
								  boxberry.open(function(result) {
																$('#quickDeliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
																							  });
								} else {
								  $('#deliveryAddress').html('');
								}
});
});


#22 Egik

Egik

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

  • Пользователи
  • PipPipPipPip
  • 659 сообщений
  • ГородМосква

Отправлено 27 Январь 2017 - 16:43

Просмотр сообщенияИрина345 (27 Январь 2017 - 15:50) писал:

Найдите в файле main.js код
Не работает. Я правильно понимаю должно открываться окно с выбором пункта?

#23 Ирина345

Ирина345

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

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

Отправлено 27 Январь 2017 - 16:51

Просмотр сообщенияEgik (27 Январь 2017 - 16:43) писал:

Не работает. Я правильно понимаю должно открываться окно с выбором пункта?
Очистите кеш браузера. На данный момент у Вас отображается виджет.

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

  • QIP Shot - Screen 1095.png


#24 VarimSamogon

VarimSamogon

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

  • Пользователи
  • PipPipPip
  • 80 сообщений
  • ГородМытищи

Отправлено 11 Апрель 2017 - 17:36

И я туда же...не понял!
Что в моём случае не так?
Ссылку на скрипт в head вставил...

Затем в нужном месте на сайте магазина вам необходимо поставить ссылку:
<a href="#" onclick="boxberry.open(callback_function); return false">Выбрать ПВЗ</a>,
по событию «onclick» которой должна вызываться функция «boxberry.open» из
подключенного ранее файла. В эту функцию обязательно должен передаться
параметр «callback-функция», которая и будет принимать массив с выбранным ПВЗ.

И после этого ошибка js вылетает...
Как сделать так, чтобы на странице товара была кнопка "Рассчитать доставку" исходя из параметров (габаритов и веса) товара?

#25 Stasya

Stasya

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

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

Отправлено 17 Апрель 2017 - 18:02

Просмотр сообщенияVarimSamogon (11 Апрель 2017 - 17:36) писал:

И я туда же...не понял!
Что в моём случае не так?
Ссылку на скрипт в head вставил...

Затем в нужном месте на сайте магазина вам необходимо поставить ссылку:
<a href="#" onclick="boxberry.open(callback_function); return false">Выбрать ПВЗ</a>,
по событию «onclick» которой должна вызываться функция «boxberry.open» из
подключенного ранее файла. В эту функцию обязательно должен передаться
параметр «callback-функция», которая и будет принимать массив с выбранным ПВЗ.

И после этого ошибка js вылетает...
Как сделать так, чтобы на странице товара была кнопка "Рассчитать доставку" исходя из параметров (габаритов и веса) товара?
Здравствуйте. Простите за длительное ожидание ответа. Скажите, пожалуйста, для какого варианта доставки необходимо установить данный код?

#26 VarimSamogon

VarimSamogon

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

  • Пользователи
  • PipPipPip
  • 80 сообщений
  • ГородМытищи

Отправлено 18 Апрель 2017 - 15:46

Просмотр сообщенияStasya (17 Апрель 2017 - 18:02) писал:

Здравствуйте. Простите за длительное ожидание ответа. Скажите, пожалуйста, для какого варианта доставки необходимо установить данный код?

ТК Boxberry 381082

#27 Stasya

Stasya

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

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

Отправлено 20 Апрель 2017 - 15:38

Просмотр сообщенияVarimSamogon (18 Апрель 2017 - 15:46) писал:

ТК Boxberry 381082
Здравствуйте. В шаблоне Быстрый заказ найдите строку
<div class="currentDeliveryDescription"></div>
и сразу после нее вставьте блок
<a href="#" class="punktPVZ" style="display:none">Выбрать ПВЗ</a>
Далее найдите блок
// Скрипты для Быстрого заказа
function quickOrderScripts(){
$(document).ready(function(){

var ID = $('input[name="form[delivery][id]"]:checked').val();

$('.quick_order_payment').hide();
$('.quick_order_payment[rel="' + ID + '"]').show();
$('.quick_order_payment[rel="' + ID + '"]').find('input:first').prop('checked', true);

$('.deliveryRadio').click(function(){
var ID = $('input[name="form[delivery][id]"]:checked').val();
$('.quick_order_payment').hide();
$('.quick_order_payment[rel="' + ID + '"]').show();
$('.quick_order_payment[rel="' + ID + '"]').find('input:first').prop('checked', true);
});
и замените его на
// Скрипты для Быстрого заказа
function quickOrderScripts(){
$(document).ready(function(){

var ID = $('input[name="form[delivery][id]"]:checked').val();

$('.quick_order_payment').hide();
$('.quick_order_payment[rel="' + ID + '"]').show();
$('.quick_order_payment[rel="' + ID + '"]').find('input:first').prop('checked', true);

$('.deliveryRadio').click(function(){
var ID = $('input[name="form[delivery][id]"]:checked').val();
$('.quick_order_payment').hide();
$('.quick_order_payment[rel="' + ID + '"]').show();
$('.quick_order_payment[rel="' + ID + '"]').find('input:first').prop('checked', true);

if ($(this).val() === 'Идентификатор доставки') {
	 $('.punktPVZ').show();
	 $('.punktPVZ').click(function(){
	 boxberry.open(function(result) {
		 $('#quickDeliveryAddress').html(result.name + ' (' + result.id + ') ' + result.address);
	 });
	 })
} else {
	 $('.punktPVZ').hide();
	 $('#quickDeliveryAddress').html('');
}
});
Вместо Идентификатор доставки необходимо вставить идентификатор доставки, для которой необходимо вывести данный виджет. Идентификатор Вы можете посмотреть в разделе Настройки-> доставка, в редактировании данной доставки, в строке браузера. Скриншот для примера прикрепила

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

  • Screenshot_265.jpg


#28 advance07

advance07

    Новичок

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

Отправлено 29 Ноябрь 2017 - 20:01

Просмотр сообщенияStasya (15 Декабрь 2016 - 13:05) писал:

Здравствуйте. Простите за долгое ожидание ответа. Данный скрипт Вам необходимо разместить следующим образом.
В шаблоне HTML найдите строку
<script type="text/javascript" src="{ASSETS_JS_PATH}main.js"></script>
и сразу после нее вставьте
<script type="text/javascript" src="//glavpunkt.ru/js/punkts-widget/glavpunkt.js"> </script>
Далее в шаблоне Оформление заказа  найдите строку
<p class="fnt14n"><span>{order_delivery.NAME}</span></p>
и сразу после нее вставьте блок
{% IF order_delivery.ID = идентификатор доставки %}
<a href="#" onclick="glavpunkt.openMap(selectPunkt); return false;">Выбрать пункт выдачи на карте</a>
// Определить свою функцию для обработки выбранного пункта:
<script type="text/javascript">
function selectPunkt(punktInfo) {
console.log("Город: " + punktInfo.city);
console.log("ID пункта выдачи: " + punktInfo.id);
console.log("Название (метро или адрес): " + punktInfo.name);
console.log("Адрес: " + punktInfo.address);
console.log("Телефон: " + punktInfo.phone);
console.log("Email (только для Санкт-Петербурга): " + punktInfo.email);
console.log("График работы: " + punktInfo.work_time);
}
</script>
		 {% ENDIF %}
где Идентификатор доставки необходимо заменить на реальный идентификатор, который Вы можете посмотреть в разделе Настройки-> Доставка на странице редактирования данной доставки в строке браузера (цифры после последнего / ). Скриншот для примера прикрепила.

Добрый день,

Сделал все в точности, как описано выше, но виджет не заработал SL-414365. Подскажите, пожалуйста, что нужно поправить.

Спасибо.

#29 advance07

advance07

    Новичок

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

Отправлено 10 Декабрь 2017 - 15:01

Просмотр сообщенияadvance07 (29 Ноябрь 2017 - 20:01) писал:

Добрый день,

Сделал все в точности, как описано выше, но виджет не заработал SL-414365. Подскажите, пожалуйста, что нужно поправить.

Спасибо.
Попробовал в другом шаблоне и у меня получилось (SL-409577). Но при выборе пункта выдачи на всплывающей карте адрес выбранного пункта выдачи не подставляется в поля адреса доставки. Их нужно прописывать вручную. Можно ли это исправить?

#30 Stasya

Stasya

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

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

Отправлено 11 Декабрь 2017 - 15:57

Просмотр сообщенияadvance07 (10 Декабрь 2017 - 15:01) писал:

Попробовал в другом шаблоне и у меня получилось (SL-409577). Но при выборе пункта выдачи на всплывающей карте адрес выбранного пункта выдачи не подставляется в поля адреса доставки. Их нужно прописывать вручную. Можно ли это исправить?
Здравствуйте.
Ак. 414365
Обнаружила у Вас JS-ошибку. Она вызвана двойным подключением jquery разных версий. Чтобы это исправить в шаблоне hTML найдите и удалите код
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
Что касаемо настройки выбора пунктов выдачи, то произвела Вам изменения согласно инструкции выше. Если Вы удалите выше указанный  код (из-за которого возникает ошибка), то виджет начнет работать.  

Ак. 409577
В шаблоне Быстрый заказ найдите блок
console.log("График работы: " + punktInfo.work_time);
и сразу после него добавьте код
$('#quickDeliveryCity').val(punktInfo.city);
$('#quickDeliveryAddress').text(punktInfo.city + ', ' + punktInfo.name + ', ' + punktInfo.address );


#31 spaykus

spaykus

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

  • Пользователи
  • PipPipPip
  • 128 сообщений
  • ГородУфа

Отправлено 22 Июль 2018 - 20:58

При выборе доставки сразу открывается окно с картой выдачи доставки , при нажатии на " выбрать отделение" адрес не подставляется а нужно чтоб подставлялся. SL-454806

#32 spaykus

spaykus

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

  • Пользователи
  • PipPipPip
  • 128 сообщений
  • ГородУфа

Отправлено 26 Июль 2018 - 16:29

Так что ???

#33 ОльгаВикторовна

ОльгаВикторовна

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

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

Отправлено 11 Июнь 2020 - 19:40

Установила виджет Боксберри. При выборе пункта выдачи на всплывающей карте адрес выбранного пункта выдачи не подставляется в поля адреса доставки. Можно ли это исправить? Аккаунт SL-305821

#34 ОльгаВикторовна

ОльгаВикторовна

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

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

Отправлено 15 Июнь 2020 - 14:11

Просмотр сообщенияОльгаВикторовна (11 Июнь 2020 - 19:40) писал:

Установила виджет Боксберри. При выборе пункта выдачи на всплывающей карте адрес выбранного пункта выдачи не подставляется в поля адреса доставки. Можно ли это исправить? Аккаунт SL-305821

Ответьте, пожалуйста! Сайт выдаёт ошибки.

#35 support 2.0

support 2.0

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

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

Отправлено 16 Июнь 2020 - 13:31

Просмотр сообщенияОльгаВикторовна (15 Июнь 2020 - 14:11) писал:

Ответьте, пожалуйста! Сайт выдаёт ошибки.
Добрый день! Приносим извинения за долгий ответ. Сейчас вижу, что у Вас на сайте всё работает:
ИзображениеИзображение

Также можно скрыть ввод Города, улицы и дома при выборе этого способа доставки. Подобный вопрос рассматривался в этой ветке форума. Если Вам этот вариант подходит, напишите, поможем реализовать

#36 ОльгаВикторовна

ОльгаВикторовна

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

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

Отправлено 16 Июнь 2020 - 13:52

Просмотр сообщенияsupport 2.0 (16 Июнь 2020 - 13:31) писал:

Добрый день! Приносим извинения за долгий ответ. Сейчас вижу, что у Вас на сайте всё работает:
ИзображениеИзображение

Также можно скрыть ввод Города, улицы и дома при выборе этого способа доставки. Подобный вопрос рассматривался в этой ветке форума. Если Вам этот вариант подходит, напишите, поможем реализовать

Спасибо, да, это заработало. Скрыть ввод города, улицы и дома при выбора этого способа доставки — это то, что нужно. Подскажите как реализовать, пожалуйста! Я пробовала вставить код из ветки, на которую вы сослались, но у меня что-то не срабатывает.

#37 support 2.0

support 2.0

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

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

Отправлено 16 Июнь 2020 - 14:41

Просмотр сообщенияОльгаВикторовна (16 Июнь 2020 - 13:52) писал:

Спасибо, да, это заработало. Скрыть ввод города, улицы и дома при выбора этого способа доставки — это то, что нужно. Подскажите как реализовать, пожалуйста! Я пробовала вставить код из ветки, на которую вы сослались, но у меня что-то не срабатывает.
На сколько я понимаю, Вы сейчас вносите изменения в файле main.js. Я не смогу проверить как работает Ваш код, если мы будем вносить изменения одновременно. Поэтому я напишу инструкцию, которая должна сработать:
в конце файле main.js вставьте
//Меняем поля на шаге выбора доставки
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryZipCode').closest('tr').show();
$('#quickDeliveryCity').closest('tr').show();
$('#quickDeliveryAddress').closest('tr').show();
$('#deliveryConvenientDate').closest('tr').show();
// Для Боксберри. Зона 1. скрываем адрес доставки и оставляем комментарий
if(current_id === '306958') {
  $('#quickDeliveryZipCode').closest('tr').hide();
  $('#quickDeliveryCity').closest('tr').hide();
  $('#quickDeliveryAddress').closest('tr').hide();
  $('#deliveryConvenientDate').closest('tr').hide();
}
// Для Боксберри. Зона 2. скрываем адрес доставки и оставляем комментарий
else if(current_id === '306960') {
  $('#quickDeliveryZipCode').closest('tr').hide();
  $('#quickDeliveryCity').closest('tr').hide();
  $('#quickDeliveryAddress').closest('tr').hide();
  $('#deliveryConvenientDate').closest('tr').hide();
}
// Для Боксберри. Зона 3. скрываем адрес доставки и оставляем комментарий
else if(current_id === '306961') {
  $('#quickDeliveryZipCode').closest('tr').hide();
  $('#quickDeliveryCity').closest('tr').hide();
  $('#quickDeliveryAddress').closest('tr').hide();
  $('#deliveryConvenientDate').closest('tr').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});


#38 ОльгаВикторовна

ОльгаВикторовна

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

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

Отправлено 16 Июнь 2020 - 16:18

Просмотр сообщенияsupport 2.0 (16 Июнь 2020 - 14:41) писал:

На сколько я понимаю, Вы сейчас вносите изменения в файле main.js. Я не смогу проверить как работает Ваш код, если мы будем вносить изменения одновременно. Поэтому я напишу инструкцию, которая должна сработать:
в конце файле main.js вставьте
//Меняем поля на шаге выбора доставки
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryZipCode').closest('tr').show();
$('#quickDeliveryCity').closest('tr').show();
$('#quickDeliveryAddress').closest('tr').show();
$('#deliveryConvenientDate').closest('tr').show();
// Для Боксберри. Зона 1. скрываем адрес доставки и оставляем комментарий
if(current_id === '306958') {
$('#quickDeliveryZipCode').closest('tr').hide();
$('#quickDeliveryCity').closest('tr').hide();
$('#quickDeliveryAddress').closest('tr').hide();
$('#deliveryConvenientDate').closest('tr').hide();
}
// Для Боксберри. Зона 2. скрываем адрес доставки и оставляем комментарий
else if(current_id === '306960') {
$('#quickDeliveryZipCode').closest('tr').hide();
$('#quickDeliveryCity').closest('tr').hide();
$('#quickDeliveryAddress').closest('tr').hide();
$('#deliveryConvenientDate').closest('tr').hide();
}
// Для Боксберри. Зона 3. скрываем адрес доставки и оставляем комментарий
else if(current_id === '306961') {
$('#quickDeliveryZipCode').closest('tr').hide();
$('#quickDeliveryCity').closest('tr').hide();
$('#quickDeliveryAddress').closest('tr').hide();
$('#deliveryConvenientDate').closest('tr').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});
Спасибо! Я вставила код, но что-то не заработало. Подскажите, пожалуйста, что не так

#39 Vaccina

Vaccina

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

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

Отправлено 02 Июль 2020 - 00:21

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

Перепроверьте пожалуйста, сейчас у вас все корректно работает и поля адреса доставки скрыты:
Screenshot(5).png

#40 d9661288038

d9661288038

    Новичок

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

Отправлено 03 Октябрь 2020 - 08:37

Здравствуйте, интернет-магазин pricel.storeland.ru

При выборе доставки добился вывода виджета, однако когда пункт выбирается ничего не происходит

Сумма доставки не рассчитывается, просто закрывается окно боксберри.

Что делать?




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

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