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