Настройка виджета
Настройка серверного файла service.php
Серверный файл service.php всегда должен быть расположен на вашем сервере в директории виджета по пути scripts/service.php
.
Необходимо прописать в service.php id
партнера для авторизации при запросах виджета к серверу. Сделать это нужно в самом начале класса IVoltService:
class IVoltService
{
protected $sPartnerKey = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; //Partner API key
protected $sURL = 'https://voltmarket.ru/ipol/widjet/'; //URL запросов API
...
Пример создания виджета с указанием всех настроек
<p>Пример инициализации виджета с указанием всех параметров виджета</p>
<a href='javascript:void(0);' onclick='widjet.open()'>Показать ПВЗ</a>
<div id="forpvz" style="height:600px;"></div>
<script type="text/javascript">
var widjet = new IVOLTWidjet({
yandex_key: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', //ключ API Я.Карт
showWarns: true,
showErrors: true,
showLogs: true,
hideMessages: false,
path: 'https://voltmarket.ru/ipol/widjet/scripts/',
servicepath: 'https://your-site.here/widjet/scripts/service.php', //ссылка на файл service.php на вашем сайте
templatepath: 'https://voltmarket.ru/ipol/widjet/scripts/template.php',
choose: true,
filter: true,
popup: true,
defaultCity: 'Уфа',
link: false,
hidedelt: false,
products: [7105],
onReady: onReady,
onChoosePVZ: onChoosePVZ,
onChooseCourier: onChooseCourier,
onCalculate: onCalculate
});
function onReady() {
console.log('ready');
}
function onChoosePVZ(wat) {
console.log('chosen', wat);
console.log(
'Выбран пункт выдачи заказа ' + wat.id + "\n" +
'Id доставки ' + wat.deliveryId + "\n" +
'Code службы доставки ' + wat.deliveryCode + "\n" +
'Code профиля доставки ' + wat.deliveryProfile + "\n" +
'Название доставки ' + wat.deliveryName + "\n" +
'цена ' + wat.price + "\n" +
'срок ' + wat.term + "\n" +
'город ' + wat.cityName + ' (код: ' + wat.city + ')'
);
}
function onChooseCourier(wat) {
console.log('chosenCourier', wat);
console.log(
'Выбрана доставка курьером в город ' + wat.city + "\n" +
'Id доставки ' + wat.deliveryId + "\n" +
'Code службы доставки ' + wat.deliveryCode + "\n" +
'Code профиля доставки ' + wat.deliveryProfile + "\n" +
'Название доставки ' + wat.deliveryName + "\n" +
'цена ' + wat.price + "\n" +
'срок ' + wat.term
);
}
function onCalculate(wat) {
console.log('calculated', wat);
}
</script>
Пример инициализации виджета с указанием всех параметров можно увидеть в файле example3-1.html
Описание серверных настроек виджета
showWarns
Значение: true
/ false
Значение по умолчанию: true
Если установлено true
– выводит в консоль браузера предупреждения о некритичных ошибках работы виджета.
showErrors
Значение: true
/ false
Значение по умолчанию: true
Если установлено true
– выводит в консоль браузера предупреждения о критических ошибках работы виджета.
hideMessages
Значение: true
/ false
Значение по умолчанию: false
Единый ключ для отключения всех оповещений виджета. Выставление в true
равносильно выставлению всех вышеуказанных настроек оповещения в false
.
path
Значение: string
Значение по умолчанию: директория scripts
относительно файла widjet.js
.
Необходимо устанавливать путь к скриптам виджета, если они лежат отдельно от загрузчика widjet.js
. Иначе можно оставить пустым.
Тогда, если у вас файл widjet.js расположен по адресу http://yoursite.net/scripts/widget/widjet.js
, то переменная будет указывать на адрес http://yoursite.net/scripts/widget/scripts/
templatepath
Значение: string
Значение по умолчанию: {path}/template.php
Путь к шаблону виджета, если он лежит отдельно от загрузчика widjet.js
. Иначе можно оставить пустым.
servicepath
Значение: string
Значение по умолчанию: {path}/service.php
Путь к php файлу для расчетов виджета, если он лежит отдельно от загрузчика widjet.js
. Иначе можно оставить пустым.
template
Значение: string
Значение по умолчанию: default
Шаблон виджета по-умолчанию. Сейчас предусмотрен только один шаблон default
.
optimalDelivery
Значение: true
/ false
Значение по умолчанию: true
По-умолчанию происходит отбор оптимальных профилей доставки и самовывоза из всех доступных служб доставки для текущих параметров. Эти оптимальные профили будут показаны в блоке доставки. Отбор происходит по стоимости. При отключенной опции в блок доставки выводятся все доступные службы доставки с разбиением по профилям.
Описание настроек отображения виджета
choose
Значение: true
/ false
Значение по умолчанию: true
Управление кнопкой «Выбрать» в описании ПВЗ. Если выставлено в false
– кнопка не будет отображаться, что подходит для инфовиджета в разделе «Доставка». Если true
– кнопка показывается с возможностью подписаться на выбор ПВЗ с помощью события onChoose
.
Пример сокрытия кнопки выбора ПВЗ указан в файле example3-3-1.html
link
Значение: id
элемента
Значение по умолчанию: false
Если опция задана (не false
) – то виджет считается статичным (всегда располагается на странице). Значением опции должен быть id
того тега, в который будет помещен виджет. Если опция не задана – виджет автоматически открывается на весь экран (если не указана опция popup
).
Почти во всех примерах было задано значение этого параметра, в примере example3-3-2.html мы установили значение этому параметру = false
.
popup
Значение: true
/ false
Значение по умолчанию: false
Если опция задана (true
) – виджет считается всплывающим, и отображается только через метод open
.
Работа этого параметра отображена в файле example3-3-3.html
hidedelt
Значение: true
/ false
Значение по умолчанию: false
Если опция задана (true
) – то скрывается панель, на которой отображены варианты доставки.
Работа этого параметра отображена в файле example3-3-6.html
filter
Значение: true
/ false
Значение по умолчанию: false
Если опция задана (true
) – то показывает панель фильтра, на которой отображены некоторые возможные варианты фильтрации ПВЗ: по сроку доставки - сегодня или завтра, по оплате картой.
Настройки доставки
defaultCity
Значение: string
, название города, также разрешено использование значение auto
, чтобы автоматически определить город клиента средствами Яндекса и отобразить его на карте.
Значение по умолчанию: Москва
Город, который будет отображен на карте при старте виджета и на котором будут загружены пункты выдачи заказов.
Пример использования параметра defaultCity
со значением auto
отображен в файле example3-4-1.html
products
Значение: object
/ false
Значение по умолчанию: false
Список ID
товаров для расчета стоимости и сроков доступных служб доставок. Задается в формате массива: [7105, 7106]
. Если не задан или установлено false
, то расчет произведен не будет.
Товары с параметрами доступны в файлах экспорта.