Изменения документа Для_разработчиков

Редактировал(а) Михаил Галич 19.09.2025, 10:16

<
От версии < 44.1 >
отредактировано Михаил Галич
на 20.12.2023, 11:42
К версии < 81.1 >
отредактировано Юлия Кирюшина
на 01.09.2025, 13:03
>
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

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