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


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


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

#1 tooann

tooann

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

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

Отправлено 09 Октябрь 2015 - 11:23

Добрый день. Не удается подключить модуль выбора пункта выдачи от боксберри. Попробовала использовать коды из аналогичной темы http://forum.storela...рация-boxberry/ . Никаких действий не происходит. Имеющиеся инструкции прилагаю.

В конце файла main.js установлен следующий код  http://forum.storela...20#entry208717.
Пробовала и без него, все равно ничего не меняется. Жду помощи.   Шаблон Пластик, аккаунт SL-129160

#2 MikDark

MikDark

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

  • Модераторы
  • 6 468 сообщений

Отправлено 09 Октябрь 2015 - 13:11

Просмотр сообщенияtooann (09 Октябрь 2015 - 11:23) писал:

Добрый день. Не удается подключить модуль выбора пункта выдачи от боксберри. Попробовала использовать коды из аналогичной темы http://forum.storela...рация-boxberry/ . Никаких действий не происходит. Имеющиеся инструкции прилагаю.

В конце файла main.js установлен следующий код  http://forum.storela...20#entry208717.
Пробовала и без него, все равно ничего не меняется. Жду помощи.   Шаблон Пластик, аккаунт SL-129160

Уточните, система боксберри не выдает, какого именно код не работает?

#3 tooann

tooann

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

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

Отправлено 09 Октябрь 2015 - 16:13

Нет. Я добавила коды, при попытке заказа при выборе варианта доставки боксберри, ничего не происходит.  Все как и было раньше.

#4 Vaccina

Vaccina

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

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

Отправлено 10 Октябрь 2015 - 01:47

Добавьте пожалуйста номер аккаунта в профиль форума.

В main.js найдите:
$(function() {
$(document).on('click', '.deliveryRadio', function() {
	 if ($(this).val() === '315229') {
		 boxberry.open(function(result) {
			 $('#deliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
		 });
	 } else {
		 $('#deliveryAddress').html('');
	 }
});
});

замените на:
$(document).ready(function(){
$('.deliveryRadio').click(function() {
	 if ($(this).val() === '315229') {
		 boxberry.open(function(result) {
			 $('#deliveryAddress').html(result.name + ' (' + result.id + ') ' + result.address);
		 });
	 } else {
		 $('#deliveryAddress').html('');
	 }
});
});

В вашей дизайн теме более старая версия jquery от чего некоторые функции были недоступны.

#5 tooann

tooann

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

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

Отправлено 10 Октябрь 2015 - 13:20

Спасибо за ответ, очень помогли.  Работает во всех браузерах кроме Internet Explorer. Там открывается окно с выбором, но карта не загружается, с чем это может быть связано?

#6 Vaccina

Vaccina

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

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

Отправлено 13 Октябрь 2015 - 01:06

В шаблоне HTML попробуйте удалить следующую строку:
<meta http-equiv="X-UA-Compatible" content="IE=7" />


#7 tooann

tooann

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

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

Отправлено 14 Октябрь 2015 - 10:38

Спасибо, заработало.

#8 tooann

tooann

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

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

Отправлено 08 Декабрь 2016 - 09:03

Здравствуйте.Необходимо установить виджет выбора пункта выдачи в оформление заказа.

Инструкция такая:
// Добавьте следующий код в шапку сайта
<script type="text/javascript" src="//glavpunkt.ru/js/punkts-widget/glavpunkt.js"> </script>

// Вставить ссылку для открытия виджета:
<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>

Куда это нужно вставить?

#9 Stasya

Stasya

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

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

Отправлено 15 Декабрь 2016 - 13:05

Просмотр сообщенияtooann (08 Декабрь 2016 - 09:03) писал:

Здравствуйте.Необходимо установить виджет выбора пункта выдачи в оформление заказа.

Инструкция такая:
// Добавьте следующий код в шапку сайта
<script type="text/javascript" src="//glavpunkt.ru/js/punkts-widget/glavpunkt.js"> </script>

// Вставить ссылку для открытия виджета:
<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>

Куда это нужно вставить?

Здравствуйте. Простите за долгое ожидание ответа. Данный скрипт Вам необходимо разместить следующим образом.
В шаблоне 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 %}
где Идентификатор доставки необходимо заменить на реальный идентификатор, который Вы можете посмотреть в разделе Настройки-> Доставка на странице редактирования данной доставки в строке браузера (цифры после последнего / ). Скриншот для примера прикрепила.

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

  • Screenshot_54.jpg


#10 tooann

tooann

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

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

Отправлено 15 Декабрь 2016 - 22:49

Спасибо за ответ. Виджет работает. как сделать так что бы адрес прописывался в поле- адрес доставки?сейчас он нигде не прописывается.

#11 tooann

tooann

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

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

Отправлено 17 Декабрь 2016 - 06:57

Жду вашего ответа. Так же хотелось бы что бы при выборе варианта - доставка до ПВЗ, карта открывалась автоматически. Сейчас, после выбора, что бы попасть в карту необходимо дополнительно нажать- выбрать пункт выдачи на карте.

#12 Stasya

Stasya

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

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

Отправлено 28 Декабрь 2016 - 15:17

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

Спасибо за ответ. Виджет работает. как сделать так что бы адрес прописывался в поле- адрес доставки?сейчас он нигде не прописывается.

Просмотр сообщенияtooann (17 Декабрь 2016 - 06:57) писал:

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

#13 tooann

tooann

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

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

Отправлено 17 Январь 2017 - 12:13

Спасибо, все работает, но появился один нюанс. У меня есть 2 способа доставки и соответственно вставлено 2 виджета с разными городами Москва и Спб.  Когда я выбираю сначала спб, показывается карта питера, если потом поменять способ доставки на Москву, то так же показывается карта питера.  И аналогично, если сразу выбрать Москву, то показывается карта Москвы, если потом перейти на Питер, карта Москвы остается.
И еще вопрос, очень долго грузится карта, можно с этим что-то сделать?

#14 explosive

explosive

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

  • Пользователи
  • PipPipPip
  • 114 сообщений
  • ГородСанкт-Петербург

Отправлено 25 Январь 2017 - 12:08

Добрый день, помогите, плз и мне интегрировать с Boxberry, сайт nitkaspb.ru

Способ доставки: Пункты выдачи в других крупных городах России 331206

Уже сделал на сайте:

В HTML: <script type="text/javascript" src="http://points.boxber...y.js"></script>

В main.js:

$(function() {
  $(document).on('click', '.deliveryRadio', function() {
        if ($(this).val() === '331206') {
          boxberry.open(function(result) {
                $('#deliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
          });
        } else {
          $('#deliveryAddress').html('');
        }
  });
});

#15 Ирина345

Ирина345

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

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

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

Просмотр сообщенияexplosive (25 Январь 2017 - 12:08) писал:

Добрый день, помогите, плз и мне интегрировать с Boxberry, сайт nitkaspb.ru

Способ доставки: Пункты выдачи в других крупных городах России 331206

Уже сделал на сайте:

В HTML: <script type="text/javascript" src="http://points.boxber...y.js"></script>

В main.js:

$(function() {
  $(document).on('click', '.deliveryRadio', function() {
if ($(this).val() === '331206') {
  boxberry.open(function(result) {
$('#deliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
  });
} else {
  $('#deliveryAddress').html('');
}
  });
});
Здравствуйте, найдите в файле main.js код
$(function() {
  $(document).live('click', '.deliveryRadio', function() {
		if ($(this).val() === '331206') {
		  boxberry.open(function(result) {
				$('#deliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
				console.log(213);
		  });
		} else {
		  $('#deliveryAddress').html('');
		}
  });
});

замените на
$(function() {
$(document).ready(function(){
$('.deliveryRadio').click(function() {
	 if ($(this).val() === '331206') {
		  boxberry.open(function(result) {
				$('#deliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
				console.log(213);
		  });
		} else {
		  $('#deliveryAddress').html('');
		}
});
});


#16 Egik

Egik

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

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

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

Здравствуйте. Аккаунт SL-205650
Какую инструкцию использовать? и что куда ставить.

#17 tooann

tooann

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

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

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

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

Спасибо, все работает, но появился один нюанс. У меня есть 2 способа доставки и соответственно вставлено 2 виджета с разными городами Москва и Спб.  Когда я выбираю сначала спб, показывается карта питера, если потом поменять способ доставки на Москву, то так же показывается карта питера.  И аналогично, если сразу выбрать Москву, то показывается карта Москвы, если потом перейти на Питер, карта Москвы остается.
И еще вопрос, очень долго грузится карта, можно с этим что-то сделать?
Скажите, пожалуйста, как решить мой вопрос.

#18 Ирина345

Ирина345

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

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

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

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

Здравствуйте. Аккаунт SL-205650
Какую инструкцию использовать? и что куда ставить.
здравствуйте, Вам необходимо зарегистрировать сайт или заключить договор с boxberry, далее найдите в шаблоне hTML код
</head>
далее перед ним вставьте
<script type="text/javascript" src="http://points.boxberry.ru/js/boxberry.js"></script>

далее вставьте
код в файл main.js
$(function() {
$(document).ready(function(){
$('.deliveryRadio').click(function() {
		 if ($(this).val() === '289241') {
				  boxberry.open(function(result) {
								$('#deliveryAddress').html(result.name + '(' + result.id + ') ' + result.address);
								console.log(213);
				  });
				} else {
				  $('#deliveryAddress').html('');
				}
});
});

где 289241 идентификатор способа доставки.

Идентификатор можно посмотреть следующим образом - перейдите в раздел Найстройка -> Доставка и выберите способ доставки. В адресной строке браузера можно будет увидеть адрес вида /admin/settings_delivery_edit/273980, где 273980 это и есть идентификатор способа доставки.

#19 Ирина345

Ирина345

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

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

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

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

Скажите, пожалуйста, как решить мой вопрос.
Здравствуйте, к сожалению поочередно выводить пункты Москвы и СПБ не получиться, так как установленный виджет это не позволяет осуществить.

#20 Egik

Egik

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

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

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

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

здравствуйте, Вам необходимо зарегистрировать сайт или заключить договор с boxberry
Здравствуйте.Аккаунт SL-205650
321543 - идентификатор доставки, не срабатывает




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

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