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