Изменения документа Для_разработчиков
Редактировал(а) Михаил Галич 26.11.2024, 12:16
<
>
отредактировано Михаил Галич
на 20.12.2023, 11:42
на 20.12.2023, 11:42
отредактировано Михаил Галич
на 20.12.2023, 16:03
на 20.12.2023, 16:03
Изменить комментарий:
Наполнение раздела инструкторов
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
-
Вложения (0 изменено, 5 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -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,28 +108,28 @@ 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 118 118 {{code language="javascript"}} 119 119 WPChange = function(response) { 120 - if (response.status == 'starting') { 121 - // действие на внешней странице 122 - } 123 - if (response.status == 'started') { 124 - // действие на внешней странице 125 - } 126 - if (response.status == 'reserved') { 127 - // id зарезервированного заказа: response.data.order_id 128 - } 129 - if (response.status == 'completed') { 130 - // id оплаченного заказа: response.data.order_id 131 - } 122 +if (response.status == 'starting') { 123 +// действие на внешней странице 132 132 } 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 +} 133 133 {{/code}} 134 134 135 135 = Параметры = ... ... @@ -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'##** ... ... @@ -202,13 +202,13 @@ 202 202 **Важно:** элемент DOM для place должен быть либо на странице до вставки инициализации виджета (WPInit), либо инициализация виджета должна быть исполнена после загрузки DOM (например, обёрнута в событие $(document).ready(function(){}) в jQuery) 203 203 ))) 204 204 205 ----- 201 +----- 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,192 +216,122 @@ 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 -(% class="box in fomessage" %)226 +(% class="box warningmessage" %) 235 235 ((( 236 -Параметр для открывания виджета с указанной сразу датой (и в //покупке// и в //пополнении//). 237 -**##forcedate: '20.05.2018'##** покажет услуги к продаже на дату 20.05.2018. 228 +Описание отсутствует 238 238 ))) 239 239 240 -==== maxdate====231 +==== grouplessonstariffsid ==== 241 241 242 -Тип данных:##// string//##233 +Тип данных:##// Array<number>//## 243 243 244 -По умолчанию:##// undefined//##235 +По умолчанию:##// []//## 245 245 246 246 (% class="box infomessage" %) 247 247 ((( 248 -Параметр максимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 249 -**##maxdate: '20.05.2018'##** покажет 20.05.2018 как самую последнюю дату, доступную к выбору в календаре. 239 +Фильтр программ обучения для групповых занятий 250 250 ))) 251 251 252 - ==== mindate====242 +[[image:1703065356750-663.png]] 253 253 254 - Тип данных:##// string//##244 +Пример: 255 255 256 -По умолчанию:##// undefined//## 246 +{{code language="javascript"}} 247 +grouplessonstariffsid: [1823, 1900] // скрыть все программы обучения, кроме 1823 и 1900 248 +{{/code}} 257 257 258 -(% class="box infomessage" %) 259 -((( 260 -Параметр минимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 261 -**##mindate: '20.05.2018'##** покажет 20.05.2018 как самую первую дату, доступную к выбору в календаре, если она находится после текущего дня. 262 -))) 250 +==== lessonslocation **##*##** ==== 263 263 264 - ====nocalendar====252 +Тип данных:##// number//## 265 265 266 - Типданных:##boolean//##254 +По умолчанию:##// undefined//## 267 267 268 -По умолчанию:##// false//## 269 - 270 270 (% class="box infomessage" %) 271 271 ((( 272 - Убираеткалендарьвнутривиджета(ив //покупке// и в //пополнении//),вслучаях,когда дата, на которуюпокупается/пополняетсябилет,неажна.258 +Отображение места занятия для индивидуальных, групповых и многодневных занятий 273 273 ))) 274 274 275 -- ---261 +[[image:1702560957244-690.png]] 276 276 277 -=== Услуги,пакетыуслуг, группы услуг===263 +=== Календарь и даты === 278 278 279 -==== tariffsid ====265 +==== disableddates ==== 280 280 281 -Тип данных:##// Array< number>//|## boolean##//267 +Тип данных:##// Array<string>//## 282 282 283 283 По умолчанию:##// []//## 284 284 285 285 (% class="box infomessage" %) 286 286 ((( 287 - Тарифы, которыеследуетпоказатьнавкладке«Покупкауслуг». По умолчаниюмассив пуст и непоказывает отдельноникакие из услуг.Используетсядля принудительной фильтрациивтомслучае, когдаопределённомупользователюнеобходимопоказыватьуслуги, доступныетолькодля него.273 +Параметр отключения дат в календаре (и в //покупке// и в //пополнении//). Делает невозможным выбор определённых дней в массиве дат. 288 288 ))) 289 289 290 290 Пример: 291 291 292 292 {{code language="javascript"}} 293 -tariffsid: [29, 30] // покажет тарифы с id 29 и 30 во вкладке «Покупка услуг». 294 -tariffsid: false // уберёт все тарифы с первой страницы 279 +disableddates: ['23.02.2018', '08.03.2018'] // уберёт даты 23.02.2018 и 08.03.2018 из возможных для выбора дат в календаре. 295 295 {{/code}} 296 296 282 +==== forcedate ==== 297 297 284 +Тип данных:##// string//## 298 298 299 - ====rtariffsid====286 +По умолчанию:##// undefined//## 300 300 301 -Тип данных:##// Array<number> //##//|## boolean##// 302 - 303 -По умолчанию:##// []//## 304 - 305 305 (% class="box infomessage" %) 306 306 ((( 307 -Тарифы, которые следует показать после ввода карты во вкладке «Пополнение услуг». По умолчанию массив пуст и не показывает отдельно никакие из услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 290 +Параметр для открывания виджета с указанной сразу датой (и в //покупке// и в //пополнении//). 291 +**##forcedate: '20.05.2018'##** покажет услуги к продаже на дату 20.05.2018. 308 308 ))) 309 309 310 - Пример:294 +==== maxdate ==== 311 311 312 -{{code language="javascript"}} 313 -rtariffsid: [56, 57] // покажет тарифы с id 56 и 57 после ввода карты во вкладке «Пополнение услуг» 314 -rtariffsid: false // уберёт все тарифы во вкладке «Пополнение услуг» 315 -{{/code}} 296 +Тип данных:##// string//## 316 316 298 +По умолчанию:##// undefined//## 317 317 318 - 319 -==== rewritetariffsid ==== 320 - 321 321 (% class="box infomessage" %) 322 322 ((( 323 -См. rtariffsid 302 +Параметр максимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 303 +**##maxdate: '20.05.2018'##** покажет 20.05.2018 как самую последнюю дату, доступную к выбору в календаре. 324 324 ))) 325 325 326 -==== bundlesid====306 +==== mindate ==== 327 327 328 -Тип данных:##// Array<number>//##//|## boolean##//308 +Тип данных:##// string//## 329 329 330 -По умолчанию:##// []//## 331 - 332 -(% class="box infomessage" %) 333 -((( 334 -Пакеты услуг, которые следует показать на первой странице. По умолчанию массив пуст и не показывает отдельно никакие из пакетов услуг. Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать пакеты услуг, доступные только для него. 335 -))) 336 - 337 -Пример: 338 - 339 -{{code language="javascript"}} 340 -bundlesid: [4, 5] // покажет пакеты услуг с id 4 и 5 в момент открытия виджета. 341 -bundlesid: false // уберёт все пакеты услуг с первой страницы 342 -{{/code}} 343 - 344 -==== bundleslessonstariffsid ==== 345 - 346 -Тип данных:##// Array<number>//## 347 - 348 -По умолчанию:##// []//## 349 - 350 -(% class="box warningmessage" %) 351 -((( 352 -Описание отсутствует 353 -))) 354 - 355 -==== groupid ==== 356 - 357 -Тип данных:##// number//## 358 - 359 359 По умолчанию:##// undefined//## 360 360 361 361 (% class="box infomessage" %) 362 362 ((( 363 -Параметр, который форсирует показ определённой группы услуг ппс. groupid: 5 покажет только одну группу с id 5 в виджете. 314 +Параметр минимальной отображаемой даты в календаре (и в //покупке// и в //пополнении//). 315 +**##mindate: '20.05.2018'##** покажет 20.05.2018 как самую первую дату, доступную к выбору в календаре, если она находится после текущего дня. 364 364 ))) 365 365 366 - ----318 +==== nocalendar ==== 367 367 368 - ===Предзаказ===320 +Тип данных:## //boolean//## 369 369 370 - ====preorder ====322 +По умолчанию:##// false//## 371 371 372 -Тип данных:##// Array<object>//## 373 - 374 -По умолчанию:##// undefined//## 375 - 376 376 (% class="box infomessage" %) 377 377 ((( 378 -Параметр, позволяющий купить сразу несколько услуг и перейти к подтверждению покупки. 379 - • id — id услуги к покупке 380 - • date — дата, на которую покупается услуга 381 - • count — количество покупаемых услуг 326 +Убирает календарь внутри виджета (и в //покупке// и в //пополнении//), в случаях, когда дата, на которую покупается/пополняется билет, не важна. 382 382 ))) 383 383 384 - ===== Пример передаваемых данных: =====329 +----- 385 385 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 -}) 401 -{{/code}} 402 - 403 ----- 404 - 405 405 === Отображение === 406 406 407 407 ==== cartmaxitems **##*##** ==== ... ... @@ -426,17 +426,6 @@ 426 426 Ограничивает минимальное кол-во товаров в корзине. ##Минимальное значение 1. Максимальное значение 60, но не больше **cartmaxitems**.## 427 427 ))) 428 428 429 -==== categories ==== 430 - 431 -Тип данных:##// Array<string>//## 432 - 433 -По умолчанию:##// []//## 434 - 435 -(% class="box warningmessage" %) 436 -((( 437 -Описание отсутствует 438 -))) 439 - 440 440 ==== clubsiteid ==== 441 441 442 442 Тип данных:##// number//## ... ... @@ -448,17 +448,6 @@ 448 448 Описание отсутствует 449 449 ))) 450 450 451 -==== coachid ==== 452 - 453 -Тип данных:##// number//## 454 - 455 -По умолчанию:##// undefined//## 456 - 457 -(% class="box warningmessage" %) 458 -((( 459 -Описание отсутствует 460 -))) 461 - 462 462 ==== disablemultipleseances **##*##** ==== 463 463 464 464 Тип данных:##// boolean//## ... ... @@ -469,7 +469,7 @@ 469 469 ((( 470 470 Параметр предотвращает добавление в корзину тарифов с различными сеансами. 471 471 Таким образом как только в корзине появится хоть один товар с сеансом "10:00 - 11:30", товары, у которых есть сеанс например "13:00 - 14:30" будет невозможно добавить в корзину. 472 -Товары без сеансов __не будут затронуты__.376 +Товары без сеансов **не будут затронуты**. 473 473 ))) 474 474 475 475 ==== forcemedia ==== ... ... @@ -536,30 +536,6 @@ 536 536 Описание отсутствует 537 537 ))) 538 538 539 -==== grouplessonstariffsid ==== 540 - 541 -Тип данных:##// Array<number>//## 542 - 543 -По умолчанию:##// []//## 544 - 545 -(% class="box warningmessage" %) 546 -((( 547 -Описание отсутствует 548 -))) 549 - 550 -==== lessonslocation **##*##** ==== 551 - 552 -Тип данных:##// number//## 553 - 554 -По умолчанию:##// undefined//## 555 - 556 -(% class="box infomessage" %) 557 -((( 558 -Отображение места занятия для индивидуальных, групповых и многодневных занятий 559 -))) 560 - 561 -[[image:1702560957244-690.png]] 562 - 563 563 ==== lessonstariffsid ==== 564 564 565 565 Тип данных:##// Array<number>//## ... ... @@ -709,11 +709,13 @@ 709 709 710 710 По умолчанию:##// false//## 711 711 712 -(% class="box warningmessage" %)592 +(% class="box infomessage" %) 713 713 ((( 714 - Описание отсутствует594 +Если **##true##** скрывает фильтр по программе обучения инструкторских занятий 715 715 ))) 716 716 597 +[[image:1703063138160-208.png]] 598 + 717 717 ==== onlytab **##*##** ==== 718 718 719 719 Тип данных:##// string //##//|## Array<string>##// ... ... @@ -744,15 +744,24 @@ 744 744 745 745 ==== personallessonsskillstariffs **##*##** ==== 746 746 747 -Тип данных:##// Array<number> //##//|##object##//629 +Тип данных:##// object//## 748 748 749 -По умолчанию:##// []//##631 +По умолчанию:##// {}//## 750 750 751 751 (% class="box infomessage" %) 752 752 ((( 753 -Производит фильтрацию тарифов для индивидуальных занятий. Принимает массив идентификаторов. 635 +Ограничивает список тарифов (в фильтре) при выборе конкретной дисциплины. 636 +Принимает объект, внутри которого указываются пары ключ/значение по выражению: {skillid}: [{tariffid},...] 754 754 ))) 755 755 639 +Пример: 640 + 641 +{{code language="javascript"}} 642 +personallessonsskillstariffs: { 643 + "1": [ 15, 23] // При выборе дисциплины с id 1 - отображать тарифы с id 15 и 23 644 +} 645 +{{/code}} 646 + 756 756 ==== placeid **##*##** ==== 757 757 758 758 Тип данных:##// number//## ... ... @@ -855,7 +855,137 @@ 855 855 856 856 ---- 857 857 749 +=== Предзаказ === 750 + 751 +==== preorder ==== 752 + 753 +Тип данных:##// Array<object>//## 754 + 755 +По умолчанию:##// undefined//## 756 + 757 +(% class="box infomessage" %) 758 +((( 759 +Параметр, позволяющий купить сразу несколько услуг и перейти к подтверждению покупки. 760 +• ##id## — id услуги к покупке 761 +• ##date## — дата, на которую покупается услуга 762 +• ##count## — количество покупаемых услуг 763 +))) 764 + 765 +===== Пример передаваемых данных: ===== 766 + 767 +{{code language="javascript"}} 768 +// либо WPOpenModal({}) 769 +WPOpen({ 770 +preorder: [ 771 +{ 772 +id: 57, 773 +date: '06.06.2019', 774 +count: 1 775 +}, { 776 +id: 58, 777 +date: '07.06.2019', 778 +count: 2 779 +} 780 +] 781 +}) 782 +{{/code}} 783 + 784 +---- 785 + 786 +=== Услуги, пакеты услуг, группы услуг === 787 + 788 +==== tariffsid ==== 789 + 790 +Тип данных:##// Array<number> //##//|## boolean##// 791 + 792 +По умолчанию:##// []//## 793 + 794 +(% class="box infomessage" %) 795 +((( 796 +Тарифы, которые следует показать на вкладке «Покупка услуг». 797 +По умолчанию массив пуст и не показывает отдельно никакие из услуг. 798 +Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 799 +))) 800 + 801 +Пример: 802 + 803 +{{code language="javascript"}} 804 +tariffsid: [29, 30] // покажет тарифы с id 29 и 30 во вкладке «Покупка услуг». 805 +tariffsid: false // уберёт все тарифы с первой страницы 806 +{{/code}} 807 + 808 +==== rewritetariffsid **##*##** ==== 809 + 810 +Тип данных:##// Array<number> //##//|## boolean##// 811 + 812 +По умолчанию:##// []//## 813 + 814 +(% class="box infomessage" %) 815 +((( 816 +Тарифы, которые следует показать после ввода карты во вкладке «Пополнение услуг». 817 +По умолчанию массив пуст и не показывает отдельно никакие из услуг. 818 +Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать услуги, доступные только для него. 819 +))) 820 + 821 +Пример: 822 + 823 +{{code language="javascript"}} 824 +rtariffsid: [56, 57] // покажет тарифы с id 56 и 57 после ввода карты во вкладке «Пополнение услуг» 825 +rtariffsid: false // уберёт все тарифы во вкладке «Пополнение услуг» 826 +{{/code}} 827 + 828 +==== rtariffsid ==== 829 + 830 +(% class="box infomessage" %) 831 +((( 832 +См. **##rewritetariffsid##**. Доступен и в старой версии виджета 833 +))) 834 + 835 +==== bundlesid ==== 836 + 837 +Тип данных:##// Array<number> //##//|## boolean##// 838 + 839 +По умолчанию:##// []//## 840 + 841 +(% class="box infomessage" %) 842 +((( 843 +Пакеты услуг, которые следует показать на первой странице. 844 +По умолчанию массив пуст и не показывает отдельно никакие из пакетов услуг. 845 +Используется для принудительной фильтрации в том случае, когда определённому пользователю необходимо показывать пакеты услуг, доступные только для него. 846 +))) 847 + 848 +Пример: 849 + 850 +{{code language="javascript"}} 851 +bundlesid: [4, 5] // покажет пакеты услуг с id 4 и 5 в момент открытия виджета. 852 +bundlesid: false // уберёт все пакеты услуг с первой страницы 853 +{{/code}} 854 + 855 +==== bundleslessonstariffsid ==== 856 + 857 +Тип данных:##// Array<number>//## 858 + 859 +По умолчанию:##// []//## 860 + 858 858 (% class="box warningmessage" %) 859 859 ((( 863 +Описание отсутствует 864 +))) 865 + 866 +==== groupid ==== 867 + 868 +Тип данных:##// number//## 869 + 870 +По умолчанию:##// undefined//## 871 + 872 +(% class="box infomessage" %) 873 +((( 874 +Параметр, который форсирует показ определённой группы услуг ппс. **##groupid: 5##** покажет только одну группу с **##id##** 5 в виджете. 875 +))) 876 + 877 +---- 878 + 879 +(% class="box warningmessage" %) 880 +((( 860 860 **##* ##**- доступно в новой версии виджета 861 861 )))
- 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 - Содержимое