Изменения документа Для_разработчиков
Редактировал(а) Михаил Галич 26.11.2024, 12:16
<
>
отредактировано Михаил Галич
на 07.02.2024, 12:21
на 07.02.2024, 12:21
отредактировано Михаил Галич
на 11.12.2023, 13:56
на 11.12.2023, 13:56
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
-
Вложения (0 изменено, 0 добавлено, 21 удалено)
- 1702554428428-400.png
- 1702554509270-941.png
- 1702554528172-562.png
- 1702554569171-323.png
- 1702554574520-666.png
- 1702554576844-773.png
- 1702554598837-627.png
- 1702560922714-276.png
- 1702560957244-690.png
- 1702638034420-756.png
- 1702638265778-588.png
- 1702638427440-675.png
- 1702638705750-678.png
- 1702639385677-964.png
- 1702641274330-465.png
- 1703061675290-102.png
- 1703063138160-208.png
- 1703065328290-657.png
- 1703065338350-331.png
- 1703065356750-663.png
- 1703065952567-753.png
-
Объекты (0 изменено, 0 добавлено, 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,892 +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 -==== skills **##*##** ==== 405 - 406 -Тип данных:##// Array<number>//## 407 - 408 -По умолчанию:##// []//## 409 - 410 -(% class="box infomessage" %) 411 -((( 412 -Ограничить видимость доступных к выбору дисциплин по идентификатору 413 -))) 414 - 415 -[[image:1702639385677-964.png]] 416 - 417 -=== Календарь и даты === 418 - 419 -==== disableddates ==== 420 - 421 -Тип данных:##// Array<string>//## 422 - 423 -По умолчанию:##// []//## 424 - 425 -(% class="box infomessage" %) 426 -((( 427 427 Параметр отключения дат в календаре (и в //покупке// и в //пополнении//). Делает невозможным выбор определённых дней в массиве дат. 428 - )))155 +Пример использования: disableddates: ['23.02.2018', '08.03.2018'] уберёт даты 23.02.2018 и 08.03.2018 из возможных для выбора дат в календаре. 429 429 430 - Пример:157 +~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-- 431 431 432 -{{code language="javascript"}} 433 -disableddates: ['23.02.2018', '08.03.2018'] // уберёт даты 23.02.2018 и 08.03.2018 из возможных для выбора дат в календаре. 434 -{{/code}} 159 +===== Услуги, пакеты услуг, группы услуг ===== 435 435 436 -==== disableddays**##*##**====161 +==== tariffsid: [29 ==== 437 437 438 - Типданных:##// Array<number>//##163 +==== , 30 ==== 439 439 440 - Поумолчанию:##// []//##165 +==== , … ] ==== 441 441 442 - (%class="boxinfomessage"%)443 - (((444 - Параметрыоткрлюченияднейнеделивкалендаре (ивпокупкеивпополнении), где0 - воскресенье, 1 -понедельники такдалее.445 - )))167 +Тарифы, которые следует показать на вкладке «Покупка услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 168 +Пример использования: 169 +tariffsid: [29, 30] покажет тарифы с id 29 и 30 во вкладке «Покупка услуг». 170 +tariffsid: false уберёт все тарифы с первой страницы 446 446 447 -==== forcedate====172 +==== rtariffsid: [56 ==== 448 448 449 - Типданных:##// string//##174 +==== , 57 ==== 450 450 451 - Поумолчанию:##// undefined//##176 +==== , … ] ==== 452 452 453 -(% class="box infomessage" %) 454 -((( 455 -Параметр для открывания виджета с указанной сразу датой (и в //покупке// и в //пополнении//). 456 -**##forcedate: '20.05.2018'##** покажет услуги к продаже на дату 20.05.2018. 457 -))) 178 +Тарифы, которые следует показать после ввода карты во вкладке «Пополнение услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 179 +Пример использования: 180 +rtariffsid: [56, 57] покажет тарифы с id 56 и 57 после ввода карты во вкладке «Пополнение услуг» 181 +tariffsid: false уберёт все тарифы с первой страницы 458 458 459 -==== maxdate ====183 +==== bundlesid: [4 ==== 460 460 461 - Типданных:##// string//##185 +==== , 5 ==== 462 462 463 - Поумолчанию:##// undefined//##187 +==== , … ] ==== 464 464 465 -(% class="box infomessage" %) 466 -((( 467 -Параметр максимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 468 -**##maxdate: '20.05.2018'##** покажет 20.05.2018 как самую последнюю дату, доступную к выбору в календаре. 469 -))) 189 +Пакеты услуг, которые следует показать на первой странице. По умолчанию массив пуст и не показывает отдельно никакие из пакетов услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать пакеты услуг, доступные только для него. 190 +Пример использования: 191 +bundlesid: [4, 5] покажет пакеты услуг с id 4 и 5 в момент открытия виджета. 192 +bundlesid: false уберёт все пакеты услуг с первой страницы 470 470 471 -==== mindate====194 +==== groupid: 12 ==== 472 472 473 - Тип данных:##// string//##196 +Параметр, который форсирует показ определённой группы услуг ппс. groupid: 5 покажет только одну группу с id 5 в виджете. 474 474 475 - По умолчанию:##// undefined//##198 +~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-- 476 476 477 -(% class="box infomessage" %) 478 -((( 479 -Параметр минимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 480 -**##mindate: '20.05.2018'##** покажет 20.05.2018 как самую первую дату, доступную к выбору в календаре, если она находится после текущего дня. 481 -))) 200 +===== Предзаказ ===== 482 482 483 -==== nocalendar ====202 +==== preorder: [{id: 57 ==== 484 484 485 - Типданных:##//boolean//##204 +==== , date: '06.06.2019' ==== 486 486 487 - Поумолчанию:##// false//##206 +==== , count: 1 ==== 488 488 489 -(% class="box infomessage" %) 490 -((( 491 -Убирает календарь внутри виджета (и в //покупке// и в //пополнении//), в случаях, когда дата, на которую покупается/пополняется билет, не важна. 492 -))) 208 +==== }, … ] ==== 493 493 494 - ====saledepth====210 +Параметр, позволяющий купить сразу несколько услуг и перейти к подтверждению покупки. 495 495 496 -Тип данных:## //number//## 212 +* id — id услуги к покупке 213 +* date — дата, на которую покупается услуга 214 +* count — количество покупаемых услуг 497 497 498 -По умолчанию:##// undefined//## 499 499 500 -(% class="box infomessage" %) 501 -((( 502 -Ограничивает глубину продаж начиная с сегодняшнего дня. Таким образом если ##saledepth: 1##, то доступные даты в календаре выбора тарифа будут __**сегодня **__и __**завтра**__. 503 -⚠ Имеет больший приоритет, чем ##maxdate## 504 -))) 505 - 506 ----- 507 - 508 -=== Отображение === 509 - 510 -==== cartmaxitems **##*##** ==== 511 - 512 -Тип данных:##// number//## 513 - 514 -По умолчанию:##// 6//## 515 - 516 -(% class="box infomessage" %) 517 -((( 518 -Ограничивает максимальное кол-во товаров в корзине. ##Минимальное значение 1, но не меньше **cartminitems**. Максимальное значение 60.## 519 -))) 520 - 521 -==== cartminitems **##*##** ==== 522 - 523 -Тип данных:##// number//## 524 - 525 -По умолчанию:##// 1//## 526 - 527 -(% class="box infomessage" %) 528 -((( 529 -Ограничивает минимальное кол-во товаров в корзине. ##Минимальное значение 1. Максимальное значение 60, но не больше **cartmaxitems**.## 530 -))) 531 - 532 -==== clubsiteid ==== 533 - 534 -Тип данных:##// number//## 535 - 536 -По умолчанию:##// 0//## 537 - 538 -(% class="box infomessage" %) 539 -((( 540 -Вызов сайта для оформления клубного контракта 541 -))) 542 - 543 -==== customseancetitles ==== 544 - 545 -Типа данных: ##//Array<object>//## 546 - 547 -(% class="box infomessage" %) 548 -((( 549 -Выводит цветную текст-метку над сеансом. 550 -Описание параметров объекта текста-метки: 551 -\\##**seanceId**## - идентификатор сеанса, у которого нужно отобразить текст-метку 552 -##**days**## - массив с днями недели, в которые нужно отобразить текст-метку. **ВАЖНО**: 0 - воскресенье, 1 - понедельник ... 6 - суббота 553 -##**dates**## - массив с датами, в которые нужно отобразить текст-метку независимо от массива дней. 554 -##**color**## - любой валидный CSS цвет текста-метки 555 -##**text**## - текст, который нужно отобразить 556 -\\Работает если **##tariffsseancesfilter: true##** 557 -))) 558 - 559 -Пример: 560 - 561 -{{code language="javascript"}} 562 -customseancetitles: [ 563 - { 564 - seanceId: 1, 565 - text: "Тематический сеанс", 566 - color: "#f00", 567 - days: [0,1], 568 - dates: ["25.12.2023","17.04.2025"] 569 - } 570 -] 571 -{{/code}} 572 - 573 -==== disablemultipleseances **##*##** ==== 574 - 575 -Тип данных:##// boolean//## 576 - 577 -По умолчанию:##// false//## 578 - 579 -(% class="box infomessage" %) 580 -((( 581 -Параметр предотвращает добавление в корзину тарифов с различными сеансами. 582 -Таким образом как только в корзине появится хоть один товар с сеансом "10:00 - 11:30", товары, у которых есть сеанс например "13:00 - 14:30" будет невозможно добавить в корзину. 583 -Товары без сеансов **не будут затронуты**. 584 -))) 585 - 586 -==== forcemedia ==== 587 - 588 -Тип данных:##// string//## 589 - 590 -По умолчанию:##// ''//## 591 - 592 -(% class="box infomessage" %) 593 -((( 594 -Параметр, который вставяет строчку с носителем в поле носителя во вкладке «Пополнение услуг». Используется, например, для QR-кода нанесённого на носитель, чтобы быстро его пополнить. 595 -))) 596 - 597 -Пример: 598 - 599 -{{code language="javascript"}} 600 -forcemedia: 'E0012345678900' 601 -{{/code}} 602 - 603 -==== forceseanceid **##*##** ==== 604 - 605 -Тип данных:##// number//## 606 - 607 -По умолчанию без указания идентификатора не учитывается. 608 - 609 -(% class="box infomessage" %) 610 -((( 611 -Заставит виджет выбрать мероприятие арены по идентификатору платформы и не позволять вернуться к этапу выбора других мероприятий. 612 -))) 613 - 614 -==== forcesectorid **##*##** ==== 615 - 616 -Тип данных:##// number//## 617 - 618 -По умолчанию без указания идентификатора не учитывается. 619 - 620 -(% class="box infomessage" %) 621 -((( 622 -Заставит виджет выбрать сектор мероприятия по **##id##** и не позволять вернуться к этапу выбора других секторов. 623 -))) 624 - 625 -==== forcetab **##*##** ==== 626 - 627 -Тип данных:##// string//## 628 - 629 -По умолчанию:##// ''//## 630 - 631 -(% class="box infomessage" %) 632 -((( 633 -Переключение на необходимую вкладку виджета («**покупка услуг**» или «**пополнение услуг**») при загрузке. 634 -По умолчанию открывается вкладка «**покупка услуг**». 635 -**##forcetab: 'rewrite'##** принудительно откроет «**пополнение услуг**». 636 -Обычно используется в комбинации с параметром **##onlytab##** 637 -))) 638 - 639 -==== locale **##*##** ==== 640 - 641 -Тип данных:##// string//## 642 - 643 -По умолчанию:##// ''//## 644 - 645 -(% class="box infomessage" %) 646 -((( 647 -Параметр локализации. Позволяет переключать между языками виджета, например 'ru' - русский язык, 'en' - английский язык. 648 -))) 649 - 650 -==== minimap **##*##** ==== 651 - 652 -Тип данных:##// boolean//## 653 - 654 -По умолчанию:##// true//## 655 - 656 -(% class="box infomessage" %) 657 -((( 658 -Отображать миникарту. 659 -))) 660 - 661 -==== minimapaspect **##*##** ==== 662 - 663 -Тип данных:##// number//## 664 - 665 -По умолчанию:##// 0.2//## 666 - 667 -(% class="box infomessage" %) 668 -((( 669 -Размер миникарты относительной полного размера карты, а не контейнера, в которой она находится. 670 -))) 671 - 672 -==== nopromo **##*##** ==== 673 - 674 -Тип данных:##// boolean//## 675 - 676 -По умолчанию:##// false//## 677 - 678 -(% class="box infomessage" %) 679 -((( 680 -Убирает вывод промокода на странице подтверждения заказа. 681 -))) 682 - 683 -==== onlytab **##*##** ==== 684 - 685 -Тип данных:##// string //##//|## Array<string>##// 686 - 687 -По умолчанию:##// []//## 688 - 689 -(% class="box infomessage" %) 690 -((( 691 -Скрытие других вкладок виджета («покупка услуг» или «пополнение услуг») при загрузке. Обычно используется в комбинации с параметром **##forcetab##** 692 -))) 693 - 694 -{{code language="javascript"}} 695 -onlytab: 'service' // покажет только вкладку «покупка услуг». 696 -onlytab: 'rewrite' // покажет только вкладку «пополнение услуг». 697 -onlytab: ['service', 'rewrite'] // покажет только вкладки «покупка услуг» и «пополнение услуг»; 698 -{{/code}} 699 - 700 -==== ordercomment **##*##** ==== 701 - 702 -Тип данных:##// string//## 703 - 704 -По умолчанию:##// ''//## 705 - 706 -(% class="box infomessage" %) 707 -((( 708 -Опциональный комментарий к заказу. Максимальная длинна комментария 50 символов. 709 -))) 710 - 711 -==== requiredloyalty **##*##** ==== 712 - 713 -Тип данных:##// boolean//## 714 - 715 -По умолчанию:##// false//## 716 - 717 -(% class="box infomessage" %) 718 -((( 719 -Включает обязательную регистрацию клиента в программе настроенной на объектке. 720 -))) 721 - 722 -==== resetcart **##*##** ==== 723 - 724 -Тип данных:##// boolean//## 725 - 726 -По умолчанию:##// false//## 727 - 728 -(% class="box infomessage" %) 729 -((( 730 -Автоматически очищать содержимое корзины. 731 -))) 732 - 733 -==== saletermstype **##*##** ==== 734 - 735 -Тип данных:##// string//## 736 - 737 -По умолчанию:##// '//default//'//## 738 - 739 -(% class="box infomessage" %) 740 -((( 741 -Перед оплатой просит пользователя согласиться с правилами в форме галочки или всплывающего окна 742 -))) 743 - 744 -{{code language="javascript"}} 745 -saletermstype: 'checkbox' // потребует установку галочки для согласия. 746 -saletermstype: 'dialog' // покажет всплывающее окно с правилами, которые нужно принять. 747 -saletermstype: 'default' // принятие правил не требуется. 748 -{{/code}} 749 - 750 -==== shownoticketsseances **##*##** ==== 751 - 752 -Тип данных:##// boolean//## 753 - 754 -По умолчанию:##// false//## 755 - 756 -(% class="box infomessage" %) 757 -((( 758 -Не скрывать сеансы, на которые закончились билеты. Работает если **##tariffsseancesfilter: true##** 759 -))) 760 - 761 -==== showoverseances **##*##** ==== 762 - 763 -Тип данных:##// boolean//## 764 - 765 -По умолчанию:##// false//## 766 - 767 -(% class="box infomessage" %) 768 -((( 769 -Отвечает за отображение прошедших сеансов в списке для фильтрации по времени. При значении **##true##** прошедшие сеансы будут отображаться, но недоступны для выбора пользователем. Работает если **##tariffsseancesfilter: true##** 770 -))) 771 - 772 -[[image:1702554598837-627.png]] 773 - 774 -==== tariffsseancesfilter **##*##** ==== 775 - 776 -Тип данных:##// boolean//## 777 - 778 -По умолчанию:##// false//## 779 - 780 -(% class="box infomessage" %) 781 -((( 782 -Включить отображение фильтра тарифов по сеансам. 783 -))) 784 - 785 -[[image:https://info.moipass.ru/images/tariffsseancesfilter.png||alt="Example"]] 786 - 787 ----- 788 - 789 -=== Предзаказ === 790 - 791 -==== preorder ==== 792 - 793 -Тип данных:##// Array<object>//## 794 - 795 -По умолчанию:##// undefined//## 796 - 797 -(% class="box infomessage" %) 798 -((( 799 -Параметр, позволяющий купить сразу несколько услуг и перейти к подтверждению покупки. 800 -• ##id## — id услуги к покупке 801 -• ##date## — дата, на которую покупается услуга 802 -• ##count## — количество покупаемых услуг 803 -))) 804 - 805 805 ===== Пример передаваемых данных: ===== 806 806 807 -{{code language="javascript"}} 808 -// либо WPOpenModal({}) 809 -WPOpen({ 810 - preorder: [ 811 - { 812 - id: 57, 813 - date: '06.06.2019', 814 - count: 1 815 - }, { 816 - id: 58, 817 - date: '07.06.2019', 818 - count: 2 819 - } 820 - ] 821 -}) 822 -{{/code}} 823 823 824 ----- 825 825 826 -=== Услуги, пакеты услуг, группы услуг === 827 827 828 -==== tariffsid ==== 829 - 830 -Тип данных:##// Array<number> //##//|## boolean##// 831 - 832 -По умолчанию:##// []//## 833 - 834 -(% class="box infomessage" %) 835 -((( 836 -Тарифы, которые следует показать на вкладке «Покупка услуг». 837 -По умолчанию массив пуст и не показывает отдельно никакие из услуг. 838 -Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 839 -))) 840 - 841 -Пример: 842 - 843 -{{code language="javascript"}} 844 -tariffsid: [29, 30] // покажет тарифы с id 29 и 30 во вкладке «Покупка услуг». 845 -tariffsid: false // уберёт все тарифы с первой страницы 846 -{{/code}} 847 - 848 -==== rewritetariffsid **##*##** ==== 849 - 850 -Тип данных:##// Array<number> //##//|## boolean##// 851 - 852 -По умолчанию:##// []//## 853 - 854 -(% class="box infomessage" %) 855 -((( 856 -Тарифы, которые следует показать после ввода карты во вкладке «Пополнение услуг». 857 -По умолчанию массив пуст и не показывает отдельно никакие из услуг. 858 -Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 859 -))) 860 - 861 -Пример: 862 - 863 -{{code language="javascript"}} 864 -rtariffsid: [56, 57] // покажет тарифы с id 56 и 57 после ввода карты во вкладке «Пополнение услуг» 865 -rtariffsid: false // уберёт все тарифы во вкладке «Пополнение услуг» 866 -{{/code}} 867 - 868 -==== rtariffsid ==== 869 - 870 -(% class="box infomessage" %) 871 -((( 872 -См. **##rewritetariffsid##**. Доступен и в старой версии виджета 873 -))) 874 - 875 -==== bundlesid ==== 876 - 877 -Тип данных:##// Array<number> //##//|## boolean##// 878 - 879 -По умолчанию:##// []//## 880 - 881 -(% class="box infomessage" %) 882 -((( 883 -Пакеты услуг, которые следует показать на первой странице. 884 -По умолчанию массив пуст и не показывает отдельно никакие из пакетов услуг. 885 -Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать пакеты услуг, доступные только для него. 886 -))) 887 - 888 -Пример: 889 - 890 -{{code language="javascript"}} 891 -bundlesid: [4, 5] // покажет пакеты услуг с id 4 и 5 в момент открытия виджета. 892 -bundlesid: false // уберёт все пакеты услуг с первой страницы 893 -{{/code}} 894 - 895 -==== bundleslessonstariffsid ==== 896 - 897 -Тип данных:##// Array<number>//## 898 - 899 -По умолчанию:##// []//## 900 - 901 -(% class="box infomessage" %) 902 -((( 903 -Фильтр списка доступных связок занятий по массиву идентификаторов 904 -))) 905 - 906 -==== groupid ==== 907 - 908 -Тип данных:##// number//## 909 - 910 -По умолчанию:##// undefined//## 911 - 912 -(% class="box infomessage" %) 913 -((( 914 -Параметр, который форсирует показ определённой группы услуг ппс. **##groupid: 5##** покажет только одну группу с **##id##** 5 в виджете. 915 -))) 916 - 917 ----- 918 - 919 -(% class="box warningmessage" %) 920 -((( 921 -**##* ##**- доступно в новой версии виджета 922 -))) 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 - Содержимое
- 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