Изменения документа Для_разработчиков
Редактировал(а) Михаил Галич 26.11.2024, 12:16
отредактировано Михаил Галич
на 11.12.2023, 13:49
на 11.12.2023, 13:49
отредактировано Михаил Галич
на 11.12.2023, 13:51
на 11.12.2023, 13:51
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -30,5 +30,102 @@ 30 30 </script>}}} 31 31 32 32 33 +== Функции == 33 33 35 +=== WPInit({params}) === 36 + 37 +Функция загрузки виджета с параметризацией, при создании необходимо передать id виджета, который можно найти в Административной панели 38 + 39 +===== Минимальный способ инициализации: ===== 40 + 41 +* WPInit({ id: 1 }) 42 + 43 +===== Пример передаваемых данных: ===== 44 + 45 +Виджет можно инициализировать с различными параметрами, все из них опциональные, кроме id. 46 + 47 +{{{WPInit({ 48 + id: 1, 49 + width: 400, 50 + height: 600, 51 + type: 'modal' 52 +})}}} 53 + 54 +=== WPOpen({params}) === 55 + 56 +Функция открытия виджета в каком-либо блоке, используется при инициализации виджета с type: 'instant' 57 + 58 +===== Пример передаваемых данных: ===== 59 + 60 +{{{// показ виджета с группой id 5 61 +WPOpen({ 62 + groupid: [5] 63 +})}}} 64 + 65 +=== WPOpenModal({params}) === 66 + 67 +Функция открытия виджета в модальном окне, используется при инициализации виджета с type: 'modal' 68 + 69 +===== Пример передаваемых данных: ===== 70 + 71 +{{{// показ виджета на нажатие кнопки с id "OpenButton" 72 +var OpenButton = document.getElementById('OpenButton'); 73 +OpenButton.onclick = function() { 74 + WPOpenModal({ 75 + tariffsid: [27, 28] 76 + }) 77 +}}}} 78 + 79 +=== WPChange({status, data}) === 80 + 81 +Функция, которая вызывается каждый раз при изменении состояния виджета. Каждый раз передаёт в переменной response состояние в status и опционально данные в data. При переопределении этой функции у себя на странице, администратор может следить за состоянием виджета и статусом заказа из javascript 82 + 83 +===== Примеры передаваемых данных: ===== 84 + 85 +* { status:'starting' } — виджет в процессе запуска, в этот момент определяется, что он должен в данный момент отображать 86 +* { status:'started' } — виджет на начальном экране, где показывается список услуг для покупки 87 +* { status:'reserved', data: { order_id: 2 } } — виджет находится на стадии забронированного заказ, в data передаётся id 88 +* { status:'completed', data: { order_id: 2 } } — виджет находится на стадии оплаченного заказ, в data передаётся id заказа 89 + 90 +===== Пример работы с данными: ===== 91 + 92 +{{{WPChange = function(response) { 93 + if (response.status == 'starting') { 94 + // действие на внешней странице 95 + } 96 + if (response.status == 'started') { 97 + // действие на внешней странице 98 + } 99 + if (response.status == 'reserved') { 100 + // id зарезервированного заказа: response.data.order_id 101 + } 102 + if (response.status == 'completed') { 103 + // id оплаченного заказа: response.data.order_id 104 + } 105 +}}}} 106 + 107 +== Параметры == 108 + 109 +==== Обязательные параметры WPInit ==== 110 + 111 +==== id: 1 ==== 112 + 113 +id виджета, который можно узнать в Административной панели 114 + 115 +==== Возможные параметры WPInit ==== 116 + 117 +==== height: 480 ==== 118 + 119 +Высота виджета в пикселях, по умолчанию: 120 + 121 +* 480px, если виджет запущен как type: 'modal' 122 +* 100%, если виджет запущен как type: 'instant' 123 + 124 +==== width: 640 ==== 125 + 126 +Ширина виджета в пикселях, по умолчанию: 127 + 128 +* 640px, если виджет запущен как type: 'modal' 129 +* 100%, если виджет запущен как type: 'instant' 130 + 34 34