Изменения документа Для_разработчиков
Редактировал(а) Михаил Галич 26.11.2024, 12:16
<
>
отредактировано Михаил Галич
на 20.12.2023, 15:48
на 20.12.2023, 15:48
отредактировано Михаил Галич
на 12.12.2023, 10:53
на 12.12.2023, 10:53
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
-
Вложения (0 изменено, 0 добавлено, 21 удалено)
- 1702554428428-400.png
- 1702554509270-941.png
- 1702554528172-562.png
- 1702554569171-323.png
- 1702554574520-666.png
- 1702554576844-773.png
- 1702554598837-627.png
- 1702560922714-276.png
- 1702560957244-690.png
- 1702638034420-756.png
- 1702638265778-588.png
- 1702638427440-675.png
- 1702638705750-678.png
- 1702639385677-964.png
- 1702641274330-465.png
- 1703061675290-102.png
- 1703063138160-208.png
- 1703065328290-657.png
- 1703065338350-331.png
- 1703065356750-663.png
- 1703065952567-753.png
-
Объекты (0 изменено, 0 добавлено, 2 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,11 +1,9 @@ 1 - {{tocdepth="4"/}}1 +== Для разработчиков == 2 2 3 - =Инструкция дляподключения=3 +Назначение данного раздела — описать способы взаимодействия с виджетом Веб-платформы по задуманому вами сценарию. Типичный процесс подключения, открытия и отслеживания виджета выглядит так: 4 4 5 - Назначениеданногораздела—описатьспособы взаимодействия с виджетом Веб-платформыпо задуманномувами сценарию.Типичныйпроцессподключения, открытия и отслеживания виджета выглядит так:5 +~1. Подключите скрипт external.script.js к вашему сайту. Его адрес будет доступен **после добавления сайта** в процессе настройки в **администраторской панели Веб-Платформы**, так же как и параметр id для подключения 6 6 7 -~1. Подключите скрипт ##external.script.js## к вашему сайту. Его адрес будет доступен **после добавления сайта** в процессе настройки в **администраторской панели Веб-Платформы**, так же как и параметр ##id## для подключения 8 - 9 9 2. Вставьте в необходимом месте на своём сайте код: 10 10 11 11 {{code language="html"}} ... ... @@ -33,840 +33,339 @@ 33 33 </script> 34 34 {{/code}} 35 35 36 -= Функции = 34 +== Функции == 37 37 38 -== WPInit == 36 +=== WPInit({params}) === 39 39 40 -(% class="box infomessage" %) 41 -((( 42 -Функция загрузки виджета с параметризацией, при создании необходимо передать**## id ##**виджета, который можно найти в Административной панели 43 -))) 38 +Функция загрузки виджета с параметризацией, при создании необходимо передать id виджета, который можно найти в Административной панели 44 44 45 45 ===== Минимальный способ инициализации: ===== 46 46 47 -{{code language="javascript"}} 48 -WPInit({ id: 1 }) 49 -{{/code}} 42 +* WPInit({ id: 1 }) 50 50 51 51 ===== Пример передаваемых данных: ===== 52 52 53 -(% class="box infomessage" %) 54 -((( 55 -Виджет можно инициализировать с различными параметрами, все из них опциональные, кроме **##id##**. 56 -))) 46 +Виджет можно инициализировать с различными параметрами, все из них опциональные, кроме id. 57 57 58 -{{code language="javascript"}} 59 -WPInit({ 48 +{{{WPInit({ 60 60 id: 1, 61 61 width: 400, 62 62 height: 600, 63 63 type: 'modal' 64 -}) 65 -{{/code}} 53 +})}}} 66 66 67 -== WPOpen == 55 +=== WPOpen({params}) === 68 68 69 -(% class="box infomessage" %) 70 -((( 71 -Функция открытия виджета в каком-либо блоке, используется при инициализации виджета с## **type: 'instant'**## 72 -))) 57 +Функция открытия виджета в каком-либо блоке, используется при инициализации виджета с type: 'instant' 73 73 74 74 ===== Пример передаваемых данных: ===== 75 75 76 -{{code language="javascript"}} 77 -// показ виджета с группой id 5 61 +{{{// показ виджета с группой id 5 78 78 WPOpen({ 79 79 groupid: [5] 80 -}) 81 -{{/code}} 64 +})}}} 82 82 83 -== WPOpenModal == 66 +=== WPOpenModal({params}) === 84 84 85 -(% class="box infomessage" %) 86 -((( 87 -Функция открытия виджета в модальном окне, используется при инициализации виджета с## **type: 'modal'**## 88 -))) 68 +Функция открытия виджета в модальном окне, используется при инициализации виджета с type: 'modal' 89 89 90 90 ===== Пример передаваемых данных: ===== 91 91 92 -{{code language="javascript"}} 93 -// показ виджета на нажатие кнопки с id "OpenButton" 94 -var OpenButton = document.getElementById('OpenButton'); 95 -OpenButton.onclick = function () { 96 - WPOpenModal({ tariffsid: [27, 28] }); 97 -}; 98 -{{/code}} 72 +{{{// показ виджета на нажатие кнопки с id "OpenButton" var OpenButton = document.getElementById('OpenButton'); OpenButton.onclick = function() { WPOpenModal({ tariffsid: [27, 28] }) }}}} 99 99 100 -== WPChange == 74 +=== WPChange({status, data}) === 101 101 102 -(% class="box infomessage" %) 103 -((( 104 -Функция, которая вызывается каждый раз при изменении состояния виджета. 105 -Каждый раз передаёт в переменной response состояние в **##status##** и опционально данные в **##data##**. 106 -При переопределении этой функции у себя на странице, администратор может следить за состоянием виджета и статусом заказа из javascript 107 -))) 76 +Функция, которая вызывается каждый раз при изменении состояния виджета. Каждый раз передаёт в переменной response состояние в status и опционально данные в data. При переопределении этой функции у себя на странице, администратор может следить за состоянием виджета и статусом заказа из javascript 108 108 109 109 ===== Примеры передаваемых данных: ===== 110 110 111 -* ##{ status:'starting' }##— виджет в процессе запуска, в этот момент определяется, что он должен в данный момент отображать112 -* ##{ status:'started' }##— виджет на начальном экране, где показывается список услуг для покупки113 -* ##{ status:'reserved', data: { order_id: 2 } }##— виджет находится на стадии забронированного заказ, в data передаётся id114 -* ##{ status:'completed', data: { order_id: 2 } }##— виджет находится на стадии оплаченного заказ, в data передаётся id заказа80 +* { status:'starting' } — виджет в процессе запуска, в этот момент определяется, что он должен в данный момент отображать 81 +* { status:'started' } — виджет на начальном экране, где показывается список услуг для покупки 82 +* { status:'reserved', data: { order_id: 2 } } — виджет находится на стадии забронированного заказ, в data передаётся id 83 +* { status:'completed', data: { order_id: 2 } } — виджет находится на стадии оплаченного заказ, в data передаётся id заказа 115 115 116 116 ===== Пример работы с данными: ===== 117 117 118 -{{code language="javascript"}} 119 -WPChange = function(response) { 120 - if (response.status == 'starting') { 121 - // действие на внешней странице 122 - } 123 - if (response.status == 'started') { 124 - // действие на внешней странице 125 - } 126 - if (response.status == 'reserved') { 127 - // id зарезервированного заказа: response.data.order_id 128 - } 129 - if (response.status == 'completed') { 130 - // id оплаченного заказа: response.data.order_id 131 - } 132 -} 133 -{{/code}} 87 +{{{WPChange = function(response) { if (response.status == 'starting') { // действие на внешней странице } if (response.status == 'started') { // действие на внешней странице } if (response.status == 'reserved') { // id зарезервированного заказа: response.data.order_id } if (response.status == 'completed') { // id оплаченного заказа: response.data.order_id } }}}} 134 134 135 -= Параметры = 89 +== Параметры == 136 136 137 -== Обязательные параметры WPInit == 91 +==== Обязательные параметры WPInit ==== 138 138 139 -==== id ==== 93 +==== id: 1 ==== 140 140 141 - Типданных:##//number//##95 +id виджета, который можно узнать в Административной панели 142 142 143 -(% class="box infomessage" %) 144 -((( 145 -id виджета, который можно узнать в Административной панели. 146 -))) 97 +==== Возможные параметры WPInit ==== 147 147 148 -== Возможные параметры WPInit ==99 +==== height: 480 ==== 149 149 150 -==== height ==== 151 - 152 -Тип данных:## //number//## 153 - 154 -(% class="box infomessage" %) 155 -((( 156 156 Высота виджета в пикселях, по умолчанию: 157 - • 480px, если виджет запущен как type: 'modal' 158 - • 100%, если виджет запущен как type: 'instant' 159 -))) 160 160 161 -==== width ==== 103 +* 480px, если виджет запущен как type: 'modal' 104 +* 100%, если виджет запущен как type: 'instant' 162 162 163 - Типданных:##//number//##106 +==== width: 640 ==== 164 164 165 -(% class="box infomessage" %) 166 -((( 167 167 Ширина виджета в пикселях, по умолчанию: 168 - • 640px, если виджет запущен как type: 'modal' 169 - • 100%, если виджет запущен как type: 'instant' 170 -))) 171 171 172 -==== type ==== 110 +* 640px, если виджет запущен как type: 'modal' 111 +* 100%, если виджет запущен как type: 'instant' 173 173 174 - Типданных:##//string//##113 +==== type: 'modal' ==== 175 175 176 - По умолчанию:##//'instant'//##115 +Способ открытия виджета, по умолчанию 'instant': 177 177 178 -(% class="box infomessage" %) 179 -((( 180 -Способ открытия виджета 181 - • 'instant' Открытие виджета на месте, где был вызов виджета (на месте тэга script), либо в блоке place, если он указан в параметрах виджета при инициализации 182 - • 'modal' Открытие виджета в модальном окне 183 -))) 117 +* 'instant' Открытие виджета на месте, где был вызов виджета (на месте тэга script), либо в блоке place, если он указан в параметрах виджета при инициализации 118 +* 'modal' Открытие виджета в модальном окне 184 184 185 -==== place ==== 120 +==== place: '#place' ==== 186 186 187 - Типданных:##//string//##122 +Идентификатор элемента DOM, в который необходимо поместить виджет, например: #widget. Используется совместно с type: 'instant' 188 188 189 -(% class="box infomessage" %) 190 -((( 191 -Идентификатор элемента DOM, в который необходимо поместить виджет, например: **###widget##**. Используется совместно с **##type: 'instant'##** 192 -))) 193 - 194 194 (% class="box warningmessage" %) 195 195 ((( 196 196 **Важно:** элемент DOM для place должен быть либо на странице до вставки инициализации виджета (WPInit), либо инициализация виджета должна быть исполнена после загрузки DOM (например, обёрнута в событие $(document).ready(function(){}) в jQuery) 197 197 ))) 198 198 199 ----- 129 +==== ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-- ==== 200 200 201 -== Возможные параметры WPOpen и WPOpenModal == 131 +==== Возможные параметры WPOpen и WPOpenModal ==== 202 202 203 -=== Календарь и даты === 133 +===== Календарь и даты ===== 204 204 205 -==== disableddates ====135 +==== nocalendar: false ==== 206 206 207 - Типданных:##//Array<string>//##137 +Убирает календарь внутри виджета (и в //покупке// и в //пополнении//), в случаях, когда дата, на которую покупается/пополняется билет, не важна. По умолчанию false 208 208 209 - Поумолчанию:##// []//##139 +==== mindate: '01.01.2019' ==== 210 210 211 -(% class="box infomessage" %) 212 -((( 213 -Параметр отключения дат в календаре (и в //покупке// и в //пополнении//). Делает невозможным выбор определённых дней в массиве дат. 214 -))) 141 +Параметр минимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). mindate: '20.05.2018' покажет 20.05.2018 как самую первую дату, доступную к выбору в календаре, если она находится после текущего дня 215 215 216 - Пример:143 +==== maxdate: '01.01.2020' ==== 217 217 218 -{{code language="javascript"}} 219 -disableddates: ['23.02.2018', '08.03.2018'] // уберёт даты 23.02.2018 и 08.03.2018 из возможных для выбора дат в календаре. 220 -{{/code}} 145 +Параметр максимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). maxdate: '20.05.2018' покажет 20.05.2018 как самую последнюю дату, доступную к выбору в календаре. 221 221 222 -==== forcedate ==== 147 +==== forcedate: '12.06.2019' ==== 223 223 224 - Типданных:##//string//##149 +Параметр для открывания виджета с указанной сразу датой (и в //покупке// и в //пополнении//). forcedate: '20.05.2018' покажет услуги к продаже на дату 20.05.2018. 225 225 226 - Поумолчанию:##// undefined//##151 +==== disableddates: ['23.02.2019' ==== 227 227 228 -(% class="box infomessage" %) 229 -((( 230 -Параметр для открывания виджета с указанной сразу датой (и в //покупке// и в //пополнении//). 231 -**##forcedate: '20.05.2018'##** покажет услуги к продаже на дату 20.05.2018. 232 -))) 153 +==== , … ] ==== 233 233 234 -==== maxdate ==== 155 +Параметр отключения дат в календаре (и в //покупке// и в //пополнении//). Делает невозможным выбор определённых дней в массиве дат. 156 +Пример использования: disableddates: ['23.02.2018', '08.03.2018'] уберёт даты 23.02.2018 и 08.03.2018 из возможных для выбора дат в календаре. 235 235 236 - Тип данных:##// string//##158 +~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-- 237 237 238 - Поумолчанию:##// undefined//##160 +===== Услуги, пакеты услуг, группы услуг ===== 239 239 240 -(% class="box infomessage" %) 241 -((( 242 -Параметр максимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 243 -**##maxdate: '20.05.2018'##** покажет 20.05.2018 как самую последнюю дату, доступную к выбору в календаре. 244 -))) 162 +==== tariffsid: [29 ==== 245 245 246 -==== mindate====164 +==== , 30 ==== 247 247 248 - Типданных:##// string//##166 +==== , … ] ==== 249 249 250 -По умолчанию:##// undefined//## 168 +Тарифы, которые следует показать на вкладке «Покупка услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 169 +Пример использования: 170 +tariffsid: [29, 30] покажет тарифы с id 29 и 30 во вкладке «Покупка услуг». 171 +tariffsid: false уберёт все тарифы с первой страницы 251 251 252 -(% class="box infomessage" %) 253 -((( 254 -Параметр минимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 255 -**##mindate: '20.05.2018'##** покажет 20.05.2018 как самую первую дату, доступную к выбору в календаре, если она находится после текущего дня. 256 -))) 173 +==== rtariffsid: [56 ==== 257 257 258 -==== nocalendar====175 +==== , 57 ==== 259 259 260 - Типданных:##//boolean//##177 +==== , … ] ==== 261 261 262 -По умолчанию:##// false//## 179 +Тарифы, которые следует показать после ввода карты во вкладке «Пополнение услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 180 +Пример использования: 181 +rtariffsid: [56, 57] покажет тарифы с id 56 и 57 после ввода карты во вкладке «Пополнение услуг» 182 +tariffsid: false уберёт все тарифы с первой страницы 263 263 264 -(% class="box infomessage" %) 265 -((( 266 -Убирает календарь внутри виджета (и в //покупке// и в //пополнении//), в случаях, когда дата, на которую покупается/пополняется билет, не важна. 267 -))) 184 +==== bundlesid: [4 ==== 268 268 269 - ----186 +==== , 5 ==== 270 270 271 -=== Отображение===188 +==== , … ] ==== 272 272 273 -==== cartmaxitems **##*##** ==== 190 +Пакеты услуг, которые следует показать на первой странице. По умолчанию массив пуст и не показывает отдельно никакие из пакетов услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать пакеты услуг, доступные только для него. 191 +Пример использования: 192 +bundlesid: [4, 5] покажет пакеты услуг с id 4 и 5 в момент открытия виджета. 193 +bundlesid: false уберёт все пакеты услуг с первой страницы 274 274 275 - Типданных:##// number//##195 +==== groupid: 12 ==== 276 276 277 -По у молчанию:##// 6//##197 +Параметр, который форсирует показ определённой группы услуг ппс. groupid: 5 покажет только одну группу с id 5 в виджете. 278 278 279 -(% class="box infomessage" %) 280 -((( 281 -Ограничивает максимальное кол-во товаров в корзине. ##Минимальное значение 1, но не меньше **cartminitems**. Максимальное значение 60.## 282 -))) 199 +~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-- 283 283 284 -==== cartminitems**##*##**====201 +===== Предзаказ ===== 285 285 286 - Типданных:##// number//##203 +==== preorder: [{id: 57 ==== 287 287 288 - Поумолчанию:##//1//##205 +==== , date: '06.06.2019' ==== 289 289 290 -(% class="box infomessage" %) 291 -((( 292 -Ограничивает минимальное кол-во товаров в корзине. ##Минимальное значение 1. Максимальное значение 60, но не больше **cartmaxitems**.## 293 -))) 207 +==== , count: 1 ==== 294 294 295 -==== categories====209 +==== }, … ] ==== 296 296 297 - Типданных:##// Array<string>//##211 +Параметр, позволяющий купить сразу несколько услуг и перейти к подтверждению покупки. 298 298 299 -По умолчанию:##// []//## 213 +* id — id услуги к покупке 214 +* date — дата, на которую покупается услуга 215 +* count — количество покупаемых услуг 300 300 301 -(% class="box infomessage" %) 302 -((( 303 -Фильтр категорий инструкторских занятий. Скрывает категории в выпадающем списке, **##id##** которых не совпадают заданными в массиве. 304 -))) 217 +===== Пример передаваемых данных: ===== 305 305 306 -[[image:1703065952567-753.png]] 219 +{{{// либо WPOpenModal({}) 220 +WPOpen({ 221 + preorder: [ 222 + { 223 + id: 57, 224 + date: '06.06.2019', 225 + count: 1 226 + }, { 227 + id: 58, 228 + date: '07.06.2019', 229 + count: 2 230 + } 231 + ] 232 +})}}} 307 307 308 -==== clubsiteid====234 +===== Отображение ===== 309 309 310 - Типданных:##// number//##236 +==== forcetab: 'rewrite' ==== 311 311 312 -По умолчанию: ##// 0//##238 +Переключение на необходимую вкладку виджета («покупка услуг» или «пополнение услуг») при загрузке. По умолчанию открывается вкладка «покупка услуг». forcetab: 'rewrite' принудительно откроет «пополнение услуг». Обычно используется в комбинации с параметром onlytab 313 313 314 -(% class="box warningmessage" %) 315 -((( 316 -Описание отсутствует 317 -))) 240 +==== onlytab: 'rewrite' ==== 318 318 319 - ====coachid ====242 +Скрытие других вкладок виджета («покупка услуг» или «пополнение услуг») при загрузке. Обычно используется в комбинации с параметром forcetab 320 320 321 -Тип данных:##// number//## 244 +* onlytab: 'service' покажет только вкладку «покупка услуг». 245 +* onlytab: 'rewrite' покажет только вкладку «пополнение услуг». 322 322 323 - Поумолчанию:##// undefined//##247 +==== forcemedia: 'E0012345678900' ==== 324 324 325 -(% class="box warningmessage" %) 326 -((( 327 -Описание отсутствует 328 -))) 329 - 330 -==== disablemultipleseances **##*##** ==== 331 - 332 -Тип данных:##// boolean//## 333 - 334 -По умолчанию:##// false//## 335 - 336 -(% class="box infomessage" %) 337 -((( 338 -Параметр предотвращает добавление в корзину тарифов с различными сеансами. 339 -Таким образом как только в корзине появится хоть один товар с сеансом "10:00 - 11:30", товары, у которых есть сеанс например "13:00 - 14:30" будет невозможно добавить в корзину. 340 -Товары без сеансов __не будут затронуты__. 341 -))) 342 - 343 -==== forcemedia ==== 344 - 345 -Тип данных:##// string//## 346 - 347 -По умолчанию:##// ''//## 348 - 349 -(% class="box infomessage" %) 350 -((( 351 351 Параметр, который вставяет строчку с носителем в поле носителя во вкладке «Пополнение услуг». Используется, например, для QR-кода нанесённого на носитель, чтобы быстро его пополнить. 352 -))) 353 353 354 - Пример:251 +==== nopromo: false ==== 355 355 356 -{{code language="javascript"}} 357 -forcemedia: 'E0012345678900' 358 -{{/code}} 253 +Убирает вывод промокода на странице подтверждения заказа. По умолчанию false 359 359 360 -==== forceseanceid**##*##**====255 +==== terminal: true ==== 361 361 362 - Типданных:##// number//##257 +Включение режима «терминал» для работы виджета. При этом режиме убирается возможность отослать заказ на SMS, а сам заказ распечатывается на принтере. 363 363 364 - Поумолчаниюбезуказания идентификатора не учитывается.259 +==== cartmaxitems: 5 ==== 365 365 366 -(% class="box infomessage" %) 367 -((( 368 -Заставит виджет выбрать мероприятие арены по идентификатору платформы и не позволять вернуться к этапу выбора других мероприятий. 369 -))) 261 +==== ==== 370 370 371 - ====forcesectorid**##*##**====263 +Ограничивает максимальное кол-во товаров в корзине. Минимальное значение 1. Максимальное значение 60. По умолчанию 6 372 372 373 - Типданных:##// number//##265 +==== cartminitems: 2 ==== 374 374 375 - Поумолчаниюбезуказания идентификатора не учитывается.267 +==== ==== 376 376 377 -(% class="box infomessage" %) 378 -((( 379 -Заставит виджет выбрать сектор мероприятия по **##id##** и не позволять вернуться к этапу выбора других секторов. 380 -))) 269 +Ограничивает минимальное кол-во товаров в корзине. Минимальное значение 1. Максимальное значение 60. По умолчанию 1 381 381 382 -==== forcetab**##*##**====271 +==== locale: 'ru' ==== 383 383 384 - Типданных:##// string//##273 +==== ==== 385 385 386 -По умолчанию:##// ''//## 387 - 388 -(% class="box infomessage" %) 389 -((( 390 -Переключение на необходимую вкладку виджета («**покупка услуг**» или «**пополнение услуг**») при загрузке. 391 -По умолчанию открывается вкладка «**покупка услуг**». 392 -**##forcetab: 'rewrite'##** принудительно откроет «**пополнение услуг**». 393 -Обычно используется в комбинации с параметром **##onlytab##** 394 -))) 395 - 396 -==== grouplessonsskillstariffs ==== 397 - 398 -Тип данных:##// Array<number> //##//|## object##// 399 - 400 -По умолчанию:##// {}//## 401 - 402 -(% class="box warningmessage" %) 403 -((( 404 -Описание отсутствует 405 -))) 406 - 407 -==== grouplessonstariffsid ==== 408 - 409 -Тип данных:##// Array<number>//## 410 - 411 -По умолчанию:##// []//## 412 - 413 -(% class="box infomessage" %) 414 -((( 415 -Фильтр программ обучения для групповых занятий 416 -))) 417 - 418 -[[image:1703065356750-663.png]] 419 - 420 -Пример: 421 - 422 -{{code language="javascript"}} 423 -grouplessonstariffsid: [1823, 1900] // скрыть все программы обучения, кроме 1823 и 1900 424 -{{/code}} 425 - 426 -==== lessonslocation **##*##** ==== 427 - 428 -Тип данных:##// number//## 429 - 430 -По умолчанию:##// undefined//## 431 - 432 -(% class="box infomessage" %) 433 -((( 434 -Отображение места занятия для индивидуальных, групповых и многодневных занятий 435 -))) 436 - 437 -[[image:1702560957244-690.png]] 438 - 439 -==== lessonstariffsid ==== 440 - 441 -Тип данных:##// Array<number>//## 442 - 443 -По умолчанию:##// []//## 444 - 445 -(% class="box infomessage" %) 446 -((( 447 -Ограничить видимость доступных тарифов в выпадающем списке программ обучения по массиву с их идентификаторами 448 -))) 449 - 450 -[[image:1702641274330-465.png]] 451 - 452 -==== locale **##*##** ==== 453 - 454 -Тип данных:##// string//## 455 - 456 -По умолчанию:##// ''//## 457 - 458 -(% class="box infomessage" %) 459 -((( 460 460 Параметр локализации. Позволяет переключать между языками виджета, например 'ru' - русский язык, 'en' - английский язык. 461 -))) 462 462 463 -==== marketbillid====277 +==== ordercomment: 'Комментарий к заказу' ==== 464 464 465 - Типданных:##// number//##279 +==== ==== 466 466 467 -По умолчанию:##// undefined//## 468 - 469 -(% class="box warningmessage" %) 470 -((( 471 -Описание отсутствует 472 -))) 473 - 474 -==== marketemployeeid ==== 475 - 476 -Тип данных:##// number//## 477 - 478 -По умолчанию:##// undefined//## 479 - 480 -(% class="box warningmessage" %) 481 -((( 482 -Описание отсутствует 483 -))) 484 - 485 -==== minimap **##*##** ==== 486 - 487 -Тип данных:##// boolean//## 488 - 489 -По умолчанию:##// true//## 490 - 491 -(% class="box infomessage" %) 492 -((( 493 -Отображать миникарту. 494 -))) 495 - 496 -==== minimapaspect **##*##** ==== 497 - 498 -Тип данных:##// number//## 499 - 500 -По умолчанию:##// 0.2//## 501 - 502 -(% class="box infomessage" %) 503 -((( 504 -Размер миникарты относительной полного размера карты, а не контейнера, в которой она находится. 505 -))) 506 - 507 -==== multidayslessonsskillstariffs **##*##** ==== 508 - 509 -Тип данных:##// Array<number> //##//|## object##// 510 - 511 -По умолчанию:##// []//## 512 - 513 -(% class="box infomessage" %) 514 -((( 515 -Производит фильтрацию тарифов для многодневных занятий. Принимает массив идентификаторов. 516 -Параметр дополняет фильтрацию по параметру **##grouplessonsskillstariffs##**. 517 -))) 518 - 519 -==== nocategories **##*##** ==== 520 - 521 -Тип данных:##// boolean//## 522 - 523 -По умолчанию:##// false//## 524 - 525 -(% class="box infomessage" %) 526 -((( 527 -Если **##true##** скрывает фильтр по категории инструкторских занятий 528 -))) 529 - 530 -[[image:1702638427440-675.png]] 531 - 532 -==== nocoach **##*##** ==== 533 - 534 -Тип данных:##// boolean//## 535 - 536 -По умолчанию:##// false//## 537 - 538 -(% class="box infomessage" %) 539 -((( 540 -Если **##true##** скрывает выпадающее меню выбора инструктора 541 -))) 542 - 543 -[[image:1702638265778-588.png]] 544 - 545 -==== nolocation **##*##** ==== 546 - 547 -Тип данных:##// boolean//## 548 - 549 -По умолчанию:##// false//## 550 - 551 -(% class="box infomessage" %) 552 -((( 553 -Если **##true##** скрывает фильтр по месту проведения инструкторских занятий 554 -))) 555 - 556 -[[image:1702638034420-756.png]] 557 - 558 -==== nopromo **##*##** ==== 559 - 560 -Тип данных:##// boolean//## 561 - 562 -По умолчанию:##// false//## 563 - 564 -(% class="box infomessage" %) 565 -((( 566 -Убирает вывод промокода на странице подтверждения заказа. 567 -))) 568 - 569 -==== noskills **##*##** ==== 570 - 571 -Тип данных:##// boolean//## 572 - 573 -По умолчанию:##// false//## 574 - 575 -(% class="box infomessage" %) 576 -((( 577 -Если **##true##** скрывает фильтр по дисциплине инструкторских занятий 578 -))) 579 - 580 -[[image:1702638705750-678.png]] 581 - 582 -==== notariffs ==== 583 - 584 -Тип данных:##// boolean//## 585 - 586 -По умолчанию:##// false//## 587 - 588 -(% class="box infomessage" %) 589 -((( 590 -Если **##true##** скрывает фильтр по программе обучения инструкторских занятий 591 -))) 592 - 593 -[[image:1703063138160-208.png]] 594 - 595 -==== onlytab **##*##** ==== 596 - 597 -Тип данных:##// string //##//|## Array<string>##// 598 - 599 -По умолчанию:##// []//## 600 - 601 -(% class="box infomessage" %) 602 -((( 603 -Скрытие других вкладок виджета («покупка услуг» или «пополнение услуг») при загрузке. Обычно используется в комбинации с параметром **##forcetab##** 604 -))) 605 - 606 -{{code language="javascript"}} 607 -onlytab: 'service' // покажет только вкладку «покупка услуг». 608 -onlytab: 'rewrite' // покажет только вкладку «пополнение услуг». 609 -onlytab: ['service', 'rewrite'] // покажет только вкладки «покупка услуг» и «пополнение услуг»; 610 -{{/code}} 611 - 612 -==== ordercomment **##*##** ==== 613 - 614 -Тип данных:##// string//## 615 - 616 -По умолчанию:##// ''//## 617 - 618 -(% class="box infomessage" %) 619 -((( 620 620 Опциональный комментарий к заказу. Максимальная длинна комментария 50 символов. 621 -))) 622 622 623 -==== personallessonsskillstariffs**##*##**====283 +==== disablemultipleseances: true ==== 624 624 625 - Типданных:##// object//##285 +==== ==== 626 626 627 -По умолчанию:##// {}//## 287 +Параметр предотвращает добавление в корзину тарифов с различными сеансами. 288 +Таким образом как только в корзине появится хоть один товар с сеансом "10:00 - 11:30", товары, у которых есть сеанс например "13:00 - 14:30" будет невозможно добавить в корзину. Товары без сеансов не будут затронуты. 289 +По умолчанию false 628 628 629 -(% class="box infomessage" %) 630 -((( 631 -Ограничивает список тарифов (в фильтре) при выборе конкретной дисциплины. 632 -Принимает объект, внутри которого указываются пары ключ/значение по выражению: {skillid}: [{tariffid},...] 633 -))) 634 634 635 - Пример:292 +==== tariffsseancesfilter: true ==== 636 636 637 -{{code language="javascript"}} 638 -personallessonsskillstariffs: { 639 - "1": [ 15, 23] // При выборе дисциплины с id 1 - отображать тарифы с id 15 и 23 640 -} 641 -{{/code}} 294 +==== ==== 642 642 643 -==== placeid **##*##** ==== 644 - 645 -Тип данных:##// number//## 646 - 647 -По умолчанию:##// undefined//## 648 - 649 -(% class="box infomessage" %) 650 -((( 651 -идентификатор места, использующийся для получения списка инструкторов. 652 -))) 653 - 654 -==== requiredloyalty **##*##** ==== 655 - 656 -Тип данных:##// boolean//## 657 - 658 -По умолчанию:##// false//## 659 - 660 -(% class="box infomessage" %) 661 -((( 662 -Включает обязательную регистрацию клиента в программе настроенной на объектке. 663 -))) 664 - 665 -==== resetcart **##*##** ==== 666 - 667 -Тип данных:##// boolean//## 668 - 669 -По умолчанию:##// false//## 670 - 671 -(% class="box infomessage" %) 672 -((( 673 -Автоматически очищать содержимое корзины. 674 -))) 675 - 676 -==== saletermstype **##*##** ==== 677 - 678 -Тип данных:##// string//## 679 - 680 -По умолчанию:##// '//default//'//## 681 - 682 -(% class="box infomessage" %) 683 -((( 684 -Перед оплатой просит пользователя согласиться с правилами в форме галочки или всплывающего окна 685 -))) 686 - 687 -{{code language="javascript"}} 688 -saletermstype: 'checkbox' // потребует установку галочки для согласия. 689 -saletermstype: 'dialog' // покажет всплывающее окно с правилами, которые нужно принять. 690 -saletermstype: 'default' // принятие правил не требуется. 691 -{{/code}} 692 - 693 -==== shownoticketsseances **##*##** ==== 694 - 695 -Тип данных:##// boolean//## 696 - 697 -По умолчанию:##// false//## 698 - 699 -(% class="box infomessage" %) 700 -((( 701 -Не скрывать сеансы, на которые закончились билеты. Работает если **##tariffsseancesfilter: true##** 702 -))) 703 - 704 -==== showoverseances **##*##** ==== 705 - 706 -Тип данных:##// boolean//## 707 - 708 -По умолчанию:##// false//## 709 - 710 -(% class="box infomessage" %) 711 -((( 712 -Отвечает за отображение прошедших сеансов в списке для фильтрации по времени. При значении **##true##** прошедшие сеансы будут отображаться, но недоступны для выбора пользователем. Работает если **##tariffsseancesfilter: true##** 713 -))) 714 - 715 -[[image:1702554598837-627.png]] 716 - 717 -==== skills **##*##** ==== 718 - 719 -Тип данных:##// Array<number>//## 720 - 721 -По умолчанию:##// []//## 722 - 723 -(% class="box infomessage" %) 724 -((( 725 -Ограничить видимость доступных к выбору дисциплин по идентификатору 726 -))) 727 - 728 -[[image:1702639385677-964.png]] 729 - 730 -==== tariffsseancesfilter **##*##** ==== 731 - 732 -Тип данных:##// boolean//## 733 - 734 -По умолчанию:##// false//## 735 - 736 -(% class="box infomessage" %) 737 -((( 738 -Включить отображение фильтра тарифов по сеансам. 739 -))) 740 - 741 741 [[image:https://info.moipass.ru/images/tariffsseancesfilter.png||alt="Example"]] 742 742 743 - ----298 +Включить отображение фильтра тарифов по сеансам. По умолчанию false 744 744 745 -=== Предзаказ===300 +==== resetcart: true ==== 746 746 747 -==== preorder====302 +==== ==== 748 748 749 - Типданных:##// Array<object>//##304 +Автоматически очищать содержимое корзины. По умолчанию false 750 750 751 - Поумолчанию:##// undefined//##306 +==== minimap: false ==== 752 752 753 -(% class="box infomessage" %) 754 -((( 755 -Параметр, позволяющий купить сразу несколько услуг и перейти к подтверждению покупки. 756 - • id — id услуги к покупке 757 - • date — дата, на которую покупается услуга 758 - • count — количество покупаемых услуг 759 -))) 308 +==== ==== 760 760 761 - ===== Пример передаваемыхданных:=====310 +Отображать миникарту. По умолчанию true 762 762 763 -{{code language="javascript"}} 764 -// либо WPOpenModal({}) 765 -WPOpen({ 766 - preorder: [ 767 - { 768 - id: 57, 769 - date: '06.06.2019', 770 - count: 1 771 - }, { 772 - id: 58, 773 - date: '07.06.2019', 774 - count: 2 775 - } 776 - ] 777 -}) 778 -{{/code}} 312 +==== minimapaspect: 0.5 ==== 779 779 780 - ----314 +==== ==== 781 781 782 - ===Услуги,пакетыуслуг,группыуслуг===316 +Размер миникарты относительной полного размера карты, а не контейнера, в которой она находится. По умолчанию 0.2 783 783 784 -==== tariffsid ====318 +==== forceseanceid: 42 ==== 785 785 786 - Типданных:##// Array<number>//##//|## boolean##//320 +==== ==== 787 787 788 - По умолчанию:##// []//##322 +Заставит виджет выбрать мероприятие арены по идентификатору платформы и не позволять вернуться к этапу выбора других мероприятий. Без указания идентификатора не учитывается. 789 789 790 -(% class="box infomessage" %) 791 -((( 792 -Тарифы, которые следует показать на вкладке «Покупка услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 793 -))) 324 +==== forcesectorid: 42 ==== 794 794 795 - Пример:326 +==== ==== 796 796 797 -{{code language="javascript"}} 798 -tariffsid: [29, 30] // покажет тарифы с id 29 и 30 во вкладке «Покупка услуг». 799 -tariffsid: false // уберёт все тарифы с первой страницы 800 -{{/code}} 328 +Заставит виджет выбрать сектор мероприятия по id и не позволять вернуться к этапу выбора других секторов. Без указания идентификатора не учитывается. 801 801 802 -==== re writetariffsid**##*##**====330 +==== requiredloyalty: true ==== 803 803 804 - Типданных:##// Array<number>//##//|## boolean##//332 +==== ==== 805 805 806 -По умолчанию :##// []//##334 +Включает обязательную регистриацию клиента в программе настроенной на объектке. По умолчанию false 807 807 808 -(% class="box infomessage" %) 809 -((( 810 -Тарифы, которые следует показать после ввода карты во вкладке «Пополнение услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 811 -))) 336 +==== personallessonsskillstariffs: [56 ==== 812 812 813 - Пример:338 +==== , 57 ==== 814 814 815 -{{code language="javascript"}} 816 -rtariffsid: [56, 57] // покажет тарифы с id 56 и 57 после ввода карты во вкладке «Пополнение услуг» 817 -rtariffsid: false // уберёт все тарифы во вкладке «Пополнение услуг» 818 -{{/code}} 340 +==== , … ] ==== 819 819 820 -==== rtariffsid====342 +==== ==== 821 821 822 -(% class="box infomessage" %) 823 -((( 824 -См. rewritetariffsid. Доступен и в старой версии виджета 825 -))) 344 +Производит фильтрацию тарифов для индивидуальных занятий. Принимает массив идентификаторов. По умолчанию [] 826 826 827 -==== bundlesid====346 +==== multidayslessonsskillstariffs: [56 ==== 828 828 829 - Типданных:##// Array<number>//##//|## boolean##//348 +==== , 57 ==== 830 830 831 - Поумолчанию:##// []//##350 +==== , … ] ==== 832 832 833 -(% class="box infomessage" %) 834 -((( 835 -Пакеты услуг, которые следует показать на первой странице. По умолчанию массив пуст и не показывает отдельно никакие из пакетов услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать пакеты услуг, доступные только для него. 836 -))) 352 +==== ==== 837 837 838 -Пример :354 +Производит фильтрацию тарифов для многодневных занятий. Принимает массив идентификаторов. Параметр дополняет фильтрацию по параметру grouplessonsskillstariffs. По умолчанию [] 839 839 840 -{{code language="javascript"}} 841 -bundlesid: [4, 5] // покажет пакеты услуг с id 4 и 5 в момент открытия виджета. 842 -bundlesid: false // уберёт все пакеты услуг с первой страницы 843 -{{/code}} 356 +==== saletermstype: 'checkbox' ==== 844 844 845 -==== bundleslessonstariffsid====358 +==== ==== 846 846 847 - Типданных:##// Array<number>//##360 +Перед оплатой просит пользователя согласиться с правилами в форме галочки или всплывающего окна 848 848 849 -По умолчанию:##// []//## 362 +* saletermstype: 'checkbox' потребует установку галочки для согласия. 363 +* saletermstype: 'dialog' покажет всплывающее окно с правилами, которые нужно принять. 364 +* saletermstype: 'default' принятие правил не требуется. 850 850 851 -(% class="box warningmessage" %) 852 -((( 853 -Описание отсутствует 854 -))) 366 +По умолчанию 'default' 855 855 856 -==== groupid ==== 857 857 858 -Тип данных:##// number//## 859 859 860 -По умолчанию:##// undefined//## 861 - 862 -(% class="box infomessage" %) 863 -((( 864 -Параметр, который форсирует показ определённой группы услуг ппс. groupid: 5 покажет только одну группу с id 5 в виджете. 865 -))) 866 - 867 ----- 868 - 869 -(% class="box warningmessage" %) 870 -((( 871 -**##* ##**- доступно в новой версии виджета 872 -)))
- 1702554428428-400.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -20.2 KB - Содержимое
- 1702554509270-941.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -13.2 KB - Содержимое
- 1702554528172-562.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -13.2 KB - Содержимое
- 1702554569171-323.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -13.1 KB - Содержимое
- 1702554574520-666.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -13.1 KB - Содержимое
- 1702554576844-773.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -13.1 KB - Содержимое
- 1702554598837-627.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -13.4 KB - Содержимое
- 1702560922714-276.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -11.1 KB - Содержимое
- 1702560957244-690.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -11.6 KB - Содержимое
- 1702638034420-756.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -2.0 KB - Содержимое
- 1702638265778-588.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -2.4 KB - Содержимое
- 1702638427440-675.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -2.9 KB - Содержимое
- 1702638705750-678.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -3.5 KB - Содержимое
- 1702639385677-964.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -2.6 KB - Содержимое
- 1702641274330-465.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -3.7 KB - Содержимое
- 1703061675290-102.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -35.6 KB - Содержимое
- 1703063138160-208.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -3.7 KB - Содержимое
- 1703065328290-657.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -37.2 KB - Содержимое
- 1703065338350-331.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -37.1 KB - Содержимое
- 1703065356750-663.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -36.7 KB - Содержимое
- 1703065952567-753.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.galich - Размер
-
... ... @@ -1,1 +1,0 @@ 1 -2.9 KB - Содержимое
- XWiki.XWikiRights[0]
-
- allow
-
... ... @@ -1,1 +1,0 @@ 1 -1 - levels
-
... ... @@ -1,1 +1,0 @@ 1 -view - users
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.XWikiGuest
- XWiki.XWikiRights[1]
-
- allow
-
... ... @@ -1,1 +1,0 @@ 1 -0 - levels
-
... ... @@ -1,1 +1,0 @@ 1 -delete,script,edit,comment - users
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.XWikiGuest